chenrui
2025-04-08 4e5d5dbb194f097a19ad8ed0ebb8b0d2247230f3
成品下单检验项查询修改
已修改5个文件
87 ■■■■■ 文件已修改
basic-server/src/main/java/com/ruoyi/basic/dto/InsSampleReceiveDto.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
basic-server/src/main/java/com/ruoyi/basic/dto/StandardProductListDto.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListMapper.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java 46 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
basic-server/src/main/resources/mapper/StandardProductListMapper.xml 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
basic-server/src/main/java/com/ruoyi/basic/dto/InsSampleReceiveDto.java
@@ -4,6 +4,8 @@
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
 * @Author zhuo
 * @Date 2024/10/29
@@ -32,4 +34,11 @@
    @ApiModelProperty("是否是电缆配置")
    private String isCableTag;
    @ApiModelProperty("实验室标准IDs")
    private List<Long> standardMethodListIds;
    @ApiModelProperty("是否生效 1:有效 0:无效")
    private Integer state;
}
basic-server/src/main/java/com/ruoyi/basic/dto/StandardProductListDto.java
@@ -10,6 +10,7 @@
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;
/**
 * 标准树下的检验项目
@@ -20,4 +21,7 @@
    private String operationStatus;
    @ApiModelProperty("实验室标准IDs")
    private List<Long> standardMethodListIds;
}
basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListMapper.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.basic.dto.StandardProductListDto;
import com.ruoyi.basic.pojo.StandardProductList;
import com.ruoyi.basic.pojo.StandardProductListUpdateRecord;
import org.apache.ibatis.annotations.Param;
@@ -72,6 +73,14 @@
    void saveBatchProductLists(@Param("productLists") List<StandardProductList> productLists);
    void updateProductListCheckStatus(@Param("ids") List<Long> ids,@Param("checkStatus") String checkStatus);
    /**
     * 标准树下的检验项目查询
     *
     * @param standardProductListDto
     * @return
     */
    List<StandardProductList> standardProductListNoPage(@Param("standardProductListDto") StandardProductListDto standardProductListDto);
}
basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java
@@ -18,6 +18,7 @@
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.basic.service.StandardProductListService;
import lombok.AllArgsConstructor;
import org.aspectj.weaver.ast.Var;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -118,45 +119,18 @@
    @Override
    public List<StandardProductList> selectStandardProductList(InsSampleReceiveDto insSample) {
        // 是否没有产品
        boolean isNoSample = false;
//        String[] models = insSample.getModel().split("-(?=[^-]*$)");//拆分最后一个【-】
        String model = insSample.getModel();
        String modelNum = insSample.getModelNum();
        List<StandardProductList> list = standardProductListMapper.selectDetail(insSample.getStandardMethodListId(), 1, model, insSample.getIsCableTag());
        if (list.size() == 0) {
            if (Objects.equals(insSample.getFactory(), "") || insSample.getFactory() == null) {
                return null;
            }
            String[] split = insSample.getFactory().split(" - ");
            split[3] = split[3].replace("- ", "");
            String tree = split[0] + " - " + split[1] + " - " + split[2] + " - " + split[3] + " - null";
            list = standardProductListMapper.selectDetail2(insSample.getStandardMethodListId(), 1, tree, insSample.getIsCableTag());
            if (list.size() == 0) {
                String tree1 = split[0] + " - " + split[1] + " - " + split[2] + " - null - " + split[3];
                list = standardProductListMapper.selectDetail2(insSample.getStandardMethodListId(), 1, tree1, insSample.getIsCableTag());
                // 只有对象的一层
                if (list.size() == 0) {
                    String tree2 = split[0] + " - " + split[1] + " - " + split[2] + " - null - null";
                    list = standardProductListMapper.selectDetail2(insSample.getStandardMethodListId(), 1, tree2, insSample.getIsCableTag());
                    // 样品直接赋值样品分类
                    list.forEach(standardProductList -> standardProductList.setSample(standardProductList.getSampleType()));
                    isNoSample = true;
                }
            }
        // 查询检查项目
        StandardProductListDto standardProductListDto = new StandardProductListDto();
        standardProductListDto.setTree(insSample.getFactory());
        standardProductListDto.setStandardMethodListIds(insSample.getStandardMethodListIds());
        standardProductListDto.setState(insSample.getState());
        List<StandardProductList> list = new ArrayList<>();
        if(CollectionUtils.isEmpty(standardProductListDto.getStandardMethodListIds())) {
            return list;
        }
        String[] split1 = insSample.getFactory().split(" - ");
        if (!isNoSample) {
            //判断长度
            if (split1.length > 4) {
                if (ObjectUtils.isNotEmpty(split1[3])) {
                    list = list.stream().filter(list1 -> Objects.nonNull(list1.getSample()) && Objects.equals(list1.getSample(), split1[3])).collect(Collectors.toList());
                } else if (split1[3].equals("")) {
                    list = list.stream().filter(list1 -> Objects.nonNull(list1.getSampleType()) && Objects.equals(list1.getSampleType(), split1[2])).collect(Collectors.toList());
                }
            }
        }
        list = standardProductListMapper.standardProductListNoPage(standardProductListDto);
        list = list.stream().filter(a -> {
                    try {
                        if (a.getSection() != null && !Objects.equals(a.getSection(), "")) {
basic-server/src/main/resources/mapper/StandardProductListMapper.xml
@@ -163,4 +163,23 @@
            #{item}
        </foreach>
    </update>
    <select id="standardProductListNoPage" resultType="com.ruoyi.basic.pojo.StandardProductList">
        SELECT * FROM standard_product_list
        <where>
            <if test="standardProductListDto.standardMethodListIds != null">
                AND standard_method_list_id IN
                 <foreach collection="standardProductListDto.standardMethodListIds" open="(" close=")" separator="," item="item">
                     #{item}
                 </foreach>
            </if>
            <if test="standardProductListDto.tree != null and standardProductListDto.tree != '' ">
                AND tree = #{standardProductListDto.tree}
            </if>
            <if test="standardProductListDto.state != null ">
                AND state = #{standardProductListDto.state}
            </if>
        </where>
        ORDER BY standard_method_list_id ASC
    </select>
</mapper>