ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TInspectionReportController.java
@@ -71,6 +71,38 @@ @PostMapping(value = "/api/t-inspection-report/pageList") public R<PageInfo<TInspectionReportVO>> pageList(@RequestBody String param) { TInspectionReportQuery query = JSON.parseObject(param, TInspectionReportQuery.class); // 获取当前用户 Long userId = tokenService.getLoginUser().getUserId(); Integer roleType = tokenService.getLoginUser().getUser().getRoleType(); query.setRoleType(roleType); if (roleType != 1){ query.setUserId(userId); if(roleType ==2){ // 查询项目组 TProjectTeamStaff projectTeamStaff = projectTeamStaffService.getOne(Wrappers.lambdaQuery(TProjectTeamStaff.class) .eq(TProjectTeamStaff::getUserId, userId)); // 查询项目的工艺工程师id TProjectTeamStaff teamStaff = projectTeamStaffService.getOne(Wrappers.lambdaQuery(TProjectTeamStaff.class) .eq(TProjectTeamStaff::getTeamId, projectTeamStaff.getTeamId()) .eq(TProjectTeamStaff::getRoleType, 3) .last("LIMIT 1")); // 查询实验参与人员 List<TExperimentDispatchParticipants> experimentDispatchParticipants = experimentDispatchParticipantsService.list(Wrappers.lambdaQuery(TExperimentDispatchParticipants.class) .eq(TExperimentDispatchParticipants::getUserId, teamStaff.getUserId())); if(!CollectionUtils.isEmpty(experimentDispatchParticipants)){ List<String> dispatchIds = experimentDispatchParticipants.stream().map(TExperimentDispatchParticipants::getDispatchId).distinct().collect(Collectors.toList()); query.setDispatchIds(dispatchIds); } }else { // 查询实验参与人员 List<TExperimentDispatchParticipants> experimentDispatchParticipants = experimentDispatchParticipantsService.list(Wrappers.lambdaQuery(TExperimentDispatchParticipants.class) .eq(TExperimentDispatchParticipants::getUserId, userId)); if (!CollectionUtils.isEmpty(experimentDispatchParticipants)) { List<String> dispatchIds = experimentDispatchParticipants.stream().map(TExperimentDispatchParticipants::getDispatchId).distinct().collect(Collectors.toList()); query.setDispatchIds(dispatchIds); } } } return R.ok(inspectionReportService.pageList(query)); } ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TProjectProposalController.java
@@ -79,6 +79,8 @@ // 查询项目组id List<String> teamIds = projectTeamStaffs.stream().map(TProjectTeamStaff::getTeamId).distinct().collect(Collectors.toList()); query.setTeamIds(teamIds); }else{ return R.fail("当前用户未分配项目组,无法查看项目课题方案"); } } return R.ok(projectProposalService.pageList(query)); ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TTestMethodConfirmSheetController.java
@@ -123,18 +123,29 @@ public R<Boolean> add(@RequestBody String param) { TTestMethodConfirmSheetDTO dto = JSON.parseObject(param,TTestMethodConfirmSheetDTO.class); Long userId = tokenService.getLoginUser().getUserId(); dto.setCommitUserId(userId); testMethodConfirmSheetService.save(dto); List<TTestMethodConfirmSheetTerm> testMethodConfirmSheetTerms = dto.getTestMethodConfirmSheetTerms(); testMethodConfirmSheetTerms.forEach(testMethodConfirmSheetTerm -> { testMethodConfirmSheetTerm.setTestId(dto.getId()); testMethodConfirmSheetTerm.setStatus(1); }); testMethodConfirmSheetTermService.saveBatch(testMethodConfirmSheetTerms); // 通过当前用户查询项目组 TProjectTeamStaff projectTeamStaff = projectTeamStaffService.getOne(Wrappers.lambdaQuery(TProjectTeamStaff.class) .eq(TProjectTeamStaff::getUserId, userId) TExperimentDispatch experimentDispatch = experimentDispatchService.getOne(Wrappers.lambdaQuery(TExperimentDispatch.class) .eq(TExperimentDispatch::getId, dto.getDispatchId())); if(Objects.isNull(experimentDispatch)){ return R.fail("实验调度不存在"); } // 查询调度的参与人员 TExperimentDispatchParticipants experimentDispatchParticipant = experimentDispatchParticipantsService.getOne(Wrappers.lambdaQuery(TExperimentDispatchParticipants.class) .eq(TExperimentDispatchParticipants::getDispatchId, dto.getDispatchId()) .eq(TExperimentDispatchParticipants::getRoleType,3) .last("LIMIT 1")); if(Objects.isNull(experimentDispatchParticipant)){ return R.fail("实验调度参与人员不存在"); } // 查询工艺工程师所在的项目组 TProjectTeamStaff projectTeamStaff = projectTeamStaffService.getOne(Wrappers.lambdaQuery(TProjectTeamStaff.class) .eq(TProjectTeamStaff::getUserId, experimentDispatchParticipant.getUserId()) .eq(TProjectTeamStaff::getRoleType, 3) .last("LIMIT 1")); // 通过当前用户查询项目组 if(Objects.isNull(projectTeamStaff)){ return R.fail("当前用户未分配项目组,无法创建项目课题方案"); } @@ -146,6 +157,15 @@ if(projectTeam.getStatus() == 2){ return R.fail("项目组已封存,无法创建项目课题方案"); } dto.setCommitUserId(userId); testMethodConfirmSheetService.save(dto); List<TTestMethodConfirmSheetTerm> testMethodConfirmSheetTerms = dto.getTestMethodConfirmSheetTerms(); testMethodConfirmSheetTerms.forEach(testMethodConfirmSheetTerm -> { testMethodConfirmSheetTerm.setTestId(dto.getId()); testMethodConfirmSheetTerm.setStatus(1); }); testMethodConfirmSheetTermService.saveBatch(testMethodConfirmSheetTerms); // 生成原始记录编号 String format = new SimpleDateFormat("yyyyMMdd").format(new Date()); String originalCode = projectTeam.getTeamName() + format.substring(2) + "-JL"; ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TTestMethodConfirmSheetOriginalController.java
@@ -10,22 +10,21 @@ import com.ruoyi.framework.web.service.TokenService; import com.ruoyi.system.dto.TTestMethodConfirmSheetOriginalDTO; import com.ruoyi.system.mapper.SysUserMapper; import com.ruoyi.system.model.TTestMethodConfirmSheetOriginal; import com.ruoyi.system.model.TTestMethodConfirmSheetOriginalData; import com.ruoyi.system.model.TTestMethodConfirmSheetTerm; import com.ruoyi.system.model.*; import com.ruoyi.system.query.TTestMethodConfirmSheetOriginalQuery; import com.ruoyi.system.service.ISysUserService; import com.ruoyi.system.service.TTestMethodConfirmSheetOriginalDataService; import com.ruoyi.system.service.TTestMethodConfirmSheetOriginalService; import com.ruoyi.system.service.TTestMethodConfirmSheetTermService; import com.ruoyi.system.service.*; import com.ruoyi.system.vo.TTestMethodConfirmSheetOriginalVO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; import org.springframework.web.bind.annotation.*; import java.util.ArrayList; import java.util.Iterator; import java.util.List; import java.util.stream.Collectors; /** * <p> @@ -46,14 +45,20 @@ private final TTestMethodConfirmSheetOriginalService testMethodConfirmSheetOriginalService; private final TTestMethodConfirmSheetOriginalDataService testMethodConfirmSheetOriginalDataService; private final TTestMethodConfirmSheetTermService testMethodConfirmSheetTermService; private final TProjectTeamStaffService projectTeamStaffService; private final TExperimentDispatchParticipantsService experimentDispatchParticipantsService; private final TInspectionReportService inspectionReportService; @Autowired public TTestMethodConfirmSheetOriginalController(TokenService tokenService, ISysUserService sysUserService, SysUserMapper sysUserMapper, TTestMethodConfirmSheetOriginalService testMethodConfirmSheetOriginalService, TTestMethodConfirmSheetOriginalDataService testMethodConfirmSheetOriginalDataService, TTestMethodConfirmSheetTermService testMethodConfirmSheetTermService) { public TTestMethodConfirmSheetOriginalController(TokenService tokenService, ISysUserService sysUserService, SysUserMapper sysUserMapper, TTestMethodConfirmSheetOriginalService testMethodConfirmSheetOriginalService, TTestMethodConfirmSheetOriginalDataService testMethodConfirmSheetOriginalDataService, TTestMethodConfirmSheetTermService testMethodConfirmSheetTermService, TProjectTeamStaffService projectTeamStaffService, TExperimentDispatchParticipantsService experimentDispatchParticipantsService, TInspectionReportService inspectionReportService) { this.tokenService = tokenService; this.sysUserService = sysUserService; this.sysUserMapper = sysUserMapper; this.testMethodConfirmSheetOriginalService = testMethodConfirmSheetOriginalService; this.testMethodConfirmSheetOriginalDataService = testMethodConfirmSheetOriginalDataService; this.testMethodConfirmSheetTermService = testMethodConfirmSheetTermService; this.projectTeamStaffService = projectTeamStaffService; this.experimentDispatchParticipantsService = experimentDispatchParticipantsService; this.inspectionReportService = inspectionReportService; } /** @@ -64,6 +69,64 @@ @PostMapping(value = "/api/t-test-method-confirm-sheet-original/pageList") public R<PageInfo<TTestMethodConfirmSheetOriginalVO>> pageList(@RequestBody String param) { TTestMethodConfirmSheetOriginalQuery query = JSON.parseObject(param, TTestMethodConfirmSheetOriginalQuery.class); // 获取当前用户 Long userId = tokenService.getLoginUser().getUserId(); Integer roleType = tokenService.getLoginUser().getUser().getRoleType(); if (roleType != 1){ query.setUserId(userId); if(roleType ==2){ // 查询项目组 TProjectTeamStaff projectTeamStaff = projectTeamStaffService.getOne(Wrappers.lambdaQuery(TProjectTeamStaff.class) .eq(TProjectTeamStaff::getUserId, userId)); // 查询项目的工艺工程师id TProjectTeamStaff teamStaff = projectTeamStaffService.getOne(Wrappers.lambdaQuery(TProjectTeamStaff.class) .eq(TProjectTeamStaff::getTeamId, projectTeamStaff.getTeamId()) .eq(TProjectTeamStaff::getRoleType, 3) .last("LIMIT 1")); // 查询实验参与人员 List<TExperimentDispatchParticipants> experimentDispatchParticipants = experimentDispatchParticipantsService.list(Wrappers.lambdaQuery(TExperimentDispatchParticipants.class) .eq(TExperimentDispatchParticipants::getUserId, teamStaff.getUserId())); if(!CollectionUtils.isEmpty(experimentDispatchParticipants)){ List<String> dispatchIds = experimentDispatchParticipants.stream().map(TExperimentDispatchParticipants::getDispatchId).distinct().collect(Collectors.toList()); query.setDispatchIds(dispatchIds); } }else { // 查询实验参与人员 List<TExperimentDispatchParticipants> experimentDispatchParticipants = experimentDispatchParticipantsService.list(Wrappers.lambdaQuery(TExperimentDispatchParticipants.class) .eq(TExperimentDispatchParticipants::getUserId, userId)); if (!CollectionUtils.isEmpty(experimentDispatchParticipants)) { List<String> dispatchIds = experimentDispatchParticipants.stream().map(TExperimentDispatchParticipants::getDispatchId).distinct().collect(Collectors.toList()); query.setDispatchIds(dispatchIds); } } if(roleType == 4){ // 查询检验报告 List<TInspectionReport> inspectionReports = inspectionReportService.list(Wrappers.lambdaQuery(TInspectionReport.class) .eq(TInspectionReport::getStatus, 1)); if (!CollectionUtils.isEmpty(inspectionReports)) { List<String> dispatchIds = inspectionReports.stream().map(TInspectionReport::getDispatchId).distinct().collect(Collectors.toList()); List<String> dispatchIds1 = query.getDispatchIds(); Iterator<String> iterator = dispatchIds1.iterator(); while (iterator.hasNext()) { String next = iterator.next(); if (!dispatchIds.contains(next)) { iterator.remove(); } } if(CollectionUtils.isEmpty(dispatchIds1)){ List<String> id = new ArrayList<>(); id.add("-1"); query.setDispatchIds(id); }else { query.setDispatchIds(dispatchIds1); } }else { List<String> id = new ArrayList<>(); id.add("-1"); query.setDispatchIds(id); } } } return R.ok(testMethodConfirmSheetOriginalService.pageList(query)); } ruoyi-admin/src/main/resources/application-prod.yml
@@ -197,7 +197,7 @@ location: /file/ qrLocation: /file/qrCode/ accessPath: /file/ allowExt: .jpg|.png|.gif|.jpeg|.doc|.docx|.apk|.MP4|.mp4|.pdf|.PDF allowExt: .jpg|.png|.gif|.jpeg|.doc|.docx|.apk|.MP4|.mp4|.pdf|.PDF|.xls|.xlsx|.rar|.zip|.rar url: prefix: https://xzgt.test.591taxi.cn:${server.port}${server.servlet.context-path} wx: ruoyi-admin/src/main/resources/application-test.yml
@@ -190,7 +190,7 @@ location: /file/ qrLocation: /file/qrCode/ accessPath: /file/ allowExt: .jpg|.png|.gif|.jpeg|.doc|.docx|.apk|.MP4|.mp4|.pdf|.PDF allowExt: .jpg|.png|.gif|.jpeg|.doc|.docx|.apk|.MP4|.mp4|.pdf|.PDF|.xls|.xlsx|.rar|.zip|.rar url: # prefix: http://localhost:${server.port}${server.servlet.context-path} prefix: https://xzgt.test.591taxi.cn:${server.port}${server.servlet.context-path} ruoyi-system/src/main/java/com/ruoyi/system/query/TInspectionReportQuery.java
@@ -1,10 +1,11 @@ package com.ruoyi.system.query; import com.baomidou.mybatisplus.annotation.TableField; import com.ruoyi.common.core.domain.model.TimeRangeQueryBody; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.List; @Data @ApiModel(value = "检验报告查询参数query") @@ -23,4 +24,11 @@ private String createBy; @ApiModelProperty(value = "状态 -1=草稿箱 1=待提交 2=已提交") private Integer status; @ApiModelProperty(value = "用户id 前端忽略") private Long userId; @ApiModelProperty(value = "用户类型 前端忽略") private Integer roleType; @ApiModelProperty(value = "实验id 前端忽略") private List<String> dispatchIds; } ruoyi-system/src/main/java/com/ruoyi/system/query/TTestMethodConfirmSheetOriginalQuery.java
@@ -6,6 +6,8 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.List; @Data @ApiModel(value = "原始检测项查询对象query") public class TTestMethodConfirmSheetOriginalQuery extends TimeRangeQueryBody { @@ -22,5 +24,11 @@ @ApiModelProperty(value = "状态 -1=草稿箱 1=未填写 2=已填写") @TableField("status") private Integer status; @ApiModelProperty(value = "用户id 前端忽略") private Long userId; @ApiModelProperty(value = "用户类型 前端忽略") private Integer roleType; @ApiModelProperty(value = "实验id 前端忽略") private List<String> dispatchIds; } ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TTestMethodConfirmSheetOriginalServiceImpl.java
@@ -3,13 +3,9 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.common.basic.PageInfo; import com.ruoyi.system.mapper.TTestMethodConfirmSheetOriginalMapper; import com.ruoyi.system.mapper.TTestMethodConfirmSheetTermMapper; import com.ruoyi.system.model.TTestMethodConfirmSheetOriginal; import com.ruoyi.system.model.TTestMethodConfirmSheetTerm; import com.ruoyi.system.query.TTestMethodConfirmSheetOriginalQuery; import com.ruoyi.system.service.TTestMethodConfirmSheetOriginalService; import com.ruoyi.system.service.TTestMethodConfirmSheetTermService; import com.ruoyi.system.vo.TExperimentResultReportVO; import com.ruoyi.system.vo.TTestMethodConfirmSheetOriginalVO; import org.springframework.stereotype.Service; @@ -26,8 +22,11 @@ @Service public class TTestMethodConfirmSheetOriginalServiceImpl extends ServiceImpl<TTestMethodConfirmSheetOriginalMapper, TTestMethodConfirmSheetOriginal> implements TTestMethodConfirmSheetOriginalService { @Override public PageInfo<TTestMethodConfirmSheetOriginalVO> pageList(TTestMethodConfirmSheetOriginalQuery query) { // PageInfo<TTestMethodConfirmSheetOriginalVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize()); List<TTestMethodConfirmSheetOriginalVO> list = this.baseMapper.pageList(query,pageInfo); pageInfo.setRecords(list); ruoyi-system/src/main/resources/mapper/system/TInspectionReportMapper.xml
@@ -43,6 +43,15 @@ <if test="query.status != null"> and tir.status = #{query.status} </if> <if test="query.dispatchIds != null and query.dispatchIds.size() > 0"> and tir.dispatch_id in <foreach item="item" collection="query.dispatchIds" separator="," close=")" index="index" open="("> #{item} </foreach> </if> <if test="query.roleType != null and query.roleType == 4"> and tir.status = 1 </if> <if test="query.status == null"> and tir.status != -1 </if> ruoyi-system/src/main/resources/mapper/system/TTestMethodConfirmSheetOriginalMapper.xml
@@ -47,6 +47,12 @@ <if test="query.status != null"> and ttmcso.status = #{query.status} </if> <if test="query.dispatchIds != null and query.dispatchIds.size() > 0"> and ttmcs.dispatch_id in <foreach item="item" collection="query.dispatchIds" separator="," close=")" index="index" open="("> #{item} </foreach> </if> <if test="query.status == null"> and ttmcso.status != -1 </if>