liding
2025-04-02 d9e44be293710a7a27f051c7e4ed1da6a79b64e3
可靠性计划产品计划
已修改3个文件
已添加7个文件
289 ■■■■■ 文件已修改
inspect-server/src/main/java/com/ruoyi/inspect/controller/ReliabilityPlanProductItemController.java 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/ruoyi/inspect/dto/ReliabilityPlanProductItemDto.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/ruoyi/inspect/mapper/ReliabilityPlanProductItemMapper.java 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/ruoyi/inspect/pojo/ReliabilityPlanMaterial.java 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/ruoyi/inspect/pojo/ReliabilityPlanProduct.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/ruoyi/inspect/pojo/ReliabilityPlanProductItem.java 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/ruoyi/inspect/service/ReliabilityPlanProductItemService.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/ruoyi/inspect/service/impl/ReliabilityPlanMaterialServiceImpl.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/ruoyi/inspect/service/impl/ReliabilityPlanProductItemServiceImpl.java 53 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/resources/mapper/ReliabilityPlanProductItemMapper.xml 60 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/ruoyi/inspect/controller/ReliabilityPlanProductItemController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,54 @@
package com.ruoyi.inspect.controller;
import com.ruoyi.common.core.domain.Result;
import com.ruoyi.inspect.dto.ReliabilityPlanProductItemDto;
import com.ruoyi.inspect.service.ReliabilityPlanProductItemService;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
/**
 * <p>
 * å¯é æ€§è®¡åˆ’产品子项 å‰ç«¯æŽ§åˆ¶å™¨
 * </p>
 *
 * @author ld
 * @since 2025-04-01 05:12:38
 */
@RestController
@AllArgsConstructor
@RequestMapping("/reliabilityPlanProductItem")
public class ReliabilityPlanProductItemController {
    private ReliabilityPlanProductItemService reliabilityPlanProductItemService;
    @ApiOperation("查询可靠性计划成品检验项")
    @GetMapping("/selectProductItem")
    public Result selectProductItem() {
        return Result.success(reliabilityPlanProductItemService.selectProductItem());
    }
    @ApiOperation(value = "添加可靠性计划成品检验项")
    @PostMapping("/addOrUpdateItem")
    public Result<?> addOrUpdateItem(@RequestBody ReliabilityPlanProductItemDto reliabilityPlanProductItemDto) {
        return Result.success(reliabilityPlanProductItemService.addOrUpdateItem(reliabilityPlanProductItemDto));
    }
    @ApiOperation(value = "查询产品检验项")
    @GetMapping("/itemList")
    public Result itemList(ReliabilityPlanProductItemDto reliabilityPlanProductItemDto) {
        return Result.success(reliabilityPlanProductItemService.itemList(reliabilityPlanProductItemDto));
    }
    @ApiOperation(value = "查询产品检验项")
    @GetMapping("/codeList")
    public Result codeList(ReliabilityPlanProductItemDto reliabilityPlanProductItemDto) {
        return Result.success(reliabilityPlanProductItemService.codeList(reliabilityPlanProductItemDto));
    }
    @ApiOperation(value = "删除")
    @DeleteMapping("/deleteItem")
    public Result deleteItem(Integer id) {
        return Result.success(reliabilityPlanProductItemService.removeById(id));
    }
}
inspect-server/src/main/java/com/ruoyi/inspect/dto/ReliabilityPlanProductItemDto.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
package com.ruoyi.inspect.dto;
import com.ruoyi.inspect.pojo.ReliabilityPlanProductItem;
import lombok.Data;
@Data
public class ReliabilityPlanProductItemDto extends ReliabilityPlanProductItem {
    private Integer rePlanId;
}
inspect-server/src/main/java/com/ruoyi/inspect/mapper/ReliabilityPlanProductItemMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
package com.ruoyi.inspect.mapper;
import com.ruoyi.inspect.pojo.ReliabilityPlanProductItem;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
 * <p>
 * å¯é æ€§è®¡åˆ’产品子项 Mapper æŽ¥å£
 * </p>
 *
 * @author ld
 * @since 2025-04-01 05:12:38
 */
public interface ReliabilityPlanProductItemMapper extends BaseMapper<ReliabilityPlanProductItem> {
    List<Map<String, Object>> itemList(@Param("planId") Integer rePlanId);
    List<Map<String, Object>> codeList(@Param("planId") Integer rePlanId);
}
inspect-server/src/main/java/com/ruoyi/inspect/pojo/ReliabilityPlanMaterial.java
@@ -30,7 +30,10 @@
    private String partNo;
    @ApiModelProperty("审核状态")
    private String state;
    private Integer state;
    @ApiModelProperty("原辅料名称ID")
    private Integer materialId;
    @ApiModelProperty("是否通过")
    private String isPass;
inspect-server/src/main/java/com/ruoyi/inspect/pojo/ReliabilityPlanProduct.java
@@ -46,4 +46,7 @@
    @ApiModelProperty("审核人")
    private String reviewer;
    @ApiModelProperty("产品id")
    private Integer productId;
}
inspect-server/src/main/java/com/ruoyi/inspect/pojo/ReliabilityPlanProductItem.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,45 @@
package com.ruoyi.inspect.pojo;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
/**
 * <p>
 * å¯é æ€§è®¡åˆ’产品子项
 * </p>
 *
 * @author ld
 * @since 2025-04-01 05:12:38
 */
@Getter
@Setter
@TableName("reliability_plan_product_item")
@ApiModel(value = "ReliabilityPlanProductItem对象", description = "可靠性计划产品子项")
public class ReliabilityPlanProductItem implements Serializable {
    private static final long serialVersionUID = 1L;
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;
    @ApiModelProperty("检验项")
    private String inspectionItem;
    @ApiModelProperty("测试标准")
    private String standard;
    @ApiModelProperty("频次")
    private String frequency;
    @ApiModelProperty("备注")
    private String remark;
    @ApiModelProperty("关联可靠性计划产品id")
    private Integer planId;
}
inspect-server/src/main/java/com/ruoyi/inspect/service/ReliabilityPlanProductItemService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,27 @@
package com.ruoyi.inspect.service;
import com.ruoyi.inspect.dto.ReliabilityPlanProductItemDto;
import com.ruoyi.inspect.pojo.ReliabilityPlanProductItem;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
import java.util.Map;
/**
 * <p>
 * å¯é æ€§è®¡åˆ’产品子项 æœåŠ¡ç±»
 * </p>
 *
 * @author ld
 * @since 2025-04-01 05:12:38
 */
public interface ReliabilityPlanProductItemService extends IService<ReliabilityPlanProductItem> {
    List<ReliabilityPlanProductItem> selectProductItem();
    int addOrUpdateItem(ReliabilityPlanProductItemDto reliabilityPlanProductItemDto);
    List<Map<String, Object>> itemList(ReliabilityPlanProductItemDto reliabilityPlanProductItemDto);
    List<Map<String, Object>> codeList(ReliabilityPlanProductItemDto reliabilityPlanProductItemDto);
}
inspect-server/src/main/java/com/ruoyi/inspect/service/impl/ReliabilityPlanMaterialServiceImpl.java
@@ -3,7 +3,6 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.utils.QueryWrappers;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.inspect.dto.ReliabilityPlanMaterialDto;
import com.ruoyi.inspect.pojo.ReliabilityPlanMaterial;
import com.ruoyi.inspect.mapper.ReliabilityPlanMaterialMapper;
@@ -36,12 +35,13 @@
    @Override
    public int addOrUpdateMaterial(ReliabilityPlanMaterialDto reliabilityPlanMaterialDto) {
        if (Objects.isNull(reliabilityPlanMaterialDto.getId())) {
            reliabilityPlanMaterialDto.setState(null);
            reliabilityPlanMaterialDto.setState(0);
            return reliabilityPlanMaterialMapper.insert(reliabilityPlanMaterialDto);
        } else {
            //1已审核
            if (!StringUtils.isNotBlank(reliabilityPlanMaterialDto.getState())) {
                reliabilityPlanMaterialDto.setState(null);
            // å®¡æ ¸çŠ¶æ€ 0.待提交1.待审核2.通过3.不通过
            int state = reliabilityPlanMaterialDto.getState();
            if (state != 0 && state != 1 && state != 2) {
                reliabilityPlanMaterialDto.setState(3);
            }
            return reliabilityPlanMaterialMapper.updateById(reliabilityPlanMaterialDto);
inspect-server/src/main/java/com/ruoyi/inspect/service/impl/ReliabilityPlanProductItemServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,53 @@
package com.ruoyi.inspect.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.ruoyi.inspect.dto.ReliabilityPlanProductItemDto;
import com.ruoyi.inspect.pojo.ReliabilityPlanProductItem;
import com.ruoyi.inspect.mapper.ReliabilityPlanProductItemMapper;
import com.ruoyi.inspect.service.ReliabilityPlanProductItemService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
/**
 * <p>
 * å¯é æ€§è®¡åˆ’产品子项 æœåŠ¡å®žçŽ°ç±»
 * </p>
 *
 * @author ld
 * @since 2025-04-01 05:12:38
 */
@Service
@AllArgsConstructor
public class ReliabilityPlanProductItemServiceImpl extends ServiceImpl<ReliabilityPlanProductItemMapper, ReliabilityPlanProductItem> implements ReliabilityPlanProductItemService {
    private ReliabilityPlanProductItemMapper reliabilityPlanProductItemMapper;
    @Override
    public List<ReliabilityPlanProductItem> selectProductItem() {
        return reliabilityPlanProductItemMapper.selectList(new LambdaQueryWrapper<>());
    }
    @Override
    public int addOrUpdateItem(ReliabilityPlanProductItemDto reliabilityPlanProductItemDto) {
        if (reliabilityPlanProductItemDto.getId() == null) {
            reliabilityPlanProductItemDto.setPlanId(reliabilityPlanProductItemDto.getRePlanId());
            return reliabilityPlanProductItemMapper.insert(reliabilityPlanProductItemDto);
        } else {
            return reliabilityPlanProductItemMapper.updateById(reliabilityPlanProductItemDto);
        }
    }
    @Override
    public List<Map<String, Object>> itemList(ReliabilityPlanProductItemDto reliabilityPlanProductItemDto) {
        return reliabilityPlanProductItemMapper.itemList(reliabilityPlanProductItemDto.getRePlanId());
    }
    @Override
    public List<Map<String, Object>> codeList(ReliabilityPlanProductItemDto reliabilityPlanProductItemDto) {
        return reliabilityPlanProductItemMapper.codeList(reliabilityPlanProductItemDto.getRePlanId());
    }
}
inspect-server/src/main/resources/mapper/ReliabilityPlanProductItemMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,60 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.inspect.mapper.ReliabilityPlanProductItemMapper">
    <!-- é€šç”¨æŸ¥è¯¢æ˜ å°„结果 -->
    <resultMap id="BaseResultMap" type="com.ruoyi.inspect.pojo.ReliabilityPlanProductItem">
        <id column="id" property="id" />
        <result column="inspection_item" property="inspectionItem" />
        <result column="standard" property="standard" />
        <result column="frequency" property="frequency" />
        <result column="remark" property="remark" />
        <result column="plan_id" property="planId" />
    </resultMap>
    <select id="itemList" resultType="java.util.Map">
        WITH flattened_samples AS (
            SELECT
                sp.id,
                JSON_ARRAYAGG(VALUE) AS flattened_sample
            FROM
                structure_item_parameter sp
                    JOIN JSON_TABLE (sp.sample, '$[*][*]' COLUMNS (VALUE VARCHAR (255) PATH '$')) AS inner_arr
            GROUP BY
                sp.id
        ) SELECT
              sp.inspection_item AS inspectionItem,
              sm.`code`,
              sm.id
        FROM
            flattened_samples fs
                JOIN structure_item_parameter sp ON fs.id = sp.id
                JOIN reliability_plan_product rp ON JSON_OVERLAPS (fs.flattened_sample, JSON_ARRAY(rp.product_name))
                LEFT JOIN standard_product_list spl ON spl.structure_item_parameter_id = sp.id
                AND spl.model = rp.product_type
                LEFT JOIN standard_method sm ON sm.id = spl.standard_method_list_id
        WHERE rp.id = #{planId}
    </select>
    <select id="codeList" resultType="java.util.Map">
        WITH flattened_samples AS (
            SELECT
                sp.id,
                JSON_ARRAYAGG(VALUE) AS flattened_sample
            FROM
                structure_item_parameter sp
                    JOIN JSON_TABLE (sp.sample, '$[*][*]' COLUMNS (VALUE VARCHAR (255) PATH '$')) AS inner_arr
            GROUP BY
                sp.id
        ) SELECT DISTINCT
              sm.`code`as standard,
              sm.id
        FROM
            flattened_samples fs
                JOIN structure_item_parameter sp ON fs.id = sp.id
                JOIN reliability_plan_product rp ON JSON_OVERLAPS (fs.flattened_sample, JSON_ARRAY(rp.product_name))
                LEFT JOIN standard_product_list spl ON spl.structure_item_parameter_id = sp.id
                AND spl.model = rp.product_type
                LEFT JOIN standard_method sm ON sm.id = spl.standard_method_list_id
        WHERE rp.id = #{planId}
    </select>
</mapper>