xuhy
3 天以前 4afcd102fd49874b304ce1ef4ba506c77cc7c397
bug修改
11个文件已修改
199 ■■■■ 已修改文件
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TInspectionReportController.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TProjectProposalController.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TTestMethodConfirmSheetController.java 42 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TTestMethodConfirmSheetOriginalController.java 79 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/resources/application-prod.yml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/resources/application-test.yml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/query/TInspectionReportQuery.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/query/TTestMethodConfirmSheetOriginalQuery.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TTestMethodConfirmSheetOriginalServiceImpl.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/resources/mapper/system/TInspectionReportMapper.xml 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/resources/mapper/system/TTestMethodConfirmSheetOriginalMapper.xml 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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>