wukai пре 5 месеци
родитељ
комит
8e4d672f55

+ 121 - 0
jjt-biz/src/main/java/com/jjt/lean/controller/LeanCapabilityAnalysisController.java

@@ -0,0 +1,121 @@
+package com.jjt.lean.controller;
+
+import java.util.List;
+import javax.annotation.Resource;
+import javax.servlet.http.HttpServletResponse;
+
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import com.jjt.common.annotation.Log;
+import com.jjt.common.core.controller.BaseController;
+import com.jjt.common.core.domain.AjaxResult;
+import com.jjt.common.enums.BusinessType;
+import com.jjt.lean.domain.LeanCapabilityAnalysis;
+import com.jjt.lean.service.ILeanCapabilityAnalysisService;
+import com.jjt.common.utils.poi.ExcelUtil;
+import com.jjt.common.core.page.TableDataInfo;
+
+/**
+ * 白坯布重量分析Controller
+ *
+ * @author wukai
+ * @date 2025-11-11
+ */
+@Api(tags="白坯布重量分析")
+@RestController
+@RequestMapping("/lean/cap")
+public class LeanCapabilityAnalysisController extends BaseController{
+    @Resource
+    private ILeanCapabilityAnalysisService leanCapabilityAnalysisService;
+
+    /**
+     * 查询白坯布重量分析列表
+     */
+    @ApiOperation("查询白坯布重量分析列表")
+    @PreAuthorize("@ss.hasPermi('lean:cap:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(LeanCapabilityAnalysis leanCapabilityAnalysis)
+    {
+        startPage();
+        List<LeanCapabilityAnalysis> list = leanCapabilityAnalysisService.selectLeanCapabilityAnalysisList(leanCapabilityAnalysis);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出白坯布重量分析列表
+     */
+    @ApiOperation("导出白坯布重量分析列表")
+    @PreAuthorize("@ss.hasPermi('lean:cap:export')")
+    @Log(title = "白坯布重量分析", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, LeanCapabilityAnalysis leanCapabilityAnalysis)
+    {
+        List<LeanCapabilityAnalysis> list = leanCapabilityAnalysisService.selectLeanCapabilityAnalysisList(leanCapabilityAnalysis);
+        ExcelUtil<LeanCapabilityAnalysis> util = new ExcelUtil<LeanCapabilityAnalysis>(LeanCapabilityAnalysis.class);
+        util.exportExcel(response, list, "白坯布重量分析数据");
+    }
+
+    /**
+     * 获取白坯布重量分析详细信息
+     */
+    @ApiOperation("获取白坯布重量分析详细信息")
+    @PreAuthorize("@ss.hasPermi('lean:cap:query')")
+    @GetMapping(value = "/{bwId}")
+    public AjaxResult getInfo(@PathVariable("bwId") Long bwId)
+    {
+        return success(leanCapabilityAnalysisService.selectLeanCapabilityAnalysisByBwId(bwId));
+    }
+
+    /**
+     * 新增白坯布重量分析
+     */
+    @ApiOperation("新增白坯布重量分析")
+    @PreAuthorize("@ss.hasPermi('lean:cap:add')")
+    @Log(title = "白坯布重量分析", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody LeanCapabilityAnalysis leanCapabilityAnalysis)
+    {
+        // 检查是否存在相同时间的数据
+        if (leanCapabilityAnalysisService.checkDuplicateDataTime(leanCapabilityAnalysis)) {
+            return AjaxResult.error("该时间的数据已存在,请勿重复添加");
+        }
+        return toAjax(leanCapabilityAnalysisService.insertLeanCapabilityAnalysis(leanCapabilityAnalysis));
+    }
+
+    /**
+     * 修改白坯布重量分析
+     */
+    @ApiOperation("修改白坯布重量分析")
+    @PreAuthorize("@ss.hasPermi('lean:cap:edit')")
+    @Log(title = "白坯布重量分析", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody LeanCapabilityAnalysis leanCapabilityAnalysis)
+    {
+        // 检查是否存在相同时间的数据
+        if (leanCapabilityAnalysisService.checkDuplicateDataTime(leanCapabilityAnalysis)) {
+            return AjaxResult.error("该时间的数据已存在,请勿重复添加");
+        }
+        return toAjax(leanCapabilityAnalysisService.updateLeanCapabilityAnalysis(leanCapabilityAnalysis));
+    }
+
+    /**
+     * 删除白坯布重量分析
+     */
+    @ApiOperation("删除白坯布重量分析")
+    @PreAuthorize("@ss.hasPermi('lean:cap:remove')")
+    @Log(title = "白坯布重量分析", businessType = BusinessType.DELETE)
+	@DeleteMapping("/{bwIds}")
+    public AjaxResult remove(@PathVariable Long[] bwIds)
+    {
+        return toAjax(leanCapabilityAnalysisService.deleteLeanCapabilityAnalysisByBwIds(bwIds));
+    }
+}

+ 107 - 0
jjt-biz/src/main/java/com/jjt/lean/domain/LeanCapabilityAnalysis.java

@@ -0,0 +1,107 @@
+package com.jjt.lean.domain;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.jjt.common.annotation.Excel;
+import com.jjt.common.core.domain.BaseEntity;
+
+/**
+ * 白坯布重量分析对象 LEAN_CAPABILITY_ANALYSIS
+ *
+ * @author wukai
+ * @date 2025-11-11
+ */
+@ApiModel(value = "LeanCapabilityAnalysis", description = "白坯布重量分析")
+@Data
+public class LeanCapabilityAnalysis extends BaseEntity{
+    private static final long serialVersionUID = 1L;
+
+    /** ID */
+    @ApiModelProperty("ID")
+    @TableId
+    private Long bwId;
+
+    /** 测量时间 */
+    @ApiModelProperty("测量时间")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "测量时间")
+    private Date dataTime;
+
+    /** 数据类型 */
+    @ApiModelProperty("数据类型")
+    private String dataType;
+
+    /** 目标值 */
+    @ApiModelProperty("目标值")
+    @Excel(name = "目标值")
+    private Long targetValue;
+
+    /** 误差范围 */
+    @ApiModelProperty("误差范围")
+    @Excel(name = "误差范围")
+    private Long toleranceRange;
+
+    /** 误差值 */
+    @ApiModelProperty("误差值")
+    @Excel(name = "误差值")
+    private BigDecimal toleranceValue;
+
+    /** 测量值 */
+    @ApiModelProperty("测量值")
+    @Excel(name = "测量值")
+    private String measuredValue;
+
+    /** 上限过程能力指数CPU */
+    @ApiModelProperty("上限过程能力指数CPU")
+    @Excel(name = "上限过程能力指数CPU")
+    private BigDecimal cpuValue;
+
+    /** 下限过程能力指数CPL */
+    @ApiModelProperty("下限过程能力指数CPL")
+    @Excel(name = "下限过程能力指数CPL")
+    private BigDecimal cplValue;
+
+    /** 实际过程能力指数CPK */
+    @ApiModelProperty("实际过程能力指数CPK")
+    @Excel(name = "实际过程能力指数CPK")
+    private BigDecimal cpkValue;
+
+    /** 标准差 */
+    @ApiModelProperty("标准差")
+    @Excel(name = "标准差")
+    private BigDecimal stdDeviation;
+
+    /** 平均值 */
+    @ApiModelProperty("平均值")
+    @Excel(name = "平均值")
+    private String meanValue;
+
+    /** 最大值 */
+    @ApiModelProperty("最大值")
+    @Excel(name = "最大值")
+    private String maxValue;
+
+    /** 最小值 */
+    @ApiModelProperty("最小值")
+    @Excel(name = "最小值")
+    private String minValue;
+
+    /** 规格上限 */
+    @ApiModelProperty("规格上限")
+    @Excel(name = "规格上限")
+    private String usl;
+
+    /** 规格下限 */
+    @ApiModelProperty("规格下限")
+    @Excel(name = "规格下限")
+    private String lsl;
+
+}

+ 70 - 0
jjt-biz/src/main/java/com/jjt/lean/mapper/LeanCapabilityAnalysisMapper.java

@@ -0,0 +1,70 @@
+package com.jjt.lean.mapper;
+
+import java.util.List;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jjt.lean.domain.LeanCapabilityAnalysis;
+
+/**
+ * 白坯布重量分析Mapper接口
+ * 
+ * @author wukai
+ * @date 2025-11-11
+ */
+public interface LeanCapabilityAnalysisMapper extends BaseMapper<LeanCapabilityAnalysis>
+{
+    /**
+     * 查询白坯布重量分析
+     * 
+     * @param bwId 白坯布重量分析主键
+     * @return 白坯布重量分析
+     */
+    public LeanCapabilityAnalysis selectLeanCapabilityAnalysisByBwId(Long bwId);
+
+    /**
+     * 查询白坯布重量分析列表
+     * 
+     * @param leanCapabilityAnalysis 白坯布重量分析
+     * @return 白坯布重量分析集合
+     */
+    public List<LeanCapabilityAnalysis> selectLeanCapabilityAnalysisList(LeanCapabilityAnalysis leanCapabilityAnalysis);
+
+    /**
+     * 检查是否存在相同时间的数据
+     *
+     * @param leanCapabilityAnalysis 白坯布重量分析
+     * @return 结果
+     */
+    public int checkDuplicateDataTime(LeanCapabilityAnalysis leanCapabilityAnalysis);
+
+    /**
+     * 新增白坯布重量分析
+     * 
+     * @param leanCapabilityAnalysis 白坯布重量分析
+     * @return 结果
+     */
+    public int insertLeanCapabilityAnalysis(LeanCapabilityAnalysis leanCapabilityAnalysis);
+
+    /**
+     * 修改白坯布重量分析
+     * 
+     * @param leanCapabilityAnalysis 白坯布重量分析
+     * @return 结果
+     */
+    public int updateLeanCapabilityAnalysis(LeanCapabilityAnalysis leanCapabilityAnalysis);
+
+    /**
+     * 删除白坯布重量分析
+     * 
+     * @param bwId 白坯布重量分析主键
+     * @return 结果
+     */
+    public int deleteLeanCapabilityAnalysisByBwId(Long bwId);
+
+    /**
+     * 批量删除白坯布重量分析
+     * 
+     * @param bwIds 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteLeanCapabilityAnalysisByBwIds(Long[] bwIds);
+}

+ 68 - 0
jjt-biz/src/main/java/com/jjt/lean/service/ILeanCapabilityAnalysisService.java

@@ -0,0 +1,68 @@
+package com.jjt.lean.service;
+
+import java.util.List;
+import com.jjt.lean.domain.LeanCapabilityAnalysis;
+
+/**
+ * 白坯布重量分析Service接口
+ *
+ * @author wukai
+ * @date 2025-11-11
+ */
+public interface ILeanCapabilityAnalysisService {
+    /**
+     * 查询白坯布重量分析
+     *
+     * @param bwId 白坯布重量分析主键
+     * @return 白坯布重量分析
+     */
+    public LeanCapabilityAnalysis selectLeanCapabilityAnalysisByBwId(Long bwId);
+
+    /**
+     * 查询白坯布重量分析列表
+     *
+     * @param leanCapabilityAnalysis 白坯布重量分析
+     * @return 白坯布重量分析集合
+     */
+    public List<LeanCapabilityAnalysis> selectLeanCapabilityAnalysisList(LeanCapabilityAnalysis leanCapabilityAnalysis);
+
+    /**
+     * 检查是否存在相同时间的数据
+     *
+     * @param leanCapabilityAnalysis 白坯布重量分析
+     * @return 结果
+     */
+    public boolean checkDuplicateDataTime(LeanCapabilityAnalysis leanCapabilityAnalysis);
+
+    /**
+     * 新增白坯布重量分析
+     *
+     * @param leanCapabilityAnalysis 白坯布重量分析
+     * @return 结果
+     */
+    public int insertLeanCapabilityAnalysis(LeanCapabilityAnalysis leanCapabilityAnalysis);
+
+    /**
+     * 修改白坯布重量分析
+     *
+     * @param leanCapabilityAnalysis 白坯布重量分析
+     * @return 结果
+     */
+    public int updateLeanCapabilityAnalysis(LeanCapabilityAnalysis leanCapabilityAnalysis);
+
+    /**
+     * 批量删除白坯布重量分析
+     *
+     * @param bwIds 需要删除的白坯布重量分析主键集合
+     * @return 结果
+     */
+    public int deleteLeanCapabilityAnalysisByBwIds(Long[] bwIds);
+
+    /**
+     * 删除白坯布重量分析信息
+     *
+     * @param bwId 白坯布重量分析主键
+     * @return 结果
+     */
+    public int deleteLeanCapabilityAnalysisByBwId(Long bwId);
+}

+ 100 - 0
jjt-biz/src/main/java/com/jjt/lean/service/impl/LeanCapabilityAnalysisServiceImpl.java

@@ -0,0 +1,100 @@
+package com.jjt.lean.service.impl;
+
+import java.util.List;
+        import com.jjt.common.utils.DateUtils;
+import org.springframework.stereotype.Service;
+import com.jjt.lean.mapper.LeanCapabilityAnalysisMapper;
+import com.jjt.lean.domain.LeanCapabilityAnalysis;
+import com.jjt.lean.service.ILeanCapabilityAnalysisService;
+import javax.annotation.Resource;
+
+/**
+ * 白坯布重量分析Service业务层处理
+ *
+ * @author wukai
+ * @date 2025-11-11
+ */
+@Service
+public class LeanCapabilityAnalysisServiceImpl implements ILeanCapabilityAnalysisService {
+    @Resource
+    private LeanCapabilityAnalysisMapper leanCapabilityAnalysisMapper;
+
+    /**
+     * 查询白坯布重量分析
+     *
+     * @param bwId 白坯布重量分析主键
+     * @return 白坯布重量分析
+     */
+    @Override
+    public LeanCapabilityAnalysis selectLeanCapabilityAnalysisByBwId(Long bwId) {
+        return leanCapabilityAnalysisMapper.selectLeanCapabilityAnalysisByBwId(bwId);
+    }
+
+    /**
+     * 查询白坯布重量分析列表
+     *
+     * @param leanCapabilityAnalysis 白坯布重量分析
+     * @return 白坯布重量分析
+     */
+    @Override
+    public List<LeanCapabilityAnalysis> selectLeanCapabilityAnalysisList(LeanCapabilityAnalysis leanCapabilityAnalysis) {
+        return leanCapabilityAnalysisMapper.selectLeanCapabilityAnalysisList(leanCapabilityAnalysis);
+    }
+
+    /**
+     * 检查是否存在相同时间的数据
+     *
+     * @param leanCapabilityAnalysis 白坯布重量分析
+     * @return 结果
+     */
+    @Override
+    public boolean checkDuplicateDataTime(LeanCapabilityAnalysis leanCapabilityAnalysis) {
+        return leanCapabilityAnalysisMapper.checkDuplicateDataTime(leanCapabilityAnalysis) > 0;
+    }
+
+    /**
+     * 新增白坯布重量分析
+     *
+     * @param leanCapabilityAnalysis 白坯布重量分析
+     * @return 结果
+     */
+    @Override
+    public int insertLeanCapabilityAnalysis(LeanCapabilityAnalysis leanCapabilityAnalysis) {
+                leanCapabilityAnalysis.setCreateTime(DateUtils.getNowDate());
+            return leanCapabilityAnalysisMapper.insertLeanCapabilityAnalysis(leanCapabilityAnalysis);
+    }
+
+    /**
+     * 修改白坯布重量分析
+     *
+     * @param leanCapabilityAnalysis 白坯布重量分析
+     * @return 结果
+     */
+    @Override
+    public int updateLeanCapabilityAnalysis(LeanCapabilityAnalysis leanCapabilityAnalysis) {
+                leanCapabilityAnalysis.setUpdateTime(DateUtils.getNowDate());
+        return leanCapabilityAnalysisMapper.updateLeanCapabilityAnalysis(leanCapabilityAnalysis);
+    }
+
+    /**
+     * 批量删除白坯布重量分析
+     *
+     * @param bwIds 需要删除的白坯布重量分析主键
+     * @return 结果
+     */
+    @Override
+    public int deleteLeanCapabilityAnalysisByBwIds(Long[] bwIds) {
+        return leanCapabilityAnalysisMapper.deleteLeanCapabilityAnalysisByBwIds(bwIds);
+    }
+
+    /**
+     * 删除白坯布重量分析信息
+     *
+     * @param bwId 白坯布重量分析主键
+     * @return 结果
+     */
+    @Override
+    public int deleteLeanCapabilityAnalysisByBwId(Long bwId) {
+        return leanCapabilityAnalysisMapper.deleteLeanCapabilityAnalysisByBwId(bwId);
+    }
+}

+ 182 - 0
jjt-biz/src/main/resources/mapper/lean/LeanCapabilityAnalysisMapper.xml

@@ -0,0 +1,182 @@
+<?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.jjt.lean.mapper.LeanCapabilityAnalysisMapper">
+
+    <resultMap type="LeanCapabilityAnalysis" id="LeanCapabilityAnalysisResult">
+        <result property="bwId" column="BW_ID"/>
+        <result property="dataTime" column="DATA_TIME"/>
+        <result property="dataType" column="DATA_TYPE"/>
+        <result property="targetValue" column="TARGET_VALUE"/>
+        <result property="toleranceRange" column="TOLERANCE_RANGE"/>
+        <result property="toleranceValue" column="TOLERANCE_VALUE"/>
+        <result property="measuredValue" column="MEASURED_VALUE"/>
+        <result property="cpuValue" column="CPU_VALUE"/>
+        <result property="cplValue" column="CPL_VALUE"/>
+        <result property="cpkValue" column="CPK_VALUE"/>
+        <result property="stdDeviation" column="STD_DEVIATION"/>
+        <result property="meanValue" column="MEAN_VALUE"/>
+        <result property="maxValue" column="MAX_VALUE"/>
+        <result property="minValue" column="MIN_VALUE"/>
+        <result property="usl" column="USL"/>
+        <result property="lsl" column="LSL"/>
+        <result property="createBy" column="CREATE_BY"/>
+        <result property="createTime" column="CREATE_TIME"/>
+        <result property="updateBy" column="UPDATE_BY"/>
+        <result property="updateTime" column="UPDATE_TIME"/>
+        <result property="remark" column="REMARK"/>
+    </resultMap>
+
+    <sql id="selectLeanCapabilityAnalysisVo">
+        select BW_ID,
+               DATA_TIME,
+               DATA_TYPE,
+               TARGET_VALUE,
+               TOLERANCE_RANGE,
+               TOLERANCE_VALUE,
+               MEASURED_VALUE,
+               CPU_VALUE,
+               CPL_VALUE,
+               CPK_VALUE,
+               STD_DEVIATION,
+               MEAN_VALUE,
+               MAX_VALUE,
+               MIN_VALUE,
+               USL,
+               LSL,
+               CREATE_BY,
+               CREATE_TIME,
+               UPDATE_BY,
+               UPDATE_TIME,
+               REMARK
+        from LEAN_CAPABILITY_ANALYSIS
+    </sql>
+
+    <select id="selectLeanCapabilityAnalysisList" parameterType="LeanCapabilityAnalysis"
+            resultMap="LeanCapabilityAnalysisResult">
+        <include refid="selectLeanCapabilityAnalysisVo"/>
+        <where>
+            <if test="dataTime != null ">and DATA_TIME = #{dataTime}</if>
+            <if test="targetValue != null ">and TARGET_VALUE = #{targetValue}</if>
+            <if test="toleranceRange != null ">and TOLERANCE_RANGE = #{toleranceRange}</if>
+            <if test="toleranceValue != null ">and TOLERANCE_VALUE = #{toleranceValue}</if>
+            <if test="measuredValue != null  and measuredValue != ''">and MEASURED_VALUE = #{measuredValue}</if>
+            <if test="cpuValue != null ">and CPU_VALUE = #{cpuValue}</if>
+            <if test="cplValue != null ">and CPL_VALUE = #{cplValue}</if>
+            <if test="cpkValue != null ">and CPK_VALUE = #{cpkValue}</if>
+            <if test="stdDeviation != null ">and STD_DEVIATION = #{stdDeviation}</if>
+            <if test="meanValue != null  and meanValue != ''">and MEAN_VALUE = #{meanValue}</if>
+            <if test="maxValue != null  and maxValue != ''">and MAX_VALUE = #{maxValue}</if>
+            <if test="minValue != null  and minValue != ''">and MIN_VALUE = #{minValue}</if>
+            <if test="usl != null  and usl != ''">and USL = #{usl}</if>
+            <if test="lsl != null  and lsl != ''">and LSL = #{lsl}</if>
+            <if test="createBy != null  and createBy != ''">and CREATE_BY = #{createBy}</if>
+            <if test="createTime != null ">and CREATE_TIME = #{createTime}</if>
+            <if test="updateBy != null  and updateBy != ''">and UPDATE_BY = #{updateBy}</if>
+            <if test="updateTime != null ">and UPDATE_TIME = #{updateTime}</if>
+            <if test="remark != null  and remark != ''">and REMARK = #{remark}</if>
+        </where>
+        order by data_time
+    </select>
+    
+    <select id="checkDuplicateDataTime" parameterType="LeanCapabilityAnalysis" resultType="int">
+        select count(1) from LEAN_CAPABILITY_ANALYSIS
+        where DATA_TIME = #{dataTime}
+        <if test="bwId != null">and BW_ID != #{bwId}</if>
+    </select>
+
+    <select id="selectLeanCapabilityAnalysisByBwId" parameterType="Long" resultMap="LeanCapabilityAnalysisResult">
+        <include refid="selectLeanCapabilityAnalysisVo"/>
+        where BW_ID = #{bwId}
+    </select>
+
+    <insert id="insertLeanCapabilityAnalysis" parameterType="LeanCapabilityAnalysis" useGeneratedKeys="true"
+            keyProperty="bwId">
+        insert into LEAN_CAPABILITY_ANALYSIS
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="dataTime != null">DATA_TIME,</if>
+            <if test="dataType != null">DATA_TYPE,</if>
+            <if test="targetValue != null">TARGET_VALUE,</if>
+            <if test="toleranceRange != null">TOLERANCE_RANGE,</if>
+            <if test="toleranceValue != null">TOLERANCE_VALUE,</if>
+            <if test="measuredValue != null">MEASURED_VALUE,</if>
+            <if test="cpuValue != null">CPU_VALUE,</if>
+            <if test="cplValue != null">CPL_VALUE,</if>
+            <if test="cpkValue != null">CPK_VALUE,</if>
+            <if test="stdDeviation != null">STD_DEVIATION,</if>
+            <if test="meanValue != null">MEAN_VALUE,</if>
+            <if test="maxValue != null">MAX_VALUE,</if>
+            <if test="minValue != null">MIN_VALUE,</if>
+            <if test="usl != null">USL,</if>
+            <if test="lsl != null">LSL,</if>
+            <if test="createBy != null">CREATE_BY,</if>
+            <if test="createTime != null">CREATE_TIME,</if>
+            <if test="updateBy != null">UPDATE_BY,</if>
+            <if test="updateTime != null">UPDATE_TIME,</if>
+            <if test="remark != null">REMARK,</if>
+        </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="dataTime != null">#{dataTime},</if>
+            <if test="dataType != null">#{dataType},</if>
+            <if test="targetValue != null">#{targetValue},</if>
+            <if test="toleranceRange != null">#{toleranceRange},</if>
+            <if test="toleranceValue != null">#{toleranceValue},</if>
+            <if test="measuredValue != null">#{measuredValue},</if>
+            <if test="cpuValue != null">#{cpuValue},</if>
+            <if test="cplValue != null">#{cplValue},</if>
+            <if test="cpkValue != null">#{cpkValue},</if>
+            <if test="stdDeviation != null">#{stdDeviation},</if>
+            <if test="meanValue != null">#{meanValue},</if>
+            <if test="maxValue != null">#{maxValue},</if>
+            <if test="minValue != null">#{minValue},</if>
+            <if test="usl != null">#{usl},</if>
+            <if test="lsl != null">#{lsl},</if>
+            <if test="createBy != null">#{createBy},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="updateBy != null">#{updateBy},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+            <if test="remark != null">#{remark},</if>
+        </trim>
+    </insert>
+
+    <update id="updateLeanCapabilityAnalysis" parameterType="LeanCapabilityAnalysis">
+        update LEAN_CAPABILITY_ANALYSIS
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="dataTime != null">DATA_TIME = #{dataTime},</if>
+            <if test="dataType != null">DATA_TYPE = #{dataType},</if>
+            <if test="targetValue != null">TARGET_VALUE = #{targetValue},</if>
+            <if test="toleranceRange != null">TOLERANCE_RANGE = #{toleranceRange},</if>
+            <if test="toleranceValue != null">TOLERANCE_VALUE = #{toleranceValue},</if>
+            <if test="measuredValue != null">MEASURED_VALUE = #{measuredValue},</if>
+            <if test="cpuValue != null">CPU_VALUE = #{cpuValue},</if>
+            <if test="cplValue != null">CPL_VALUE = #{cplValue},</if>
+            <if test="cpkValue != null">CPK_VALUE = #{cpkValue},</if>
+            <if test="stdDeviation != null">STD_DEVIATION = #{stdDeviation},</if>
+            <if test="meanValue != null">MEAN_VALUE = #{meanValue},</if>
+            <if test="maxValue != null">MAX_VALUE = #{maxValue},</if>
+            <if test="minValue != null">MIN_VALUE = #{minValue},</if>
+            <if test="usl != null">USL = #{usl},</if>
+            <if test="lsl != null">LSL = #{lsl},</if>
+            <if test="createBy != null">CREATE_BY = #{createBy},</if>
+            <if test="createTime != null">CREATE_TIME = #{createTime},</if>
+            <if test="updateBy != null">UPDATE_BY = #{updateBy},</if>
+            <if test="updateTime != null">UPDATE_TIME = #{updateTime},</if>
+            <if test="remark != null">REMARK = #{remark},</if>
+        </trim>
+        where BW_ID = #{bwId}
+    </update>
+
+    <delete id="deleteLeanCapabilityAnalysisByBwId" parameterType="Long">
+        delete
+        from LEAN_CAPABILITY_ANALYSIS
+        where BW_ID = #{bwId}
+    </delete>
+
+    <delete id="deleteLeanCapabilityAnalysisByBwIds" parameterType="String">
+        delete from LEAN_CAPABILITY_ANALYSIS where BW_ID in
+        <foreach item="bwId" collection="array" open="(" separator="," close=")">
+            #{bwId}
+        </foreach>
+    </delete>
+</mapper>