| | |
| | | @PostMapping(value = "/api/t-experiment-result-report/add") |
| | | public R<Boolean> add(@RequestBody String param) { |
| | | TExperimentResultReportDTO dto = JSON.parseObject(param,TExperimentResultReportDTO.class); |
| | | // 判断是否已存在实验结果 |
| | | Long count = experimentResultReportService.count(Wrappers.lambdaQuery(TExperimentResultReport.class) |
| | | .eq(TExperimentResultReport::getDispatchId, dto.getDispatchId())); |
| | | if(count > 0){ |
| | | return R.fail("已存在实验结果汇报"); |
| | | } |
| | | experimentResultReportService.save(dto); |
| | | // 获取当前用户的项目组id |
| | | Long userId = tokenService.getLoginUser().getUserId(); |
| | |
| | | public R<Boolean> evaluateProcess(@RequestBody String param) { |
| | | TResultWorkEvaluate resultWorkEvaluate = JSON.parseObject(param,TResultWorkEvaluate.class); |
| | | Long userId = tokenService.getLoginUser().getUserId(); |
| | | Integer roleType = tokenService.getLoginUser().getUser().getRoleType(); |
| | | if (roleType != 1 && roleType != 2) { |
| | | return R.fail("仅管理员或审批人可以评定工艺工程师"); |
| | | } |
| | | TExperimentResultReport experimentResultReport = experimentResultReportService.getById(resultWorkEvaluate.getResultReportId()); |
| | | if (Objects.isNull(experimentResultReport)) { |
| | | return R.fail("实验结果汇报不存在"); |
| | | } |
| | | if (!Objects.equals(experimentResultReport.getStatus(), 2)) { |
| | | return R.fail("当前实验结果汇报不是待评定状态"); |
| | | } |
| | | long evaluatedCount = resultWorkEvaluateService.count(Wrappers.lambdaQuery(TResultWorkEvaluate.class) |
| | | .eq(TResultWorkEvaluate::getResultReportId, resultWorkEvaluate.getResultReportId()) |
| | | .eq(TResultWorkEvaluate::getEvaluateType, 1) |
| | | .eq(TResultWorkEvaluate::getDisabled, 0)); |
| | | if (evaluatedCount > 0) { |
| | | return R.fail("该工艺工程师工作评定已提交"); |
| | | } |
| | | resultWorkEvaluate.setEvaluatePersonId(userId); |
| | | resultWorkEvaluate.setEvaluateTime(LocalDateTime.now()); |
| | | resultWorkEvaluate.setStatus(1); |
| | | resultWorkEvaluate.setEvaluateType(1); |
| | | // 查询当前用户组 |
| | | TProjectTeamStaff projectTeamStaff = projectTeamStaffService.getOne(Wrappers.lambdaQuery(TProjectTeamStaff.class) |
| | | .eq(TProjectTeamStaff::getUserId, userId) |
| | | .last("LIMIT 1")); |
| | | if(Objects.isNull(projectTeamStaff)){ |
| | | return R.fail("当前用户未分配项目组,无法进行评定"); |
| | | TExperimentDispatch dispatch = experimentDispatchService.getById(experimentResultReport.getDispatchId()); |
| | | if (Objects.isNull(dispatch)) { |
| | | return R.fail("实验调度不存在"); |
| | | } |
| | | TProjectTeamStaff projectTeamStaff1 = projectTeamStaffService.getOne(Wrappers.lambdaQuery(TProjectTeamStaff.class) |
| | | .eq(TProjectTeamStaff::getTeamId, projectTeamStaff.getTeamId()) |
| | | .eq(TProjectTeamStaff::getRoleType, 3) |
| | | .last("LIMIT 1")); |
| | | if(Objects.isNull(projectTeamStaff1)){ |
| | | return R.fail("当前项目组未分配工艺工程师,无法进行评定"); |
| | | TProjectProposal proposal = projectProposalService.getById(dispatch.getProposalId()); |
| | | if (Objects.isNull(proposal)) { |
| | | return R.fail("项目课题方案不存在"); |
| | | } |
| | | resultWorkEvaluate.setUserId(projectTeamStaff1.getUserId()); |
| | | resultWorkEvaluate.setTeamId(projectTeamStaff.getTeamId()); |
| | | TExperimentDispatchParticipants processEngineer = experimentDispatchParticipantsService.getOne( |
| | | Wrappers.lambdaQuery(TExperimentDispatchParticipants.class) |
| | | .eq(TExperimentDispatchParticipants::getDispatchId, dispatch.getId()) |
| | | .eq(TExperimentDispatchParticipants::getRoleType, 3) |
| | | .last("LIMIT 1")); |
| | | if (Objects.isNull(processEngineer)) { |
| | | return R.fail("当前实验调度未分配工艺工程师,无法进行评定"); |
| | | } |
| | | resultWorkEvaluate.setDispatchId(dispatch.getId()); |
| | | resultWorkEvaluate.setUserId(processEngineer.getUserId()); |
| | | resultWorkEvaluate.setTeamId(proposal.getTeamId()); |
| | | resultWorkEvaluateService.save(resultWorkEvaluate); |
| | | // 查询实验结果汇报 |
| | | TExperimentResultReport experimentResultReport = experimentResultReportService.getById(resultWorkEvaluate.getResultReportId()); |
| | | experimentResultReport.setStatus(3); |
| | | experimentResultReportService.updateById(experimentResultReport); |
| | | return R.ok(); |
| | |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.core.domain.entity.SysUser; |
| | | import com.ruoyi.common.enums.BusinessType; |
| | | import com.ruoyi.common.utils.SecurityUtils; |
| | | import com.ruoyi.framework.web.service.TokenService; |
| | | import com.ruoyi.system.dto.ApplicationTerminationAuditDTO; |
| | | import com.ruoyi.system.dto.ApplicationTerminationDTO; |
| | |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import java.time.LocalDateTime; |
| | | import java.util.Arrays; |
| | | import java.util.List; |
| | | import java.util.Objects; |
| | | import java.util.stream.Collectors; |
| | |
| | | public R<Boolean> update(@RequestBody String param) { |
| | | TExperimentSchemeDTO dto = JSON.parseObject(param,TExperimentSchemeDTO.class); |
| | | |
| | | if (SecurityUtils.isAdmin(SecurityUtils.getUserId())){ |
| | | if (Objects.equals(tokenService.getLoginUser().getUser().getRoleType(), 1)){ |
| | | dto.setStatus(null); |
| | | } |
| | | |
| | |
| | | @PostMapping(value = "/api/t-experiment-scheme/applicationTermination") |
| | | public R<Boolean> applicationTermination(@RequestBody String param) { |
| | | ApplicationTerminationDTO applicationTerminationDTO = JSON.parseObject(param, ApplicationTerminationDTO.class); |
| | | TExperimentScheme currentScheme = experimentSchemeService.getById(applicationTerminationDTO.getId()); |
| | | if (Objects.isNull(currentScheme)) { |
| | | return R.fail("实验方案不存在"); |
| | | } |
| | | Integer oldStatus = currentScheme.getOldStatus(); |
| | | if (!Arrays.asList(2, 3, 4).contains(currentScheme.getStatus())) { |
| | | oldStatus = currentScheme.getStatus(); |
| | | } |
| | | experimentSchemeService.update(Wrappers.lambdaUpdate(TExperimentScheme.class) |
| | | .eq(TExperimentScheme::getId, applicationTerminationDTO.getId()) |
| | | .set(TExperimentScheme::getStatus, 2) |
| | | .set(TExperimentScheme::getOldStatus, oldStatus) |
| | | .set(TExperimentScheme::getStopReason, applicationTerminationDTO.getStopReason()) |
| | | .set(TExperimentScheme::getStopFile, applicationTerminationDTO.getStopFile()) |
| | | .set(TExperimentScheme::getStopFileName, applicationTerminationDTO.getStopFileName()) |
| | |
| | | return R.ok(); |
| | | } |
| | | |
| | | @Log(title = "实验方案信息-删除中止申请", businessType = BusinessType.DELETE) |
| | | @ApiOperation(value = "删除中止申请(保留实验方案)") |
| | | @DeleteMapping(value = "/open/t-experiment-scheme/deleteTerminationApplication") |
| | | public R<Boolean> deleteTerminationApplication(@RequestParam String id) { |
| | | if (tokenService.getLoginUser().getUser().getRoleType() != 1) { |
| | | return R.fail("仅管理员可以删除中止申请"); |
| | | } |
| | | TExperimentScheme scheme = experimentSchemeService.getById(id); |
| | | if (Objects.isNull(scheme)) { |
| | | return R.fail("实验方案不存在"); |
| | | } |
| | | if (!Arrays.asList(2, 3).contains(scheme.getStatus())) { |
| | | return R.fail("仅待审核或已通过的实验中止审批可以删除"); |
| | | } |
| | | Integer restoredStatus = scheme.getOldStatus() == null ? 6 : scheme.getOldStatus(); |
| | | return R.ok(experimentSchemeService.update(Wrappers.lambdaUpdate(TExperimentScheme.class) |
| | | .eq(TExperimentScheme::getId, id) |
| | | .set(TExperimentScheme::getStatus, restoredStatus) |
| | | .set(TExperimentScheme::getStopReason, null) |
| | | .set(TExperimentScheme::getStopFile, null) |
| | | .set(TExperimentScheme::getStopFileName, null) |
| | | .set(TExperimentScheme::getCommitSign, null) |
| | | .set(TExperimentScheme::getAuditPersonId, null) |
| | | .set(TExperimentScheme::getAuditTime, null) |
| | | .set(TExperimentScheme::getAuditRemark, null) |
| | | .set(TExperimentScheme::getOldStatus, null))); |
| | | } |
| | | |
| | | /** |
| | | * 批量删除实验方案 |
| | | */ |
| | |
| | | TFeasibilityStudyReportQuery query = JSON.parseObject(param, TFeasibilityStudyReportQuery.class); |
| | | Long userId = tokenService.getLoginUser().getUserId(); |
| | | Integer roleType = tokenService.getLoginUser().getUser().getRoleType(); |
| | | query.setRoleType(roleType); |
| | | if(roleType != 1){ |
| | | // 查询用户所在项目组 |
| | | List<TProjectTeamStaff> projectTeamStaffs = projectTeamStaffService.list(Wrappers.lambdaQuery(TProjectTeamStaff.class) |
| | |
| | | TFeasibilityStudyReportQuery query = JSON.parseObject(param, TFeasibilityStudyReportQuery.class); |
| | | Long userId = tokenService.getLoginUser().getUserId(); |
| | | Integer roleType = tokenService.getLoginUser().getUser().getRoleType(); |
| | | query.setRoleType(roleType); |
| | | if(roleType != 1){ |
| | | // 查询用户所在项目组 |
| | | List<TProjectTeamStaff> projectTeamStaffs = projectTeamStaffService.list(Wrappers.lambdaQuery(TProjectTeamStaff.class) |
| | |
| | | .eq(TProjectTeamStaff::getTeamId, projectTeam.getId()) |
| | | .eq(TProjectTeamStaff::getRoleType, 2) |
| | | .last("LIMIT 1")); |
| | | if(Objects.nonNull(teamStaff)){ |
| | | if(Objects.nonNull(teamStaff) && !Objects.equals(dto.getStatus(), -1)){ |
| | | // TFeasibilityStudyReport feasibilityStudyReport = feasibilityStudyReportService.getById(dto.getId()); |
| | | Integer reportType = dto.getReportType(); |
| | | switch (reportType) { |
| | |
| | | @PostMapping(value = "/api/t-inspection-report/update") |
| | | public R<Boolean> update(@RequestBody String param) { |
| | | TInspectionReportDTO dto = JSON.parseObject(param,TInspectionReportDTO.class); |
| | | Integer roleType = tokenService.getLoginUser().getUser().getRoleType(); |
| | | TInspectionReport inspectionReport = inspectionReportService.getById(dto.getId()); |
| | | |
| | | if (Objects.equals(roleType, 1) |
| | | && Objects.nonNull(inspectionReport) |
| | | && Objects.equals(inspectionReport.getStatus(), 2)) { |
| | | return R.fail("化验师已提交的检验报告不允许编辑"); |
| | | } |
| | | |
| | | if (SecurityUtils.isAdmin(SecurityUtils.getUserId())) { |
| | | dto.setStatus(null); |
| | |
| | | // 查询上个项目课题方案的序号 |
| | | long count = projectProposalService.count(Wrappers.lambdaQuery(TProjectProposal.class) |
| | | .like(TProjectProposal::getProjectCode, projectProposalNo)); |
| | | projectProposalNo = projectProposalNo + String.format("%02d", count+1); |
| | | projectProposalNo = projectProposalNo + String.format("%03d", count+1); |
| | | dto.setProjectCode(projectProposalNo); |
| | | dto.setCommitUserId(userId); |
| | | dto.setTeamId(projectTeam.getId()); |
| | |
| | | TQaProduceReportQuery query = JSON.parseObject(param, TQaProduceReportQuery.class); |
| | | Long userId = tokenService.getLoginUser().getUserId(); |
| | | Integer roleType = tokenService.getLoginUser().getUser().getRoleType(); |
| | | query.setRoleType(roleType); |
| | | if(roleType != 1){ |
| | | // 查询用户所在项目组 |
| | | List<TProjectTeamStaff> projectTeamStaffs = projectTeamStaffService.list(Wrappers.lambdaQuery(TProjectTeamStaff.class) |
| | |
| | | TQaProduceReportQuery query = JSON.parseObject(param, TQaProduceReportQuery.class); |
| | | Long userId = tokenService.getLoginUser().getUserId(); |
| | | Integer roleType = tokenService.getLoginUser().getUser().getRoleType(); |
| | | query.setRoleType(roleType); |
| | | if(roleType != 1){ |
| | | // 查询用户所在项目组 |
| | | List<TProjectTeamStaff> projectTeamStaffs = projectTeamStaffService.list(Wrappers.lambdaQuery(TProjectTeamStaff.class) |
| | |
| | | @ApiOperation(value = "删除QA检测项管理") |
| | | @DeleteMapping(value = "/open/t-qa-test-item/deleteById") |
| | | public R<Boolean> deleteById(@RequestParam String id) { |
| | | if (Objects.equals(tokenService.getLoginUser().getUser().getRoleType(), 1)) { |
| | | return R.fail("超级管理员不能删除检测项,只能删除报告"); |
| | | } |
| | | // 删除QA检测项管理成员 |
| | | qaTestItemReportService.remove(Wrappers.lambdaQuery(TQaTestItemReport.class).eq(TQaTestItemReport::getItemId, id)); |
| | | return R.ok(qaTestItemService.removeById(id)); |
| | |
| | | @ApiOperation(value = "批量删除QA检测项管理") |
| | | @DeleteMapping(value = "/open/t-qa-test-item/deleteByIds") |
| | | public R<Boolean> deleteByIds(@RequestBody List<String> ids) { |
| | | if (Objects.equals(tokenService.getLoginUser().getUser().getRoleType(), 1)) { |
| | | return R.fail("超级管理员不能删除检测项,只能删除报告"); |
| | | } |
| | | // 删除QA检测项检测报告 |
| | | qaTestItemReportService.remove(Wrappers.lambdaQuery(TQaTestItemReport.class).in(TQaTestItemReport::getItemId, ids)); |
| | | return R.ok(qaTestItemService.removeByIds(ids)); |
| | |
| | | @ApiOperation(value = "删除QA检测项报告管理") |
| | | @DeleteMapping(value = "/open/t-qa-test-item-report/deleteById") |
| | | public R<Boolean> deleteById(@RequestParam String id) { |
| | | TQaTestItemReport report = qaTestItemReportService.getById(id); |
| | | if (Objects.isNull(report)) { |
| | | return R.fail("检测项报告不存在"); |
| | | } |
| | | Integer roleType = tokenService.getLoginUser().getUser().getRoleType(); |
| | | if (Objects.equals(roleType, 1) |
| | | && !Objects.equals(report.getStatus(), QATestItemReportStatusEnum.PENDING_APPROVAL.getCode()) |
| | | && !Objects.equals(report.getStatus(), QATestItemReportStatusEnum.PASSED.getCode())) { |
| | | return R.fail("超级管理员只能删除待审核或已审核的报告"); |
| | | } |
| | | // 删除QA检测项报告文件 |
| | | qaReportFileService.remove(Wrappers.lambdaQuery(TQaReportFile.class).eq(TQaReportFile::getReportId, id) |
| | | .in(TQaReportFile::getReportType, QaReportFileEnum.TEST_REPORT.getCode())); |
| | |
| | | @ApiOperation(value = "批量删除QA检测项报告管理") |
| | | @DeleteMapping(value = "/open/t-qa-test-item-report/deleteByIds") |
| | | public R<Boolean> deleteByIds(@RequestBody List<String> ids) { |
| | | Integer roleType = tokenService.getLoginUser().getUser().getRoleType(); |
| | | if (Objects.equals(roleType, 1)) { |
| | | long deletableCount = qaTestItemReportService.count(Wrappers.lambdaQuery(TQaTestItemReport.class) |
| | | .in(TQaTestItemReport::getId, ids) |
| | | .in(TQaTestItemReport::getStatus, |
| | | QATestItemReportStatusEnum.PENDING_APPROVAL.getCode(), |
| | | QATestItemReportStatusEnum.PASSED.getCode())); |
| | | if (deletableCount != ids.size()) { |
| | | return R.fail("超级管理员只能删除待审核或已审核的报告"); |
| | | } |
| | | } |
| | | // 删除QA检测项报告检测报告文件 |
| | | qaReportFileService.remove(Wrappers.lambdaQuery(TQaReportFile.class).in(TQaReportFile::getReportId, ids) |
| | | .in(TQaReportFile::getReportType, QaReportFileEnum.TEST_REPORT.getCode())); |
| | |
| | | List<TResultWorkEvaluate> tResultWorkEvaluateList = tResultWorkEvaluateService.lambdaQuery() |
| | | .eq(TResultWorkEvaluate::getUserId, sysUser.getUserId()) |
| | | .eq(TResultWorkEvaluate::getTeamId, projectTeam.getId()) |
| | | .eq(TResultWorkEvaluate::getEvaluateType, 1)//工艺工程师 |
| | | .eq(TResultWorkEvaluate::getEvaluateType, 2)//化验师 |
| | | .eq(TResultWorkEvaluate::getDisabled, 0)//未删除 |
| | | .orderByAsc(TResultWorkEvaluate::getEvaluateTime) |
| | | .list(); |
| | |
| | | // 项目检测项评定 |
| | | TResultWorkEvaluateDetailEngineerVO tResultWorkEvaluateDetailEngineerVO9 = new TResultWorkEvaluateDetailEngineerVO(); |
| | | List<TQaTestItem> list5 = qaTestItemService.lambdaQuery() |
| | | .eq(TQaTestItem::getStatus,3).eq(TQaTestItem::getCommitPersonId, sysUser.getUserId()).list(); |
| | | .eq(TQaTestItem::getStatus,3) |
| | | .eq(TQaTestItem::getTeamId, projectTeam.getId()) |
| | | .eq(TQaTestItem::getCommitPersonId, sysUser.getUserId()).list(); |
| | | if (!list5.isEmpty()){ |
| | | tResultWorkEvaluateDetailEngineerVO9.setStartTime(list5.get(0).getEvaluateTime()); |
| | | tResultWorkEvaluateDetailEngineerVO9.setEndTime(list5.get(list5.size() - 1).getCreateTime()); |
| | |
| | | tResultWorkEvaluateDetailEngineerVOS.add(tResultWorkEvaluateDetailEngineerVO9); |
| | | // 中试、生产验证试验检验分析报告评定 |
| | | List<TQaProduceReport> list = qaProduceReportService.lambdaQuery() |
| | | .eq(TQaProduceReport::getStatus,3).eq(TQaProduceReport::getCommitPersonId, sysUser.getUserId()).list(); |
| | | .eq(TQaProduceReport::getStatus,3) |
| | | .eq(TQaProduceReport::getTeamId, projectTeam.getId()) |
| | | .eq(TQaProduceReport::getCommitPersonId, sysUser.getUserId()).list(); |
| | | TResultWorkEvaluateDetailEngineerVO tResultWorkEvaluateDetailEngineerVO5 = new TResultWorkEvaluateDetailEngineerVO(); |
| | | List<TQaProduceReport> collect3 = list.stream().filter(e -> e.getReportType() == 1).collect(Collectors.toList()); |
| | | if (!collect3.isEmpty()) { |
| | |
| | | List<TResultWorkEvaluate> tResultWorkEvaluateList = tResultWorkEvaluateService.lambdaQuery() |
| | | .eq(TResultWorkEvaluate::getUserId, sysUser.getUserId()) |
| | | .eq(TResultWorkEvaluate::getTeamId, projectTeam.getId()) |
| | | .eq(TResultWorkEvaluate::getEvaluateType, 1)//工艺工程师 |
| | | .eq(TResultWorkEvaluate::getEvaluateType, 3)//实验员 |
| | | .eq(TResultWorkEvaluate::getDisabled, 0)//未删除 |
| | | .orderByAsc(TResultWorkEvaluate::getEvaluateTime) |
| | | .list(); |
| | |
| | | workEvaluateCalculateService.getThreeScope(tResultWorkEvaluateList, tResultWorkEvaluateDetailEngineerVOS); |
| | | |
| | | // 其他任务 |
| | | List<TTesterOtherTask> list = tTesterOtherTaskService.lambdaQuery().eq(TTesterOtherTask::getTesterId, sysUser.getUserId()).list(); |
| | | List<TTesterOtherTask> list = tTesterOtherTaskService.lambdaQuery() |
| | | .eq(TTesterOtherTask::getTesterId, sysUser.getUserId()) |
| | | .eq(TTesterOtherTask::getTeamId, projectTeam.getId()) |
| | | .orderByAsc(TTesterOtherTask::getCreateTime) |
| | | .list(); |
| | | TResultWorkEvaluateDetailEngineerVO tResultWorkEvaluateDetailEngineerVO5 = new TResultWorkEvaluateDetailEngineerVO(); |
| | | tResultWorkEvaluateDetailEngineerVO5.setCount(list.size()); |
| | | if (!list.isEmpty()) { |
| | |
| | | } |
| | | int temp = 0; |
| | | for (TTesterOtherTask tTesterOtherTask : list) { |
| | | if (tTesterOtherTask.getEvaluateScore() != null) { |
| | | temp += tTesterOtherTask.getEvaluateScore(); |
| | | } |
| | | } |
| | | tResultWorkEvaluateDetailEngineerVO5.setIntegral(temp); |
| | | tResultWorkEvaluateDetailEngineerVOS.add(tResultWorkEvaluateDetailEngineerVO5); |
| | | tResultWorkEvaluateDetailUserVO.setList(tResultWorkEvaluateDetailEngineerVOS); |
| | |
| | | @DeleteMapping(value = "/open/t-sampling-record/deleteById") |
| | | public R<Boolean> deleteById(@RequestParam String id) { |
| | | // 删除取样操作记录 |
| | | TSamplingRecord samplingRecord = samplingRecordService.getById(id); |
| | | if (Objects.nonNull(samplingRecord)) { |
| | | samplingRecordOperationService.remove(Wrappers.lambdaQuery(TSamplingRecordOperation.class) |
| | | .eq(TSamplingRecordOperation::getSamplingId, id)); |
| | | samplingRecordService.removeById(id); |
| | | } else { |
| | | samplingRecordOperationService.removeById(id); |
| | | } |
| | | return R.ok(); |
| | | } |
| | | |
| | |
| | | # 服务器的HTTP端口,默认为8080 |
| | | port: 11221 |
| | | servlet: |
| | | encoding: |
| | | charset: UTF-8 |
| | | enabled: true |
| | | force: true |
| | | # 应用的访问路径 |
| | | context-path: / |
| | | tomcat: |
| | |
| | | # 数据库索引 |
| | | database: 0 |
| | | # 密码 |
| | | password: 123456 |
| | | password: |
| | | # 连接超时时间 |
| | | timeout: 10s |
| | | lettuce: |
| | |
| | | druid: |
| | | # 主库数据源 |
| | | master: |
| | | url: jdbc:mysql://127.0.0.1:3306/laboratory?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&allowPublicKeyRetrieval=true&useSSL=false&serverTimezone=Asia/Shanghai |
| | | url: jdbc:mysql://127.0.0.1:3399/laboratory?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&allowPublicKeyRetrieval=true&useSSL=false&serverTimezone=Asia/Shanghai |
| | | username: root |
| | | password: 123456 |
| | | password: qwe123 |
| | | # 从库数据源 |
| | | slave: |
| | | # 从数据源开关/默认关闭 |
| | |
| | | # 令牌密钥 |
| | | secret: abcdefghijklmnopqrstuvwxyz |
| | | # 令牌有效期(默认30分钟) |
| | | expireTime: 120 |
| | | expireTime: 99999 |
| | | |
| | | mybatis-plus: |
| | | # 此处在多数据源中生效 |
| | |
| | | # 项目相关配置 |
| | | spring: |
| | | profiles: |
| | | active: prod |
| | | active: test |
| | |
| | | |
| | | @Override |
| | | public Map<String, Integer> evaluateCount(TFeasibilityStudyReportQuery query) { |
| | | if(CollectionUtils.isEmpty(query.getTeamIds())){ |
| | | if(CollectionUtils.isEmpty(query.getTeamIds()) && query.getRoleType() != 1){ |
| | | return new HashMap<>(); |
| | | } |
| | | Map<String, Integer> map = this.baseMapper.evaluateCount(query); |
| | |
| | | @Override |
| | | public PageInfo<TQaProduceReportVO> evaluateList(TQaProduceReportQuery query) { |
| | | PageInfo<TQaProduceReportVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize()); |
| | | if(CollectionUtils.isEmpty(query.getTeamIds())){ |
| | | if(CollectionUtils.isEmpty(query.getTeamIds()) && query.getRoleType() != 1){ |
| | | return pageInfo; |
| | | } |
| | | List<TQaProduceReportVO> list = this.baseMapper.evaluateList(query,pageInfo); |
| | |
| | | |
| | | @Override |
| | | public Map<String, Integer> evaluateCount(TQaProduceReportQuery query) { |
| | | if(CollectionUtils.isEmpty(query.getTeamIds())){ |
| | | if(CollectionUtils.isEmpty(query.getTeamIds()) && query.getRoleType() != 1){ |
| | | return new HashMap<>(); |
| | | } |
| | | Map<String, Integer> map = this.baseMapper.evaluateCount(query); |
| | |
| | | TProjectTeam projectTeam = projectTeamService.getById(resultWorkEvaluate.getTeamId()); |
| | | TProjectTeamStaff projectTeamStaff = projectTeamStaffService.lambdaQuery().eq(TProjectTeamStaff::getTeamId, resultWorkEvaluate.getTeamId()).eq(TProjectTeamStaff::getRoleType, 3).last("limit 1") |
| | | .one(); |
| | | TProjectTeamStaff projectTeamStaff1 = projectTeamStaffService.lambdaQuery().eq(TProjectTeamStaff::getTeamId, resultWorkEvaluate.getTeamId()).eq(TProjectTeamStaff::getRoleType, 2).last("limit 1") |
| | | .one(); |
| | | tResultWorkEvaluateDetailVO.setStartTime(projectTeam.getCreateTime()); |
| | | Long userId = projectTeamStaff.getUserId(); |
| | | Long auditUserId = projectTeamStaff1.getUserId(); |
| | | List<TFeasibilityStudyReport> total = feasibilityStudyReportService.lambdaQuery() |
| | | .eq(TFeasibilityStudyReport::getStatus, 3) |
| | | .eq(TFeasibilityStudyReport::getEvaluatePersonId, auditUserId).list(); |
| | | .eq(TFeasibilityStudyReport::getTeamId, projectTeam.getId()) |
| | | .orderByAsc(TFeasibilityStudyReport::getEvaluateTime) |
| | | .list(); |
| | | List<TResultWorkEvaluateDetailEngineerVO> tResultWorkEvaluateDetailEngineerVOS = new ArrayList<>(); |
| | | // 工艺可研 |
| | | TResultWorkEvaluateDetailEngineerVO tResultWorkEvaluateDetailEngineerVO = new TResultWorkEvaluateDetailEngineerVO(); |
| | |
| | | // 临床试验积分 |
| | | List<TClinicalTrialPoints> list6 = clinicalTrialPointsService.lambdaQuery() |
| | | .eq(TClinicalTrialPoints::getProcessEngineerId, userId) |
| | | .eq(TClinicalTrialPoints::getTeamId, projectTeam.getId()).list(); |
| | | .eq(TClinicalTrialPoints::getTeamId, projectTeam.getId()) |
| | | .orderByAsc(TClinicalTrialPoints::getCreateTime) |
| | | .list(); |
| | | TResultWorkEvaluateDetailEngineerVO tResultWorkEvaluateDetailEngineerVO8 = new TResultWorkEvaluateDetailEngineerVO(); |
| | | tResultWorkEvaluateDetailEngineerVO8.setCount(list6.size()); |
| | | if (!list6.isEmpty()) { |
| | | tResultWorkEvaluateDetailEngineerVO8.setStartTime(list6.get(0).getCreateTime()); |
| | | tResultWorkEvaluateDetailEngineerVO8.setEndTime(list6.get(list6.size() - 1).getCreateTime()); |
| | | tResultWorkEvaluateDetailEngineerVO8.setIntegral(list6.get(0).getEvaluateScore()); |
| | | tResultWorkEvaluateDetailEngineerVO8.setIntegral(list6.stream() |
| | | .map(TClinicalTrialPoints::getEvaluateScore) |
| | | .filter(Objects::nonNull) |
| | | .mapToInt(Integer::intValue) |
| | | .sum()); |
| | | } |
| | | tResultWorkEvaluateDetailEngineerVOS.add(tResultWorkEvaluateDetailEngineerVO8); |
| | | tResultWorkEvaluateDetailVO.setEngineerList(tResultWorkEvaluateDetailEngineerVOS); |
| | |
| | | List<TResultWorkEvaluate> tResultWorkEvaluateList = tResultWorkEvaluateService.lambdaQuery() |
| | | .eq(TResultWorkEvaluate::getUserId, sysUser.getUserId()) |
| | | .eq(TResultWorkEvaluate::getTeamId, projectTeam.getId()) |
| | | .eq(TResultWorkEvaluate::getEvaluateType, 1)//工艺工程师 |
| | | .eq(TResultWorkEvaluate::getEvaluateType, 2)//化验师 |
| | | .eq(TResultWorkEvaluate::getDisabled, 0)//未删除 |
| | | .orderByAsc(TResultWorkEvaluate::getEvaluateTime) |
| | | .list(); |
| | |
| | | // 项目检测项评定 |
| | | TResultWorkEvaluateDetailEngineerVO tResultWorkEvaluateDetailEngineerVO9 = new TResultWorkEvaluateDetailEngineerVO(); |
| | | List<TQaTestItem> list5 = qaTestItemService.lambdaQuery() |
| | | .eq(TQaTestItem::getStatus,3).eq(TQaTestItem::getCommitPersonId, sysUser.getUserId()).list(); |
| | | .eq(TQaTestItem::getStatus,3) |
| | | .eq(TQaTestItem::getTeamId, projectTeam.getId()) |
| | | .eq(TQaTestItem::getCommitPersonId, sysUser.getUserId()).list(); |
| | | if (!list5.isEmpty()){ |
| | | tResultWorkEvaluateDetailEngineerVO9.setStartTime(list5.get(0).getEvaluateTime()); |
| | | tResultWorkEvaluateDetailEngineerVO9.setEndTime(list5.get(list5.size() - 1).getCreateTime()); |
| | |
| | | tResultWorkEvaluateDetailEngineerVOS.add(tResultWorkEvaluateDetailEngineerVO9); |
| | | // 中试、生产验证试验检验分析报告评定 |
| | | List<TQaProduceReport> list = qaProduceReportService.lambdaQuery() |
| | | .eq(TQaProduceReport::getStatus,3).eq(TQaProduceReport::getCommitPersonId, sysUser.getUserId()).list(); |
| | | .eq(TQaProduceReport::getStatus,3) |
| | | .eq(TQaProduceReport::getTeamId, projectTeam.getId()) |
| | | .eq(TQaProduceReport::getCommitPersonId, sysUser.getUserId()).list(); |
| | | TResultWorkEvaluateDetailEngineerVO tResultWorkEvaluateDetailEngineerVO5 = new TResultWorkEvaluateDetailEngineerVO(); |
| | | List<TQaProduceReport> collect3 = list.stream().filter(e -> e.getReportType() == 1).collect(Collectors.toList()); |
| | | if (!collect3.isEmpty()) { |
| | |
| | | List<TResultWorkEvaluate> tResultWorkEvaluateList = tResultWorkEvaluateService.lambdaQuery() |
| | | .eq(TResultWorkEvaluate::getUserId, sysUser.getUserId()) |
| | | .eq(TResultWorkEvaluate::getTeamId, projectTeam.getId()) |
| | | .eq(TResultWorkEvaluate::getEvaluateType, 1)//工艺工程师 |
| | | .eq(TResultWorkEvaluate::getEvaluateType, 3)//实验员 |
| | | .eq(TResultWorkEvaluate::getDisabled, 0)//未删除 |
| | | .orderByAsc(TResultWorkEvaluate::getEvaluateTime) |
| | | .list(); |
| | |
| | | getThreeScope(tResultWorkEvaluateList, tResultWorkEvaluateDetailEngineerVOS); |
| | | |
| | | // 其他任务 |
| | | List<TTesterOtherTask> list = tTesterOtherTaskService.lambdaQuery().eq(TTesterOtherTask::getTesterId, sysUser.getUserId()).list(); |
| | | List<TTesterOtherTask> list = tTesterOtherTaskService.lambdaQuery() |
| | | .eq(TTesterOtherTask::getTesterId, sysUser.getUserId()) |
| | | .eq(TTesterOtherTask::getTeamId, projectTeam.getId()) |
| | | .orderByAsc(TTesterOtherTask::getCreateTime) |
| | | .list(); |
| | | TResultWorkEvaluateDetailEngineerVO tResultWorkEvaluateDetailEngineerVO5 = new TResultWorkEvaluateDetailEngineerVO(); |
| | | tResultWorkEvaluateDetailEngineerVO5.setCount(list.size()); |
| | | if (!list.isEmpty()) { |
| | |
| | | } |
| | | int temp = 0; |
| | | for (TTesterOtherTask tTesterOtherTask : list) { |
| | | if (tTesterOtherTask.getEvaluateScore() != null) { |
| | | temp += tTesterOtherTask.getEvaluateScore(); |
| | | } |
| | | } |
| | | tResultWorkEvaluateDetailEngineerVO5.setIntegral(temp); |
| | | tResultWorkEvaluateDetailEngineerVOS.add(tResultWorkEvaluateDetailEngineerVO5); |
| | | tResultWorkEvaluateDetailUserVO.setList(tResultWorkEvaluateDetailEngineerVOS); |
| | |
| | | #{teamId} |
| | | </foreach> |
| | | </if> |
| | | <if test="query.roleType != null and query.roleType == 2"> |
| | | AND tfsr.status in (1,2,3) |
| | | </if> |
| | | AND tfsr.disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()} |
| | | </where> |
| | | ORDER BY tfsr.create_time DESC |
| | |
| | | #{teamId} |
| | | </foreach> |
| | | </if> |
| | | and tfsr.status in (1,2,3,4) |
| | | AND tfsr.disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()} |
| | | </where> |
| | | </select> |
| | |
| | | #{teamId} |
| | | </foreach> |
| | | </if> |
| | | AND tqpr.status in (1,2,3,4) |
| | | AND tqpr.disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()} |
| | | </where> |
| | | </select> |