selectPdiSetupList(PdiSetups pdiSetup);
+
+ /**
+ * 新增生产计划的参数详情
+ *
+ * @param pdiSetup 生产计划的参数详情
+ * @return 结果
+ */
+ public int insertPdiSetup(PdiSetups pdiSetup);
+
+ /**
+ * 修改生产计划的参数详情
+ *
+ * @param pdiSetup 生产计划的参数详情
+ * @return 结果
+ */
+ public int updatePdiSetup(PdiSetups pdiSetup);
+
+ /**
+ * 删除生产计划的参数详情
+ *
+ * @param id 生产计划的参数详情主键
+ * @return 结果
+ */
+ public int deletePdiSetupById(Long id);
+
+ /**
+ * 批量删除生产计划的参数详情
+ *
+ * @param ids 需要删除的数据主键集合
+ * @return 结果
+ */
+ public int deletePdiSetupByIds(Long[] ids);
+}
diff --git a/business/src/main/java/com/fizz/business/mapper/PdoExcoilMapper.java b/business/src/main/java/com/fizz/business/mapper/PdoExcoilMapper.java
new file mode 100644
index 0000000..79623d3
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/mapper/PdoExcoilMapper.java
@@ -0,0 +1,18 @@
+package com.fizz.business.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.fizz.business.domain.PdoExcoil;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ *
+ * cs机组产出实绩表 Mapper 接口
+ *
+ *
+ * @author baomidou
+ * @since 2023-05-17
+ */
+@Mapper
+public interface PdoExcoilMapper extends BaseMapper {
+
+}
diff --git a/business/src/main/java/com/fizz/business/mapper/PdoStripvalueMapper.java b/business/src/main/java/com/fizz/business/mapper/PdoStripvalueMapper.java
new file mode 100644
index 0000000..d3ca1c9
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/mapper/PdoStripvalueMapper.java
@@ -0,0 +1,18 @@
+package com.fizz.business.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.fizz.business.domain.PdoStripvalue;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ *
+ * 剪切带钢段平均值 Mapper 接口
+ *
+ *
+ * @author baomidou
+ * @since 2023-05-17
+ */
+@Mapper
+public interface PdoStripvalueMapper extends BaseMapper {
+
+}
diff --git a/business/src/main/java/com/fizz/business/mapper/PlantConfigMapper.java b/business/src/main/java/com/fizz/business/mapper/PlantConfigMapper.java
new file mode 100644
index 0000000..a99e0da
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/mapper/PlantConfigMapper.java
@@ -0,0 +1,11 @@
+package com.fizz.business.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.fizz.business.domain.PlantConfig;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.Map;
+
+@Mapper
+public interface PlantConfigMapper extends BaseMapper {
+}
diff --git a/business/src/main/java/com/fizz/business/mapper/ProMatmapMapper.java b/business/src/main/java/com/fizz/business/mapper/ProMatmapMapper.java
new file mode 100644
index 0000000..831da09
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/mapper/ProMatmapMapper.java
@@ -0,0 +1,20 @@
+package com.fizz.business.mapper;
+
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.fizz.business.domain.ProMatmap;
+import com.fizz.business.dto.MatmapDTO;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+@Mapper
+public interface ProMatmapMapper extends BaseMapper {
+
+ int updateMatidByDisplayName(String matid);
+
+ void flushMatmap(@Param("list") List list);
+
+
+}
\ No newline at end of file
diff --git a/business/src/main/java/com/fizz/business/mapper/ProStoppageMapper.java b/business/src/main/java/com/fizz/business/mapper/ProStoppageMapper.java
new file mode 100644
index 0000000..212a79e
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/mapper/ProStoppageMapper.java
@@ -0,0 +1,8 @@
+package com.fizz.business.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.fizz.business.domain.ProStoppage;
+
+public interface ProStoppageMapper extends BaseMapper {
+}
+
diff --git a/business/src/main/java/com/fizz/business/mapper/RollChangeCycleMapper.java b/business/src/main/java/com/fizz/business/mapper/RollChangeCycleMapper.java
new file mode 100644
index 0000000..e0e43e6
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/mapper/RollChangeCycleMapper.java
@@ -0,0 +1,9 @@
+package com.fizz.business.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.fizz.business.domain.RollChangeCycle;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface RollChangeCycleMapper extends BaseMapper {
+}
diff --git a/business/src/main/java/com/fizz/business/mapper/RollDataMapper.java b/business/src/main/java/com/fizz/business/mapper/RollDataMapper.java
new file mode 100644
index 0000000..97fed3f
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/mapper/RollDataMapper.java
@@ -0,0 +1,9 @@
+package com.fizz.business.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.fizz.business.domain.RollData;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface RollDataMapper extends BaseMapper {
+}
diff --git a/business/src/main/java/com/fizz/business/mapper/RollHistoryMapper.java b/business/src/main/java/com/fizz/business/mapper/RollHistoryMapper.java
new file mode 100644
index 0000000..e86ce15
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/mapper/RollHistoryMapper.java
@@ -0,0 +1,15 @@
+package com.fizz.business.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.fizz.business.domain.RollHistory;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+@Mapper
+public interface RollHistoryMapper extends BaseMapper {
+ List getChangeIdList();
+
+ List getRollIdList();
+
+}
diff --git a/business/src/main/java/com/fizz/business/mapper/SegmentMapper.java b/business/src/main/java/com/fizz/business/mapper/SegmentMapper.java
new file mode 100644
index 0000000..f18f225
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/mapper/SegmentMapper.java
@@ -0,0 +1,31 @@
+package com.fizz.business.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.fizz.business.domain.PdoStripvalue;
+import com.fizz.business.domain.Segment;
+import com.fizz.business.dto.SegmentDTO;
+import com.fizz.business.vo.SegmentParamVO;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ *
+ * 各机张力,电流等架跟踪表 Mapper 接口
+ *
+ *
+ * @author baomidou
+ * @since 2023-05-17
+ */
+@Mapper
+public interface SegmentMapper extends BaseMapper {
+
+ PdoStripvalue getStripValue(@Param("entryMatId") String entryMatId, @Param("startPos") double startPos, @Param("endPos") double endPos);
+
+ Segment getLatestRecord();
+
+ List queryParamByEnCoilId(@Param("enCoilID") String enCoilID,
+ @Param("paramField") String paramField);
+
+}
diff --git a/business/src/main/java/com/fizz/business/mapper/SegmentTotalMapper.java b/business/src/main/java/com/fizz/business/mapper/SegmentTotalMapper.java
new file mode 100644
index 0000000..cc74d2c
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/mapper/SegmentTotalMapper.java
@@ -0,0 +1,18 @@
+package com.fizz.business.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.fizz.business.domain.SegmentTotal;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ *
+ * 各机张力,电流等架跟踪表 Mapper 接口
+ *
+ *
+ * @author baomidou
+ * @since 2023-10-26
+ */
+@Mapper
+public interface SegmentTotalMapper extends BaseMapper {
+ SegmentTotal getLatestRecord();
+}
diff --git a/business/src/main/java/com/fizz/business/mapper/SetupFurTempMapper.java b/business/src/main/java/com/fizz/business/mapper/SetupFurTempMapper.java
new file mode 100644
index 0000000..6fd7301
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/mapper/SetupFurTempMapper.java
@@ -0,0 +1,61 @@
+package com.fizz.business.mapper;
+
+import java.util.List;
+import com.fizz.business.domain.SetupFurTemp;
+
+/**
+ * 炉火段工艺参数Mapper接口
+ *
+ * @author ruoyi
+ * @date 2025-09-29
+ */
+public interface SetupFurTempMapper
+{
+ /**
+ * 查询炉火段工艺参数
+ *
+ * @param steelGrade 炉火段工艺参数主键
+ * @return 炉火段工艺参数
+ */
+ public SetupFurTemp selectSetupFurTempBySteelGrade(String steelGrade);
+
+ /**
+ * 查询炉火段工艺参数列表
+ *
+ * @param setupFurTemp 炉火段工艺参数
+ * @return 炉火段工艺参数集合
+ */
+ public List selectSetupFurTempList(SetupFurTemp setupFurTemp);
+
+ /**
+ * 新增炉火段工艺参数
+ *
+ * @param setupFurTemp 炉火段工艺参数
+ * @return 结果
+ */
+ public int insertSetupFurTemp(SetupFurTemp setupFurTemp);
+
+ /**
+ * 修改炉火段工艺参数
+ *
+ * @param setupFurTemp 炉火段工艺参数
+ * @return 结果
+ */
+ public int updateSetupFurTemp(SetupFurTemp setupFurTemp);
+
+ /**
+ * 删除炉火段工艺参数
+ *
+ * @param steelGrade 炉火段工艺参数主键
+ * @return 结果
+ */
+ public int deleteSetupFurTempBySteelGrade(String steelGrade);
+
+ /**
+ * 批量删除炉火段工艺参数
+ *
+ * @param steelGrades 需要删除的数据主键集合
+ * @return 结果
+ */
+ public int deleteSetupFurTempBySteelGrades(String[] steelGrades);
+}
diff --git a/business/src/main/java/com/fizz/business/mapper/SetupTensionMapper.java b/business/src/main/java/com/fizz/business/mapper/SetupTensionMapper.java
new file mode 100644
index 0000000..e288c12
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/mapper/SetupTensionMapper.java
@@ -0,0 +1,62 @@
+package com.fizz.business.mapper;
+
+import java.util.List;
+import com.fizz.business.domain.SetupTension;
+import org.apache.ibatis.annotations.Param;
+
+/**
+ * 全线张力Mapper接口
+ *
+ * @author ruoyi
+ * @date 2025-09-26
+ */
+public interface SetupTensionMapper
+{
+ /**
+ * 查询全线张力
+ *
+ * @param thick 全线张力主键
+ * @return 全线张力
+ */
+ public SetupTension selectSetupTensionByThick(@Param("thick") Long thick,@Param("yieldStren") Long yieldStren);
+
+ /**
+ * 查询全线张力列表
+ *
+ * @param setupTension 全线张力
+ * @return 全线张力集合
+ */
+ public List selectSetupTensionList(SetupTension setupTension);
+
+ /**
+ * 新增全线张力
+ *
+ * @param setupTension 全线张力
+ * @return 结果
+ */
+ public int insertSetupTension(SetupTension setupTension);
+
+ /**
+ * 修改全线张力
+ *
+ * @param setupTension 全线张力
+ * @return 结果
+ */
+ public int updateSetupTension(SetupTension setupTension);
+
+ /**
+ * 删除全线张力
+ *
+ * @param thick 全线张力主键
+ * @return 结果
+ */
+ public int deleteSetupTensionByThick(Long thick);
+
+ /**
+ * 批量删除全线张力
+ *
+ * @param thicks 需要删除的数据主键集合
+ * @return 结果
+ */
+ public int deleteSetupTensionByThicks(@Param("thicks") Long[] thicks,@Param("yieldStrens") Long[] yieldStrens);
+}
diff --git a/business/src/main/java/com/fizz/business/mapper/SetupTlMapper.java b/business/src/main/java/com/fizz/business/mapper/SetupTlMapper.java
new file mode 100644
index 0000000..c251d50
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/mapper/SetupTlMapper.java
@@ -0,0 +1,62 @@
+package com.fizz.business.mapper;
+
+import java.util.List;
+import com.fizz.business.domain.SetupTl;
+import org.apache.ibatis.annotations.Param;
+
+/**
+ * 拉矫机参数Mapper接口
+ *
+ * @author ruoyi
+ * @date 2025-09-26
+ */
+public interface SetupTlMapper
+{
+ /**
+ * 查询拉矫机参数
+ *
+ * @param steelGrade 拉矫机参数主键
+ * @return 拉矫机参数
+ */
+ public SetupTl selectSetupTlBySteelGrade(@Param("steelGrade") String steelGrade,@Param("yieldStren") Long yieldStren,@Param("thick") Long thick);
+
+ /**
+ * 查询拉矫机参数列表
+ *
+ * @param setupTl 拉矫机参数
+ * @return 拉矫机参数集合
+ */
+ public List selectSetupTlList(SetupTl setupTl);
+
+ /**
+ * 新增拉矫机参数
+ *
+ * @param setupTl 拉矫机参数
+ * @return 结果
+ */
+ public int insertSetupTl(SetupTl setupTl);
+
+ /**
+ * 修改拉矫机参数
+ *
+ * @param setupTl 拉矫机参数
+ * @return 结果
+ */
+ public int updateSetupTl(SetupTl setupTl);
+
+ /**
+ * 删除拉矫机参数
+ *
+ * @param steelGrade 拉矫机参数主键
+ * @return 结果
+ */
+ public int deleteSetupTlBySteelGrade(String steelGrade);
+
+ /**
+ * 批量删除拉矫机参数
+ *
+ * @param steelGrades 需要删除的数据主键集合
+ * @return 结果
+ */
+ public int deleteSetupTlBySteelGrades(@Param("steelGrades") String[] steelGrades,@Param("yieldStrens") Long[] yieldStrens,@Param("thicks") Long[] thicks);
+}
diff --git a/business/src/main/java/com/fizz/business/mapper/SetupTmBendforceMapper.java b/business/src/main/java/com/fizz/business/mapper/SetupTmBendforceMapper.java
new file mode 100644
index 0000000..f4c4074
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/mapper/SetupTmBendforceMapper.java
@@ -0,0 +1,62 @@
+package com.fizz.business.mapper;
+
+import java.util.List;
+import com.fizz.business.domain.SetupTmBendforce;
+import org.apache.ibatis.annotations.Param;
+
+/**
+ * 光整机弯辊力Mapper接口
+ *
+ * @author Joshi
+ * @date 2025-09-26
+ */
+public interface SetupTmBendforceMapper
+{
+ /**
+ * 查询光整机弯辊力
+ *
+ * @param width 光整机弯辊力主键
+ * @return 光整机弯辊力
+ */
+ public SetupTmBendforce selectSetupTmBendforceByWidth(@Param("width") Long width,@Param("rollForce") Long rollForce);
+
+ /**
+ * 查询光整机弯辊力列表
+ *
+ * @param setupTmBendforce 光整机弯辊力
+ * @return 光整机弯辊力集合
+ */
+ public List selectSetupTmBendforceList(SetupTmBendforce setupTmBendforce);
+
+ /**
+ * 新增光整机弯辊力
+ *
+ * @param setupTmBendforce 光整机弯辊力
+ * @return 结果
+ */
+ public int insertSetupTmBendforce(SetupTmBendforce setupTmBendforce);
+
+ /**
+ * 修改光整机弯辊力
+ *
+ * @param setupTmBendforce 光整机弯辊力
+ * @return 结果
+ */
+ public int updateSetupTmBendforce(SetupTmBendforce setupTmBendforce);
+
+ /**
+ * 删除光整机弯辊力
+ *
+ * @param width 光整机弯辊力主键
+ * @return 结果
+ */
+ public int deleteSetupTmBendforceByWidth(Long width);
+
+ /**
+ * 批量删除光整机弯辊力
+ *
+ * @param widths 需要删除的数据主键集合
+ * @return 结果
+ */
+ public int deleteSetupTmBendforceByWidths(@Param("widths") Long[] widths,@Param("rollForces") Long[] rollForces);
+}
diff --git a/business/src/main/java/com/fizz/business/mapper/SetupTmMeshMapper.java b/business/src/main/java/com/fizz/business/mapper/SetupTmMeshMapper.java
new file mode 100644
index 0000000..f9a5f2a
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/mapper/SetupTmMeshMapper.java
@@ -0,0 +1,64 @@
+package com.fizz.business.mapper;
+
+import java.util.List;
+import com.fizz.business.domain.SetupTmMesh;
+import org.apache.ibatis.annotations.Param;
+
+/**
+ * 光整机插入量Mapper接口
+ *
+ * @author Joshi
+ * @date 2025-09-26
+ */
+public interface SetupTmMeshMapper
+{
+ /**
+ * 查询光整机插入量
+ *
+ * @param steelGrade 光整机插入量主键
+ * @return 光整机插入量
+ */
+ public SetupTmMesh selectSetupTmMeshBySteelGrade(@Param("steelGrade") String steelGrade,@Param("yieldStren") Long yieldStren,@Param("thick") Long thick);
+
+ /**
+ * 查询光整机插入量列表
+ *
+ * @param setupTmMesh 光整机插入量
+ * @return 光整机插入量集合
+ */
+ public List selectSetupTmMeshList(SetupTmMesh setupTmMesh);
+
+ /**
+ * 新增光整机插入量
+ *
+ * @param setupTmMesh 光整机插入量
+ * @return 结果
+ */
+ public int insertSetupTmMesh(SetupTmMesh setupTmMesh);
+
+ /**
+ * 修改光整机插入量
+ *
+ * @param setupTmMesh 光整机插入量
+ * @return 结果
+ */
+ public int updateSetupTmMesh(SetupTmMesh setupTmMesh);
+
+ /**
+ * 删除光整机插入量
+ *
+ * @param steelGrade 光整机插入量主键
+ * @return 结果
+ */
+ public int deleteSetupTmMeshBySteelGrade(String steelGrade);
+
+ /**
+ * 批量删除光整机插入量
+ *
+ * @param steelGrades 需要删除的数据主键集合
+ * @return 结果
+ */
+ public int deleteSetupTmMeshBySteelGrades(@Param("steelGrades") String[] steelGrades,
+ @Param("yieldStrens") Long[] yieldStrens,
+ @Param("thicks") Long[] thicks);
+}
diff --git a/business/src/main/java/com/fizz/business/mapper/SetupTmRollforceMapper.java b/business/src/main/java/com/fizz/business/mapper/SetupTmRollforceMapper.java
new file mode 100644
index 0000000..f6947d7
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/mapper/SetupTmRollforceMapper.java
@@ -0,0 +1,65 @@
+package com.fizz.business.mapper;
+
+import java.util.List;
+import com.fizz.business.domain.SetupTmRollforce;
+import org.apache.ibatis.annotations.Param;
+
+/**
+ * 光整机轧制力Mapper接口
+ *
+ * @author Joshi
+ * @date 2025-09-26
+ */
+public interface SetupTmRollforceMapper
+{
+ /**
+ * 查询光整机轧制力
+ *
+ * @param steelGrade 光整机轧制力主键
+ * @return 光整机轧制力
+ */
+ public SetupTmRollforce selectSetupTmRollforceBySteelGrade(@Param("steelGrade") String steelGrade,@Param("yieldStren") Long yieldStren,@Param("thick") Long thick,@Param("elong") Long elong);
+
+ /**
+ * 查询光整机轧制力列表
+ *
+ * @param setupTmRollforce 光整机轧制力
+ * @return 光整机轧制力集合
+ */
+ public List selectSetupTmRollforceList(SetupTmRollforce setupTmRollforce);
+
+ /**
+ * 新增光整机轧制力
+ *
+ * @param setupTmRollforce 光整机轧制力
+ * @return 结果
+ */
+ public int insertSetupTmRollforce(SetupTmRollforce setupTmRollforce);
+
+ /**
+ * 修改光整机轧制力
+ *
+ * @param setupTmRollforce 光整机轧制力
+ * @return 结果
+ */
+ public int updateSetupTmRollforce(SetupTmRollforce setupTmRollforce);
+
+ /**
+ * 删除光整机轧制力
+ *
+ * @param steelGrade 光整机轧制力主键
+ * @return 结果
+ */
+ public int deleteSetupTmRollforceBySteelGrade(String steelGrade);
+
+ /**
+ * 批量删除光整机轧制力
+ *
+ * @param steelGrades 需要删除的数据主键集合
+ * @return 结果
+ */
+ public int deleteSetupTmRollforceBySteelGrades(@Param("steelGrades") String[] steelGrades,
+ @Param("thicks") Long[] thicks,
+ @Param("yieldStrens") Long[] yieldStrens,
+ @Param("elongs") Long[] elongs);
+}
diff --git a/business/src/main/java/com/fizz/business/mapper/ShiftHistoryMapper.java b/business/src/main/java/com/fizz/business/mapper/ShiftHistoryMapper.java
new file mode 100644
index 0000000..5f7d6fb
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/mapper/ShiftHistoryMapper.java
@@ -0,0 +1,9 @@
+package com.fizz.business.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.fizz.business.domain.ShiftHistory;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface ShiftHistoryMapper extends BaseMapper {
+}
diff --git a/business/src/main/java/com/fizz/business/mapper/SteelGradeInfoMapper.java b/business/src/main/java/com/fizz/business/mapper/SteelGradeInfoMapper.java
new file mode 100644
index 0000000..1bf6504
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/mapper/SteelGradeInfoMapper.java
@@ -0,0 +1,11 @@
+package com.fizz.business.mapper;
+
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.fizz.business.domain.StdAlloy;
+import com.fizz.business.domain.SteelGradeInfo;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface SteelGradeInfoMapper extends BaseMapper {
+}
\ No newline at end of file
diff --git a/business/src/main/java/com/fizz/business/scheduled/BaseSchedule.java b/business/src/main/java/com/fizz/business/scheduled/BaseSchedule.java
new file mode 100644
index 0000000..171ef04
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/scheduled/BaseSchedule.java
@@ -0,0 +1,74 @@
+package com.fizz.business.scheduled;
+
+import com.fizz.business.utils.RedisLockUtil;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.scheduling.annotation.Async;
+import org.springframework.scheduling.annotation.EnableScheduling;
+import org.springframework.stereotype.Component;
+
+import java.util.function.Consumer;
+
+@Slf4j
+@Async("threadPoolTaskExecutor")
+@Component
+@EnableScheduling
+public abstract class BaseSchedule {
+
+ /**
+ * 默认key过期时间 1800秒
+ */
+ private static final int DEFAULT_EXPIRE_SECONDS = 1800;
+
+ protected void execute(String taskName, int cacheSeconds, String cacheKey, Runnable func) {
+ // 执行完2分钟 删除键值
+ int delayedSeconds = Math.min(120, cacheSeconds / 10);
+ execute(taskName, cacheSeconds, delayedSeconds, cacheKey, k -> func.run());
+ }
+
+ /**
+ * 定时任务执行 多服务防止同时执行
+ *
+ * @param taskName: 任务名称
+ * @param cacheSeconds: <= 0时默认时间
+ * @param delayedSeconds: 任务执行完延时删除key; <0时默认 cacheSeconds/10
+ * @param cacheKey:
+ * @param func: 执行的任务 key: 处理后的cacheKey
+ */
+ protected void execute(String taskName, int cacheSeconds, int delayedSeconds, String cacheKey, Consumer func) {
+ String threadName = Thread.currentThread().getName();
+ cacheKey = "scheduling:" + cacheKey;
+ if (cacheSeconds <= 0) {
+ cacheSeconds = DEFAULT_EXPIRE_SECONDS;
+ }
+ if (delayedSeconds < 0) {
+ delayedSeconds = cacheSeconds / 10;
+ }
+ // 不存在键值时执行
+ String value = "1";
+ boolean success = RedisLockUtil.setIfAbsent(cacheKey, value, cacheSeconds);
+ if (!success) {
+ log.debug("定时任务: {}, 取消执行. {}", taskName, threadName);
+ return;
+ }
+ log.debug("定时任务: {}, 开始执行. {}", taskName, threadName);
+ func.accept(cacheKey);
+ // 执行完后 延时时间内不可重复执行
+ if (delayedSeconds == 0) {
+ RedisLockUtil.delLock(cacheKey, value);
+ } else {
+ RedisLockUtil.setIfPresent(cacheKey, value, delayedSeconds);
+ }
+ log.debug("定时任务: {}, 执行结束. {}", taskName, threadName);
+ }
+
+ public void actionCatchException(Runnable func) {
+ String threadName = Thread.currentThread().getName();
+ try {
+ func.run();
+ } catch (Exception e) {
+ log.error("定时任务执行出错 " + threadName, e);
+ }
+ }
+
+
+}
diff --git a/business/src/main/java/com/fizz/business/scheduled/LogDataCleanSchedule.java b/business/src/main/java/com/fizz/business/scheduled/LogDataCleanSchedule.java
new file mode 100644
index 0000000..669b250
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/scheduled/LogDataCleanSchedule.java
@@ -0,0 +1,55 @@
+package com.fizz.business.scheduled;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.fizz.business.domain.LogData;
+import com.fizz.business.service.LogDataService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+
+import java.time.LocalDateTime;
+
+/**
+ * 日志数据清理定时任务
+ * 每天凌晨2点执行,删除六个月前的日志数据
+ */
+@Slf4j
+@Component
+public class LogDataCleanSchedule extends BaseSchedule {
+
+ @Autowired
+ private LogDataService logDataService;
+
+ /**
+ * 每天凌晨2点执行日志清理任务
+ * cron表达式: 秒 分 时 日 月 周
+ */
+ @Scheduled(cron = "0 0 2 * * ?")
+ public void cleanOldLogData() {
+ String taskName = "日志数据清理任务";
+ String cacheKey = "log_data_clean_task";
+
+ execute(taskName, 3600, cacheKey, () -> {
+ actionCatchException(() -> {
+ // 计算六个月前的时间
+ LocalDateTime sixMonthsAgo = LocalDateTime.now().minusMonths(6);
+
+ log.info("开始清理六个月前的日志数据,截止时间: {}", sixMonthsAgo);
+
+ // 删除六个月前的日志数据
+ LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>();
+ queryWrapper.lt(LogData::getTimestamp, sixMonthsAgo);
+
+ Long deletedCount = logDataService.count(queryWrapper);
+ boolean result = logDataService.remove(queryWrapper);
+
+ if (result) {
+ log.info("日志数据清理完成,共删除 {} 条记录", deletedCount);
+ } else {
+ log.warn("日志数据清理失败");
+ }
+ });
+ });
+ }
+}
diff --git a/business/src/main/java/com/fizz/business/service/CrmPdiPlanService.java b/business/src/main/java/com/fizz/business/service/CrmPdiPlanService.java
new file mode 100644
index 0000000..a929d9f
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/service/CrmPdiPlanService.java
@@ -0,0 +1,32 @@
+package com.fizz.business.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.fizz.business.domain.CrmPdiPlan;
+import com.fizz.business.form.CalcPdiPlanForm;
+import com.fizz.business.form.ChangePlanStatusForm;
+import com.fizz.business.form.CrmPdiPlanForm;
+import com.fizz.business.form.PlanQueryForm;
+import com.fizz.business.vo.CrmPdiPlanVO;
+import com.fizz.business.vo.PdiPlanSetupInfoVO;
+
+import java.util.List;
+
+public interface CrmPdiPlanService extends IService {
+
+ CrmPdiPlanVO getByCoilIdAndOperId(String coilid);
+
+ boolean addCrmPdiPlan(CrmPdiPlan crmPdiPlan);
+
+ boolean updateCrmPdiPlan(CrmPdiPlan crmPdiPlan);
+
+ boolean deleteCrmPdiPlan(List coilid);
+
+ List listAll(PlanQueryForm form);
+
+ /**
+ * 获取未生产的第一个钢卷(按顺序号或创建时间最早)
+ */
+ CrmPdiPlan getFirstUnProducedCoil();
+
+ void changeStatus(ChangePlanStatusForm build);
+}
diff --git a/business/src/main/java/com/fizz/business/service/CrmPdoExcoilService.java b/business/src/main/java/com/fizz/business/service/CrmPdoExcoilService.java
new file mode 100644
index 0000000..12797b5
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/service/CrmPdoExcoilService.java
@@ -0,0 +1,34 @@
+package com.fizz.business.service;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.fizz.business.domain.CrmPdoExcoil;
+import com.fizz.business.domain.PdoExcoil;
+import com.fizz.business.form.CrmPdoExcoilForm;
+import com.fizz.business.vo.ReportDetailVO;
+import com.fizz.business.vo.ReportSummaryVO;
+
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import java.util.List;
+
+public interface CrmPdoExcoilService extends IService {
+ CrmPdoExcoil getByExcoilId(String excoilid);
+
+ boolean addCrmPdoExcoil(CrmPdoExcoil crmPdoExcoil);
+
+ boolean updateCrmPdoExcoil(CrmPdoExcoil crmPdoExcoil);
+
+ boolean deleteCrmPdoExcoil(String excoilid, String planId);
+
+ List listAll(CrmPdoExcoilForm form);
+
+ Long getNumber(String matId,String planId,Integer subNumber);
+
+ ReportSummaryVO getReportSummary(String groupNo, String shiftNo, LocalDateTime startTime, LocalDateTime endTime);
+
+ List getReportDetails(String groupNo, String shiftNo, LocalDateTime startTime, LocalDateTime endTime);
+
+ void updateExitCoilActualWeight(String exitMatId, BigDecimal weight);
+}
+
diff --git a/business/src/main/java/com/fizz/business/service/IPdiSetupService.java b/business/src/main/java/com/fizz/business/service/IPdiSetupService.java
new file mode 100644
index 0000000..e575a77
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/service/IPdiSetupService.java
@@ -0,0 +1,65 @@
+package com.fizz.business.service;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.fizz.business.domain.PdiSetups;
+import com.fizz.business.domain.ProStoppage;
+import com.fizz.business.domain.msg.PdiSetup;
+
+/**
+ * 生产计划的参数详情Service接口
+ *
+ * @author Joshi
+ * @date 2025-09-25
+ */
+public interface IPdiSetupService extends IService
+{
+ /**
+ * 查询生产计划的参数详情
+ *
+ * @param id 生产计划的参数详情主键
+ * @return 生产计划的参数详情
+ */
+ public PdiSetups selectPdiSetupByid(Long id);
+
+ /**
+ * 查询生产计划的参数详情列表
+ *
+ * @param pdiSetup 生产计划的参数详情
+ * @return 生产计划的参数详情集合
+ */
+ public List selectPdiSetupList(PdiSetups pdiSetup);
+
+ /**
+ * 新增生产计划的参数详情
+ *
+ * @param pdiSetup 生产计划的参数详情
+ * @return 结果
+ */
+ public Boolean insertPdiSetup(PdiSetups pdiSetup);
+
+ /**
+ * 修改生产计划的参数详情
+ *
+ * @param pdiSetup 生产计划的参数详情
+ * @return 结果
+ */
+ public Boolean updatePdiSetup(PdiSetups pdiSetup);
+
+ /**
+ * 批量删除生产计划的参数详情
+ *
+ * @param ids 需要删除的生产计划的参数详情主键集合
+ * @return 结果
+ */
+ public Boolean deletePdiSetupByids(Long[] ids);
+
+ /**
+ * 删除生产计划的参数详情信息
+ *
+ * @param id 生产计划的参数详情主键
+ * @return 结果
+ */
+ public Boolean deletePdiSetupByid(Long id);
+}
diff --git a/business/src/main/java/com/fizz/business/service/ISetupFurTempService.java b/business/src/main/java/com/fizz/business/service/ISetupFurTempService.java
new file mode 100644
index 0000000..56b43a6
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/service/ISetupFurTempService.java
@@ -0,0 +1,61 @@
+package com.fizz.business.service;
+
+import java.util.List;
+import com.fizz.business.domain.SetupFurTemp;
+
+/**
+ * 炉火段工艺参数Service接口
+ *
+ * @author ruoyi
+ * @date 2025-09-29
+ */
+public interface ISetupFurTempService
+{
+ /**
+ * 查询炉火段工艺参数
+ *
+ * @param steelGrade 炉火段工艺参数主键
+ * @return 炉火段工艺参数
+ */
+ public SetupFurTemp selectSetupFurTempBySteelGrade(String steelGrade);
+
+ /**
+ * 查询炉火段工艺参数列表
+ *
+ * @param setupFurTemp 炉火段工艺参数
+ * @return 炉火段工艺参数集合
+ */
+ public List selectSetupFurTempList(SetupFurTemp setupFurTemp);
+
+ /**
+ * 新增炉火段工艺参数
+ *
+ * @param setupFurTemp 炉火段工艺参数
+ * @return 结果
+ */
+ public int insertSetupFurTemp(SetupFurTemp setupFurTemp);
+
+ /**
+ * 修改炉火段工艺参数
+ *
+ * @param setupFurTemp 炉火段工艺参数
+ * @return 结果
+ */
+ public int updateSetupFurTemp(SetupFurTemp setupFurTemp);
+
+ /**
+ * 批量删除炉火段工艺参数
+ *
+ * @param steelGrades 需要删除的炉火段工艺参数主键集合
+ * @return 结果
+ */
+ public int deleteSetupFurTempBySteelGrades(String[] steelGrades);
+
+ /**
+ * 删除炉火段工艺参数信息
+ *
+ * @param steelGrade 炉火段工艺参数主键
+ * @return 结果
+ */
+ public int deleteSetupFurTempBySteelGrade(String steelGrade);
+}
diff --git a/business/src/main/java/com/fizz/business/service/ISetupTensionService.java b/business/src/main/java/com/fizz/business/service/ISetupTensionService.java
new file mode 100644
index 0000000..7dad000
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/service/ISetupTensionService.java
@@ -0,0 +1,61 @@
+package com.fizz.business.service;
+
+import java.util.List;
+import com.fizz.business.domain.SetupTension;
+
+/**
+ * 全线张力Service接口
+ *
+ * @author ruoyi
+ * @date 2025-09-26
+ */
+public interface ISetupTensionService
+{
+ /**
+ * 查询全线张力
+ *
+ * @param thick 全线张力主键
+ * @return 全线张力
+ */
+ public SetupTension selectSetupTensionByThick(Long thick,Long yieldStren);
+
+ /**
+ * 查询全线张力列表
+ *
+ * @param setupTension 全线张力
+ * @return 全线张力集合
+ */
+ public List selectSetupTensionList(SetupTension setupTension);
+
+ /**
+ * 新增全线张力
+ *
+ * @param setupTension 全线张力
+ * @return 结果
+ */
+ public int insertSetupTension(SetupTension setupTension);
+
+ /**
+ * 修改全线张力
+ *
+ * @param setupTension 全线张力
+ * @return 结果
+ */
+ public int updateSetupTension(SetupTension setupTension);
+
+ /**
+ * 批量删除全线张力
+ *
+ * @param thicks 需要删除的全线张力主键集合
+ * @return 结果
+ */
+ public int deleteSetupTensionByThicks(Long[] thicks,Long[] yieldStrens );
+
+ /**
+ * 删除全线张力信息
+ *
+ * @param thick 全线张力主键
+ * @return 结果
+ */
+ public int deleteSetupTensionByThick(Long thick);
+}
diff --git a/business/src/main/java/com/fizz/business/service/ISetupTlService.java b/business/src/main/java/com/fizz/business/service/ISetupTlService.java
new file mode 100644
index 0000000..301a4a3
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/service/ISetupTlService.java
@@ -0,0 +1,61 @@
+package com.fizz.business.service;
+
+import java.util.List;
+import com.fizz.business.domain.SetupTl;
+
+/**
+ * 拉矫机参数Service接口
+ *
+ * @author ruoyi
+ * @date 2025-09-26
+ */
+public interface ISetupTlService
+{
+ /**
+ * 查询拉矫机参数
+ *
+ * @param steelGrade 拉矫机参数主键
+ * @return 拉矫机参数
+ */
+ public SetupTl selectSetupTlBySteelGrade(String steelGrade,Long yieldStren,Long thick);
+
+ /**
+ * 查询拉矫机参数列表
+ *
+ * @param setupTl 拉矫机参数
+ * @return 拉矫机参数集合
+ */
+ public List selectSetupTlList(SetupTl setupTl);
+
+ /**
+ * 新增拉矫机参数
+ *
+ * @param setupTl 拉矫机参数
+ * @return 结果
+ */
+ public int insertSetupTl(SetupTl setupTl);
+
+ /**
+ * 修改拉矫机参数
+ *
+ * @param setupTl 拉矫机参数
+ * @return 结果
+ */
+ public int updateSetupTl(SetupTl setupTl);
+
+ /**
+ * 批量删除拉矫机参数
+ *
+ * @param steelGrades 需要删除的拉矫机参数主键集合
+ * @return 结果
+ */
+ public int deleteSetupTlBySteelGrades(String[] steelGrades,Long[] yieldStrens,Long[] thicks);
+
+ /**
+ * 删除拉矫机参数信息
+ *
+ * @param steelGrade 拉矫机参数主键
+ * @return 结果
+ */
+ public int deleteSetupTlBySteelGrade(String steelGrade);
+}
diff --git a/business/src/main/java/com/fizz/business/service/ISetupTmBendforceService.java b/business/src/main/java/com/fizz/business/service/ISetupTmBendforceService.java
new file mode 100644
index 0000000..adad3ae
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/service/ISetupTmBendforceService.java
@@ -0,0 +1,61 @@
+package com.fizz.business.service;
+
+import java.util.List;
+import com.fizz.business.domain.SetupTmBendforce;
+
+/**
+ * 光整机弯辊力Service接口
+ *
+ * @author Joshi
+ * @date 2025-09-26
+ */
+public interface ISetupTmBendforceService
+{
+ /**
+ * 查询光整机弯辊力
+ *
+ * @param width 光整机弯辊力主键
+ * @return 光整机弯辊力
+ */
+ public SetupTmBendforce selectSetupTmBendforceByWidth(Long width,Long rollForce);
+
+ /**
+ * 查询光整机弯辊力列表
+ *
+ * @param setupTmBendforce 光整机弯辊力
+ * @return 光整机弯辊力集合
+ */
+ public List selectSetupTmBendforceList(SetupTmBendforce setupTmBendforce);
+
+ /**
+ * 新增光整机弯辊力
+ *
+ * @param setupTmBendforce 光整机弯辊力
+ * @return 结果
+ */
+ public int insertSetupTmBendforce(SetupTmBendforce setupTmBendforce);
+
+ /**
+ * 修改光整机弯辊力
+ *
+ * @param setupTmBendforce 光整机弯辊力
+ * @return 结果
+ */
+ public int updateSetupTmBendforce(SetupTmBendforce setupTmBendforce);
+
+ /**
+ * 批量删除光整机弯辊力
+ *
+ * @param widths 需要删除的光整机弯辊力主键集合
+ * @return 结果
+ */
+ public int deleteSetupTmBendforceByWidths(Long[] widths,Long[] rollForces);
+
+ /**
+ * 删除光整机弯辊力信息
+ *
+ * @param width 光整机弯辊力主键
+ * @return 结果
+ */
+ public int deleteSetupTmBendforceByWidth(Long width);
+}
diff --git a/business/src/main/java/com/fizz/business/service/ISetupTmMeshService.java b/business/src/main/java/com/fizz/business/service/ISetupTmMeshService.java
new file mode 100644
index 0000000..f289ef6
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/service/ISetupTmMeshService.java
@@ -0,0 +1,61 @@
+package com.fizz.business.service;
+
+import java.util.List;
+import com.fizz.business.domain.SetupTmMesh;
+
+/**
+ * 光整机插入量Service接口
+ *
+ * @author Joshi
+ * @date 2025-09-26
+ */
+public interface ISetupTmMeshService
+{
+ /**
+ * 查询光整机插入量
+ *
+ * @param steelGrade 光整机插入量主键
+ * @return 光整机插入量
+ */
+ public SetupTmMesh selectSetupTmMeshBySteelGrade(String steelGrade,Long yildStren,Long thick);
+
+ /**
+ * 查询光整机插入量列表
+ *
+ * @param setupTmMesh 光整机插入量
+ * @return 光整机插入量集合
+ */
+ public List selectSetupTmMeshList(SetupTmMesh setupTmMesh);
+
+ /**
+ * 新增光整机插入量
+ *
+ * @param setupTmMesh 光整机插入量
+ * @return 结果
+ */
+ public int insertSetupTmMesh(SetupTmMesh setupTmMesh);
+
+ /**
+ * 修改光整机插入量
+ *
+ * @param setupTmMesh 光整机插入量
+ * @return 结果
+ */
+ public int updateSetupTmMesh(SetupTmMesh setupTmMesh);
+
+ /**
+ * 批量删除光整机插入量
+ *
+ * @param steelGrades 需要删除的光整机插入量主键集合
+ * @return 结果
+ */
+ public int deleteSetupTmMeshBySteelGrades(String[] steelGrades,Long[] yildStrens,Long[] thicks);
+
+ /**
+ * 删除光整机插入量信息
+ *
+ * @param steelGrade 光整机插入量主键
+ * @return 结果
+ */
+ public int deleteSetupTmMeshBySteelGrade(String steelGrade);
+}
diff --git a/business/src/main/java/com/fizz/business/service/ISetupTmRollforceService.java b/business/src/main/java/com/fizz/business/service/ISetupTmRollforceService.java
new file mode 100644
index 0000000..2f27ed4
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/service/ISetupTmRollforceService.java
@@ -0,0 +1,61 @@
+package com.fizz.business.service;
+
+import java.util.List;
+import com.fizz.business.domain.SetupTmRollforce;
+
+/**
+ * 光整机轧制力Service接口
+ *
+ * @author Joshi
+ * @date 2025-09-26
+ */
+public interface ISetupTmRollforceService
+{
+ /**
+ * 查询光整机轧制力
+ *
+ * @param steelGrade 光整机轧制力主键
+ * @return 光整机轧制力
+ */
+ public SetupTmRollforce selectSetupTmRollforceBySteelGrade(String steelGrade,Long yieldStren,Long thick,Long elong);
+
+ /**
+ * 查询光整机轧制力列表
+ *
+ * @param setupTmRollforce 光整机轧制力
+ * @return 光整机轧制力集合
+ */
+ public List selectSetupTmRollforceList(SetupTmRollforce setupTmRollforce);
+
+ /**
+ * 新增光整机轧制力
+ *
+ * @param setupTmRollforce 光整机轧制力
+ * @return 结果
+ */
+ public int insertSetupTmRollforce(SetupTmRollforce setupTmRollforce);
+
+ /**
+ * 修改光整机轧制力
+ *
+ * @param setupTmRollforce 光整机轧制力
+ * @return 结果
+ */
+ public int updateSetupTmRollforce(SetupTmRollforce setupTmRollforce);
+
+ /**
+ * 批量删除光整机轧制力
+ *
+ * @param steelGrades 需要删除的光整机轧制力主键集合
+ * @return 结果
+ */
+ public int deleteSetupTmRollforceBySteelGrades(String[] steelGrades,Long[] yieldStrens,Long[] thicks,Long[] elongs);
+
+ /**
+ * 删除光整机轧制力信息
+ *
+ * @param steelGrade 光整机轧制力主键
+ * @return 结果
+ */
+ public int deleteSetupTmRollforceBySteelGrade(String steelGrade);
+}
diff --git a/business/src/main/java/com/fizz/business/service/LogDataService.java b/business/src/main/java/com/fizz/business/service/LogDataService.java
new file mode 100644
index 0000000..65e89b0
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/service/LogDataService.java
@@ -0,0 +1,40 @@
+package com.fizz.business.service;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.plugins.pagination.PageDTO;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.fizz.business.domain.LogData;
+import com.fizz.business.form.LogDataForm;
+import com.github.pagehelper.PageInfo;
+
+import java.util.List;
+
+public interface LogDataService extends IService {
+
+ /**
+ * 分页查询
+ */
+ PageInfo pageList(LogDataForm logDataForm);
+
+
+
+ /**
+ * 报警确认
+ * @param seqid
+ */
+ void alarmAck(Integer seqid);
+
+ /**
+ * 记录日志
+ * @param module
+ * @param content
+ */
+ void logInfo(String module,String content, Object... args);
+
+ /**
+ * 记录日志
+ * @param module
+ * @param content
+ */
+ void logWarn(String module,String content, Object... args);
+}
diff --git a/business/src/main/java/com/fizz/business/service/ModCoilMapService.java b/business/src/main/java/com/fizz/business/service/ModCoilMapService.java
new file mode 100644
index 0000000..9405690
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/service/ModCoilMapService.java
@@ -0,0 +1,12 @@
+package com.fizz.business.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.fizz.business.domain.ModCoilMap;
+
+public interface ModCoilMapService extends IService {
+ void saveModCoilInfo(ModCoilMap modCoilMap);
+
+ void updateModCoil(String coilId);
+
+ // 你可以添加自定义的业务方法
+}
diff --git a/business/src/main/java/com/fizz/business/service/ModSetupResultService.java b/business/src/main/java/com/fizz/business/service/ModSetupResultService.java
new file mode 100644
index 0000000..286a1ce
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/service/ModSetupResultService.java
@@ -0,0 +1,21 @@
+package com.fizz.business.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.fizz.business.domain.ModSetupResult;
+import com.fizz.business.form.CalcPdiPlanForm;
+import com.fizz.business.form.CrmPdiPlanForm;
+import com.fizz.business.form.ModSetupResultForm;
+import com.fizz.business.vo.ModSetupResultVO;
+
+import java.util.List;
+
+public interface ModSetupResultService extends IService {
+ List list(ModSetupResultForm form);
+
+ String calcSetup(CalcPdiPlanForm form);
+
+ String retrySetup(String coilid);
+
+ List getSetupByCoilid(String coilid);
+ // 可在此处添加自定义业务方法
+}
diff --git a/business/src/main/java/com/fizz/business/service/OpcMessageHandler.java b/business/src/main/java/com/fizz/business/service/OpcMessageHandler.java
new file mode 100644
index 0000000..fe78a59
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/service/OpcMessageHandler.java
@@ -0,0 +1,7 @@
+package com.fizz.business.service;
+
+import com.fizz.business.domain.msg.OpcMessage;
+
+public interface OpcMessageHandler {
+ void handle(T message);
+}
\ No newline at end of file
diff --git a/business/src/main/java/com/fizz/business/service/PdoExCoilService.java b/business/src/main/java/com/fizz/business/service/PdoExCoilService.java
new file mode 100644
index 0000000..4826a39
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/service/PdoExCoilService.java
@@ -0,0 +1,20 @@
+package com.fizz.business.service;
+
+
+import com.fizz.business.constants.enums.ExitCutTypeEnum;
+import com.fizz.business.dto.PdoExCoilDTO;
+import com.fizz.business.dto.ExitCoilInfoDTO;
+import com.fizz.business.dto.MatmapDTO;
+
+/**
+ * @author chenhao
+ * @date 2023/05/30
+ */
+public interface PdoExCoilService {
+
+ PdoExCoilDTO saveExCoil(ExitCoilInfoDTO exitCoil);
+
+ ExitCoilInfoDTO genExitCoilInfo(MatmapDTO trMatmap, ExitCutTypeEnum cutType);
+
+ void deleteExistPdo(String coilId, String planId);
+}
diff --git a/business/src/main/java/com/fizz/business/service/PdoStripValueService.java b/business/src/main/java/com/fizz/business/service/PdoStripValueService.java
new file mode 100644
index 0000000..483b720
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/service/PdoStripValueService.java
@@ -0,0 +1,13 @@
+package com.fizz.business.service;
+
+
+import com.fizz.business.dto.ExitCoilInfoDTO;
+
+/**
+ * @author chenhao
+ * @date 2023/05/30
+ */
+public interface PdoStripValueService {
+
+ void treatStripValues(ExitCoilInfoDTO pdoExCoil);
+}
diff --git a/business/src/main/java/com/fizz/business/service/PlantConfigService.java b/business/src/main/java/com/fizz/business/service/PlantConfigService.java
new file mode 100644
index 0000000..80f9fcc
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/service/PlantConfigService.java
@@ -0,0 +1,10 @@
+package com.fizz.business.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.fizz.business.domain.PlantConfig;
+
+import java.util.Map;
+
+public interface PlantConfigService extends IService {
+ Map getAllConfig();
+}
diff --git a/business/src/main/java/com/fizz/business/service/ProMatmapService.java b/business/src/main/java/com/fizz/business/service/ProMatmapService.java
new file mode 100644
index 0000000..3370045
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/service/ProMatmapService.java
@@ -0,0 +1,12 @@
+package com.fizz.business.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.fizz.business.domain.ProMatmap;
+
+public interface ProMatmapService extends IService {
+ void updateMatid(String matid);
+
+ void flushMatmap();
+
+ // 你可以添加自定义的业务方法
+}
\ No newline at end of file
diff --git a/business/src/main/java/com/fizz/business/service/ProStoppageService.java b/business/src/main/java/com/fizz/business/service/ProStoppageService.java
new file mode 100644
index 0000000..5b5f19f
--- /dev/null
+++ b/business/src/main/java/com/fizz/business/service/ProStoppageService.java
@@ -0,0 +1,20 @@
+package com.fizz.business.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.fizz.business.domain.ProStoppage;
+import com.fizz.business.form.ProStoppageForm;
+
+import java.util.List;
+
+public interface ProStoppageService extends IService {
+
+ List listAll(ProStoppageForm form);
+
+ boolean updateProStoppage(ProStoppage proStoppage);
+
+ boolean addProStoppage(ProStoppage proStoppage);
+
+ boolean deleteProStoppage(Long stopid);
+
+ List