Преглед на файлове

染整线工艺参数模板

wukai преди 3 месеца
родител
ревизия
6059ded461
променени са 26 файла, в които са добавени 2570 реда и са изтрити 0 реда
  1. 113 0
      jjt-biz/src/main/java/com/jjt/dye/controller/DyeCalcHourController.java
  2. 113 0
      jjt-biz/src/main/java/com/jjt/dye/controller/DyeDeviceController.java
  3. 113 0
      jjt-biz/src/main/java/com/jjt/dye/controller/DyeEnergyController.java
  4. 113 0
      jjt-biz/src/main/java/com/jjt/dye/controller/DyeTypeController.java
  5. 83 0
      jjt-biz/src/main/java/com/jjt/dye/domain/DyeCalcHour.java
  6. 119 0
      jjt-biz/src/main/java/com/jjt/dye/domain/DyeDevice.java
  7. 176 0
      jjt-biz/src/main/java/com/jjt/dye/domain/DyeDevicePara.java
  8. 67 0
      jjt-biz/src/main/java/com/jjt/dye/domain/DyeEnergy.java
  9. 65 0
      jjt-biz/src/main/java/com/jjt/dye/domain/DyeType.java
  10. 83 0
      jjt-biz/src/main/java/com/jjt/dye/domain/DyeTypePara.java
  11. 62 0
      jjt-biz/src/main/java/com/jjt/dye/mapper/DyeCalcHourMapper.java
  12. 88 0
      jjt-biz/src/main/java/com/jjt/dye/mapper/DyeDeviceMapper.java
  13. 62 0
      jjt-biz/src/main/java/com/jjt/dye/mapper/DyeEnergyMapper.java
  14. 88 0
      jjt-biz/src/main/java/com/jjt/dye/mapper/DyeTypeMapper.java
  15. 60 0
      jjt-biz/src/main/java/com/jjt/dye/service/IDyeCalcHourService.java
  16. 60 0
      jjt-biz/src/main/java/com/jjt/dye/service/IDyeDeviceService.java
  17. 60 0
      jjt-biz/src/main/java/com/jjt/dye/service/IDyeEnergyService.java
  18. 60 0
      jjt-biz/src/main/java/com/jjt/dye/service/IDyeTypeService.java
  19. 86 0
      jjt-biz/src/main/java/com/jjt/dye/service/impl/DyeCalcHourServiceImpl.java
  20. 123 0
      jjt-biz/src/main/java/com/jjt/dye/service/impl/DyeDeviceServiceImpl.java
  21. 86 0
      jjt-biz/src/main/java/com/jjt/dye/service/impl/DyeEnergyServiceImpl.java
  22. 121 0
      jjt-biz/src/main/java/com/jjt/dye/service/impl/DyeTypeServiceImpl.java
  23. 106 0
      jjt-biz/src/main/resources/mapper/dye/DyeCalcHourMapper.xml
  24. 207 0
      jjt-biz/src/main/resources/mapper/dye/DyeDeviceMapper.xml
  25. 91 0
      jjt-biz/src/main/resources/mapper/dye/DyeEnergyMapper.xml
  26. 165 0
      jjt-biz/src/main/resources/mapper/dye/DyeTypeMapper.xml

+ 113 - 0
jjt-biz/src/main/java/com/jjt/dye/controller/DyeCalcHourController.java

@@ -0,0 +1,113 @@
+package com.jjt.dye.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.dye.domain.DyeCalcHour;
+import com.jjt.dye.service.IDyeCalcHourService;
+import com.jjt.common.utils.poi.ExcelUtil;
+import com.jjt.common.core.page.TableDataInfo;
+
+/**
+ * 小时统计数据Controller
+ *
+ * @author wukai
+ * @date 2025-11-01
+ */
+@Api(tags="小时统计数据")
+@RestController
+@RequestMapping("/dye/hour")
+public class DyeCalcHourController extends BaseController{
+    @Resource
+    private IDyeCalcHourService dyeCalcHourService;
+
+    /**
+     * 查询小时统计数据列表
+     */
+    @ApiOperation("查询小时统计数据列表")
+    @PreAuthorize("@ss.hasPermi('dye:hour:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(DyeCalcHour dyeCalcHour)
+    {
+        startPage();
+        List<DyeCalcHour> list = dyeCalcHourService.selectDyeCalcHourList(dyeCalcHour);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出小时统计数据列表
+     */
+    @ApiOperation("导出小时统计数据列表")
+    @PreAuthorize("@ss.hasPermi('dye:hour:export')")
+    @Log(title = "小时统计数据", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, DyeCalcHour dyeCalcHour)
+    {
+        List<DyeCalcHour> list = dyeCalcHourService.selectDyeCalcHourList(dyeCalcHour);
+        ExcelUtil<DyeCalcHour> util = new ExcelUtil<DyeCalcHour>(DyeCalcHour.class);
+        util.exportExcel(response, list, "小时统计数据数据");
+    }
+
+    /**
+     * 获取小时统计数据详细信息
+     */
+    @ApiOperation("获取小时统计数据详细信息")
+    @PreAuthorize("@ss.hasPermi('dye:hour:query')")
+    @GetMapping(value = "/{chId}")
+    public AjaxResult getInfo(@PathVariable("chId") Long chId)
+    {
+        return success(dyeCalcHourService.selectDyeCalcHourByChId(chId));
+    }
+
+    /**
+     * 新增小时统计数据
+     */
+    @ApiOperation("新增小时统计数据")
+    @PreAuthorize("@ss.hasPermi('dye:hour:add')")
+    @Log(title = "小时统计数据", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody DyeCalcHour dyeCalcHour)
+    {
+        return toAjax(dyeCalcHourService.insertDyeCalcHour(dyeCalcHour));
+    }
+
+    /**
+     * 修改小时统计数据
+     */
+    @ApiOperation("修改小时统计数据")
+    @PreAuthorize("@ss.hasPermi('dye:hour:edit')")
+    @Log(title = "小时统计数据", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody DyeCalcHour dyeCalcHour)
+    {
+        return toAjax(dyeCalcHourService.updateDyeCalcHour(dyeCalcHour));
+    }
+
+    /**
+     * 删除小时统计数据
+     */
+    @ApiOperation("删除小时统计数据")
+    @PreAuthorize("@ss.hasPermi('dye:hour:remove')")
+    @Log(title = "小时统计数据", businessType = BusinessType.DELETE)
+	@DeleteMapping("/{chIds}")
+    public AjaxResult remove(@PathVariable Long[] chIds)
+    {
+        return toAjax(dyeCalcHourService.deleteDyeCalcHourByChIds(chIds));
+    }
+}

+ 113 - 0
jjt-biz/src/main/java/com/jjt/dye/controller/DyeDeviceController.java

@@ -0,0 +1,113 @@
+package com.jjt.dye.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.dye.domain.DyeDevice;
+import com.jjt.dye.service.IDyeDeviceService;
+import com.jjt.common.utils.poi.ExcelUtil;
+import com.jjt.common.core.page.TableDataInfo;
+
+/**
+ * 染整线设备管理Controller
+ *
+ * @author wukai
+ * @date 2025-11-01
+ */
+@Api(tags="染整线设备管理")
+@RestController
+@RequestMapping("/dye/device")
+public class DyeDeviceController extends BaseController{
+    @Resource
+    private IDyeDeviceService dyeDeviceService;
+
+    /**
+     * 查询染整线设备管理列表
+     */
+    @ApiOperation("查询染整线设备管理列表")
+    @PreAuthorize("@ss.hasPermi('dye:device:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(DyeDevice dyeDevice)
+    {
+        startPage();
+        List<DyeDevice> list = dyeDeviceService.selectDyeDeviceList(dyeDevice);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出染整线设备管理列表
+     */
+    @ApiOperation("导出染整线设备管理列表")
+    @PreAuthorize("@ss.hasPermi('dye:device:export')")
+    @Log(title = "染整线设备管理", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, DyeDevice dyeDevice)
+    {
+        List<DyeDevice> list = dyeDeviceService.selectDyeDeviceList(dyeDevice);
+        ExcelUtil<DyeDevice> util = new ExcelUtil<DyeDevice>(DyeDevice.class);
+        util.exportExcel(response, list, "染整线设备管理数据");
+    }
+
+    /**
+     * 获取染整线设备管理详细信息
+     */
+    @ApiOperation("获取染整线设备管理详细信息")
+    @PreAuthorize("@ss.hasPermi('dye:device:query')")
+    @GetMapping(value = "/{deviceId}")
+    public AjaxResult getInfo(@PathVariable("deviceId") Long deviceId)
+    {
+        return success(dyeDeviceService.selectDyeDeviceByDeviceId(deviceId));
+    }
+
+    /**
+     * 新增染整线设备管理
+     */
+    @ApiOperation("新增染整线设备管理")
+    @PreAuthorize("@ss.hasPermi('dye:device:add')")
+    @Log(title = "染整线设备管理", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody DyeDevice dyeDevice)
+    {
+        return toAjax(dyeDeviceService.insertDyeDevice(dyeDevice));
+    }
+
+    /**
+     * 修改染整线设备管理
+     */
+    @ApiOperation("修改染整线设备管理")
+    @PreAuthorize("@ss.hasPermi('dye:device:edit')")
+    @Log(title = "染整线设备管理", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody DyeDevice dyeDevice)
+    {
+        return toAjax(dyeDeviceService.updateDyeDevice(dyeDevice));
+    }
+
+    /**
+     * 删除染整线设备管理
+     */
+    @ApiOperation("删除染整线设备管理")
+    @PreAuthorize("@ss.hasPermi('dye:device:remove')")
+    @Log(title = "染整线设备管理", businessType = BusinessType.DELETE)
+	@DeleteMapping("/{deviceIds}")
+    public AjaxResult remove(@PathVariable Long[] deviceIds)
+    {
+        return toAjax(dyeDeviceService.deleteDyeDeviceByDeviceIds(deviceIds));
+    }
+}

+ 113 - 0
jjt-biz/src/main/java/com/jjt/dye/controller/DyeEnergyController.java

@@ -0,0 +1,113 @@
+package com.jjt.dye.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.dye.domain.DyeEnergy;
+import com.jjt.dye.service.IDyeEnergyService;
+import com.jjt.common.utils.poi.ExcelUtil;
+import com.jjt.common.core.page.TableDataInfo;
+
+/**
+ * 染整线能源基础管理Controller
+ *
+ * @author wukai
+ * @date 2025-11-01
+ */
+@Api(tags="染整线能源基础管理")
+@RestController
+@RequestMapping("/dye/energy")
+public class DyeEnergyController extends BaseController{
+    @Resource
+    private IDyeEnergyService dyeEnergyService;
+
+    /**
+     * 查询染整线能源基础管理列表
+     */
+    @ApiOperation("查询染整线能源基础管理列表")
+    @PreAuthorize("@ss.hasPermi('dye:energy:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(DyeEnergy dyeEnergy)
+    {
+        startPage();
+        List<DyeEnergy> list = dyeEnergyService.selectDyeEnergyList(dyeEnergy);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出染整线能源基础管理列表
+     */
+    @ApiOperation("导出染整线能源基础管理列表")
+    @PreAuthorize("@ss.hasPermi('dye:energy:export')")
+    @Log(title = "染整线能源基础管理", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, DyeEnergy dyeEnergy)
+    {
+        List<DyeEnergy> list = dyeEnergyService.selectDyeEnergyList(dyeEnergy);
+        ExcelUtil<DyeEnergy> util = new ExcelUtil<DyeEnergy>(DyeEnergy.class);
+        util.exportExcel(response, list, "染整线能源基础管理数据");
+    }
+
+    /**
+     * 获取染整线能源基础管理详细信息
+     */
+    @ApiOperation("获取染整线能源基础管理详细信息")
+    @PreAuthorize("@ss.hasPermi('dye:energy:query')")
+    @GetMapping(value = "/{engId}")
+    public AjaxResult getInfo(@PathVariable("engId") Long engId)
+    {
+        return success(dyeEnergyService.selectDyeEnergyByEngId(engId));
+    }
+
+    /**
+     * 新增染整线能源基础管理
+     */
+    @ApiOperation("新增染整线能源基础管理")
+    @PreAuthorize("@ss.hasPermi('dye:energy:add')")
+    @Log(title = "染整线能源基础管理", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody DyeEnergy dyeEnergy)
+    {
+        return toAjax(dyeEnergyService.insertDyeEnergy(dyeEnergy));
+    }
+
+    /**
+     * 修改染整线能源基础管理
+     */
+    @ApiOperation("修改染整线能源基础管理")
+    @PreAuthorize("@ss.hasPermi('dye:energy:edit')")
+    @Log(title = "染整线能源基础管理", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody DyeEnergy dyeEnergy)
+    {
+        return toAjax(dyeEnergyService.updateDyeEnergy(dyeEnergy));
+    }
+
+    /**
+     * 删除染整线能源基础管理
+     */
+    @ApiOperation("删除染整线能源基础管理")
+    @PreAuthorize("@ss.hasPermi('dye:energy:remove')")
+    @Log(title = "染整线能源基础管理", businessType = BusinessType.DELETE)
+	@DeleteMapping("/{engIds}")
+    public AjaxResult remove(@PathVariable Long[] engIds)
+    {
+        return toAjax(dyeEnergyService.deleteDyeEnergyByEngIds(engIds));
+    }
+}

+ 113 - 0
jjt-biz/src/main/java/com/jjt/dye/controller/DyeTypeController.java

@@ -0,0 +1,113 @@
+package com.jjt.dye.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.dye.domain.DyeType;
+import com.jjt.dye.service.IDyeTypeService;
+import com.jjt.common.utils.poi.ExcelUtil;
+import com.jjt.common.core.page.TableDataInfo;
+
+/**
+ * 染整线设备类型管理Controller
+ *
+ * @author wukai
+ * @date 2025-11-01
+ */
+@Api(tags="染整线设备类型管理")
+@RestController
+@RequestMapping("/dye/type")
+public class DyeTypeController extends BaseController{
+    @Resource
+    private IDyeTypeService dyeTypeService;
+
+    /**
+     * 查询染整线设备类型管理列表
+     */
+    @ApiOperation("查询染整线设备类型管理列表")
+    @PreAuthorize("@ss.hasPermi('dye:type:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(DyeType dyeType)
+    {
+        startPage();
+        List<DyeType> list = dyeTypeService.selectDyeTypeList(dyeType);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出染整线设备类型管理列表
+     */
+    @ApiOperation("导出染整线设备类型管理列表")
+    @PreAuthorize("@ss.hasPermi('dye:type:export')")
+    @Log(title = "染整线设备类型管理", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, DyeType dyeType)
+    {
+        List<DyeType> list = dyeTypeService.selectDyeTypeList(dyeType);
+        ExcelUtil<DyeType> util = new ExcelUtil<DyeType>(DyeType.class);
+        util.exportExcel(response, list, "染整线设备类型管理数据");
+    }
+
+    /**
+     * 获取染整线设备类型管理详细信息
+     */
+    @ApiOperation("获取染整线设备类型管理详细信息")
+    @PreAuthorize("@ss.hasPermi('dye:type:query')")
+    @GetMapping(value = "/{typeId}")
+    public AjaxResult getInfo(@PathVariable("typeId") Long typeId)
+    {
+        return success(dyeTypeService.selectDyeTypeByTypeId(typeId));
+    }
+
+    /**
+     * 新增染整线设备类型管理
+     */
+    @ApiOperation("新增染整线设备类型管理")
+    @PreAuthorize("@ss.hasPermi('dye:type:add')")
+    @Log(title = "染整线设备类型管理", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody DyeType dyeType)
+    {
+        return toAjax(dyeTypeService.insertDyeType(dyeType));
+    }
+
+    /**
+     * 修改染整线设备类型管理
+     */
+    @ApiOperation("修改染整线设备类型管理")
+    @PreAuthorize("@ss.hasPermi('dye:type:edit')")
+    @Log(title = "染整线设备类型管理", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody DyeType dyeType)
+    {
+        return toAjax(dyeTypeService.updateDyeType(dyeType));
+    }
+
+    /**
+     * 删除染整线设备类型管理
+     */
+    @ApiOperation("删除染整线设备类型管理")
+    @PreAuthorize("@ss.hasPermi('dye:type:remove')")
+    @Log(title = "染整线设备类型管理", businessType = BusinessType.DELETE)
+	@DeleteMapping("/{typeIds}")
+    public AjaxResult remove(@PathVariable Long[] typeIds)
+    {
+        return toAjax(dyeTypeService.deleteDyeTypeByTypeIds(typeIds));
+    }
+}

+ 83 - 0
jjt-biz/src/main/java/com/jjt/dye/domain/DyeCalcHour.java

@@ -0,0 +1,83 @@
+package com.jjt.dye.domain;
+
+import java.math.BigDecimal;
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.baomidou.mybatisplus.annotation.TableId;
+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;
+
+/**
+ * 小时统计数据对象 DYE_CALC_HOUR
+ *
+ * @author wukai
+ * @date 2025-11-01
+ */
+@ApiModel(value = "DyeCalcHour", description = "小时统计数据")
+@Data
+public class DyeCalcHour extends BaseEntity{
+    private static final long serialVersionUID = 1L;
+
+    /** 统计ID */
+    @ApiModelProperty("统计ID")
+    @TableId
+    private Long chId;
+
+    /** 日期 */
+    @ApiModelProperty("日期")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @Excel(name = "日期", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date dataDate;
+
+    /** 小时 */
+    @ApiModelProperty("小时")
+    @Excel(name = "小时")
+    private Long hour;
+
+    /** 设备ID */
+    @ApiModelProperty("设备ID")
+    @Excel(name = "设备ID")
+    private Long deviceId;
+
+    /** 参数编码 */
+    @ApiModelProperty("参数编码")
+    @Excel(name = "参数编码")
+    private String paraCode;
+
+    /** 参数名称 */
+    @ApiModelProperty("参数名称")
+    @Excel(name = "参数名称")
+    private String paraName;
+
+    /** 参数值 */
+    @ApiModelProperty("参数值")
+    @Excel(name = "参数值")
+    private BigDecimal paraValue;
+
+    /** 参数分钟级数据 */
+    @ApiModelProperty("参数分钟级数据")
+    @Excel(name = "参数分钟级数据")
+    private String paraMValue;
+
+    /** 创建人 */
+    @ApiModelProperty("创建人")
+    private String createdBy;
+
+    /** 创建时间 */
+    @ApiModelProperty("创建时间")
+    private Date createdTime;
+
+    /** 更新人 */
+    @ApiModelProperty("更新人")
+    private String updatedBy;
+
+    /** 更新时间 */
+    @ApiModelProperty("更新时间")
+    private Date updatedTime;
+
+}

+ 119 - 0
jjt-biz/src/main/java/com/jjt/dye/domain/DyeDevice.java

@@ -0,0 +1,119 @@
+package com.jjt.dye.domain;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.jjt.common.annotation.Excel;
+import com.jjt.common.core.domain.BaseEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 染整线设备管理对象 DYE_DEVICE
+ *
+ * @author wukai
+ * @date 2025-11-01
+ */
+@ApiModel(value = "DyeDevice", description = "染整线设备管理")
+@Data
+public class DyeDevice extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 设备ID
+     */
+    @ApiModelProperty("设备ID")
+    @TableId
+    private Long deviceId;
+
+    /**
+     * 类型ID
+     */
+    @ApiModelProperty("类型ID")
+    @Excel(name = "类型ID")
+    private Long typeId;
+
+    /**
+     * 车间
+     */
+    @ApiModelProperty("车间")
+    @Excel(name = "车间")
+    private String wsName;
+
+    /**
+     * 产线编号
+     */
+    @ApiModelProperty("产线编号")
+    @Excel(name = "产线编号")
+    private String line;
+
+    /**
+     * 类型名称
+     */
+    @ApiModelProperty("类型名称")
+    @Excel(name = "类型名称")
+    private String typeName;
+
+    /**
+     * 设备编码
+     */
+    @ApiModelProperty("设备编码")
+    @Excel(name = "设备编码")
+    private String deviceCode;
+
+    @ApiModelProperty("设备序号")
+    private Integer sortNum;
+
+    /**
+     * 设备名称
+     */
+    @ApiModelProperty("设备名称")
+    @Excel(name = "设备名称")
+    private String deviceName;
+
+    /**
+     * 设备路径
+     */
+    @ApiModelProperty("设备路径")
+    @Excel(name = "设备路径")
+    private String devicePath;
+
+    /**
+     * 创建人
+     */
+    @ApiModelProperty("创建人")
+    @Excel(name = "创建人")
+    private String createdBy;
+
+    /**
+     * 创建时间
+     */
+    @ApiModelProperty("创建时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date createdTime;
+
+    /**
+     * 更新人
+     */
+    @ApiModelProperty("更新人")
+    @Excel(name = "更新人")
+    private String updatedBy;
+
+    /**
+     * 更新时间
+     */
+    @ApiModelProperty("更新时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date updatedTime;
+
+    /**
+     * 染整线设备参数管理信息
+     */
+    private List<DyeDevicePara> dyeDeviceParaList;
+
+}

+ 176 - 0
jjt-biz/src/main/java/com/jjt/dye/domain/DyeDevicePara.java

@@ -0,0 +1,176 @@
+package com.jjt.dye.domain;
+
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+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;
+
+/**
+ * 染整线设备参数管理对象 DYE_DEVICE_PARA
+ *
+ * @author wukai
+ * @date 2025-11-01
+ */
+public class DyeDevicePara extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** 参数ID */
+    private Long paraId;
+
+    /** ID */
+    @Excel(name = "ID")
+    private Long deviceId;
+
+    /** 参数编码 */
+    @Excel(name = "参数编码")
+    private String paraCode;
+
+    /** 参数名称 */
+    @Excel(name = "参数名称")
+    private String paraName;
+
+    /** 参数表达式 */
+    @Excel(name = "参数表达式")
+    private String paraExp;
+
+    /** 告警规则 */
+    @Excel(name = "告警规则")
+    private String paraAlarm;
+
+    /** 产线标准 */
+    @Excel(name = "产线标准")
+    private String lineStand;
+
+    /** 创建人 */
+    private String createdBy;
+
+    /** 创建时间 */
+    private Date createdTime;
+
+    /** 更新人 */
+    private String updatedBy;
+
+    /** 更新时间 */
+    private Date updatedTime;
+
+    public void setParaId(Long paraId)
+    {
+        this.paraId = paraId;
+    }
+
+    public Long getParaId()
+    {
+        return paraId;
+    }
+    public void setDeviceId(Long deviceId)
+    {
+        this.deviceId = deviceId;
+    }
+
+    public Long getDeviceId()
+    {
+        return deviceId;
+    }
+    public void setParaCode(String paraCode)
+    {
+        this.paraCode = paraCode;
+    }
+
+    public String getParaCode()
+    {
+        return paraCode;
+    }
+    public void setParaName(String paraName)
+    {
+        this.paraName = paraName;
+    }
+
+    public String getParaName()
+    {
+        return paraName;
+    }
+    public void setParaExp(String paraExp)
+    {
+        this.paraExp = paraExp;
+    }
+
+    public String getParaExp()
+    {
+        return paraExp;
+    }
+    public void setParaAlarm(String paraAlarm)
+    {
+        this.paraAlarm = paraAlarm;
+    }
+
+    public String getParaAlarm()
+    {
+        return paraAlarm;
+    }
+    public void setLineStand(String lineStand)
+    {
+        this.lineStand = lineStand;
+    }
+
+    public String getLineStand()
+    {
+        return lineStand;
+    }
+    public void setCreatedBy(String createdBy)
+    {
+        this.createdBy = createdBy;
+    }
+
+    public String getCreatedBy()
+    {
+        return createdBy;
+    }
+    public void setCreatedTime(Date createdTime)
+    {
+        this.createdTime = createdTime;
+    }
+
+    public Date getCreatedTime()
+    {
+        return createdTime;
+    }
+    public void setUpdatedBy(String updatedBy)
+    {
+        this.updatedBy = updatedBy;
+    }
+
+    public String getUpdatedBy()
+    {
+        return updatedBy;
+    }
+    public void setUpdatedTime(Date updatedTime)
+    {
+        this.updatedTime = updatedTime;
+    }
+
+    public Date getUpdatedTime()
+    {
+        return updatedTime;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+            .append("paraId", getParaId())
+            .append("deviceId", getDeviceId())
+            .append("paraCode", getParaCode())
+            .append("paraName", getParaName())
+            .append("paraExp", getParaExp())
+            .append("paraAlarm", getParaAlarm())
+            .append("lineStand", getLineStand())
+            .append("createdBy", getCreatedBy())
+            .append("createdTime", getCreatedTime())
+            .append("updatedBy", getUpdatedBy())
+            .append("updatedTime", getUpdatedTime())
+            .append("remark", getRemark())
+            .toString();
+    }
+}

+ 67 - 0
jjt-biz/src/main/java/com/jjt/dye/domain/DyeEnergy.java

@@ -0,0 +1,67 @@
+package com.jjt.dye.domain;
+
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.baomidou.mybatisplus.annotation.TableId;
+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;
+
+/**
+ * 染整线能源基础管理对象 DYE_ENERGY
+ *
+ * @author wukai
+ * @date 2025-11-01
+ */
+@ApiModel(value = "DyeEnergy", description = "染整线能源基础管理")
+@Data
+public class DyeEnergy extends BaseEntity{
+    private static final long serialVersionUID = 1L;
+
+    /** 能源ID */
+    @ApiModelProperty("能源ID")
+    @TableId
+    private Long engId;
+
+    /** 能源编码 */
+    @ApiModelProperty("能源编码")
+    @Excel(name = "能源编码")
+    private String engCode;
+
+    /** 能源名称 */
+    @ApiModelProperty("能源名称")
+    @Excel(name = "能源名称")
+    private String engName;
+
+    /** 产线标准 */
+    @ApiModelProperty("产线标准")
+    @Excel(name = "产线标准")
+    private String lineStand;
+
+    /** 创建人 */
+    @ApiModelProperty("创建人")
+    @Excel(name = "创建人")
+    private String createdBy;
+
+    /** 创建时间 */
+    @ApiModelProperty("创建时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date createdTime;
+
+    /** 更新人 */
+    @ApiModelProperty("更新人")
+    @Excel(name = "更新人")
+    private String updatedBy;
+
+    /** 更新时间 */
+    @ApiModelProperty("更新时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date updatedTime;
+
+}

+ 65 - 0
jjt-biz/src/main/java/com/jjt/dye/domain/DyeType.java

@@ -0,0 +1,65 @@
+package com.jjt.dye.domain;
+
+import java.util.List;
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.baomidou.mybatisplus.annotation.TableId;
+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;
+
+/**
+ * 染整线设备类型管理对象 DYE_TYPE
+ *
+ * @author wukai
+ * @date 2025-11-01
+ */
+@ApiModel(value = "DyeType", description = "染整线设备类型管理")
+@Data
+public class DyeType extends BaseEntity{
+    private static final long serialVersionUID = 1L;
+
+    /** ID */
+    @ApiModelProperty("ID")
+    @TableId
+    private Long typeId;
+
+    /** 类型名称 */
+    @ApiModelProperty("类型名称")
+    @Excel(name = "类型名称")
+    private String typeName;
+
+    /** 车间 */
+    @ApiModelProperty("车间")
+    @Excel(name = "车间")
+    private String wsName;
+
+    /** 设备IOT通配符 */
+    @ApiModelProperty("设备IOT通配符")
+    @Excel(name = "设备IOT通配符")
+    private String typeMatch;
+
+    /** 创建人 */
+    @ApiModelProperty("创建人")
+    private String createdBy;
+
+    /** 创建时间 */
+    @ApiModelProperty("创建时间")
+    private Date createdTime;
+
+    /** 更新人 */
+    @ApiModelProperty("更新人")
+    private String updatedBy;
+
+    /** 更新时间 */
+    @ApiModelProperty("更新时间")
+    private Date updatedTime;
+
+    /** 染整线设备类型参数管理信息 */
+    private List<DyeTypePara> dyeTypeParaList;
+
+}

+ 83 - 0
jjt-biz/src/main/java/com/jjt/dye/domain/DyeTypePara.java

@@ -0,0 +1,83 @@
+package com.jjt.dye.domain;
+
+import com.jjt.common.annotation.Excel;
+import com.jjt.common.core.domain.BaseEntity;
+import lombok.Data;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import java.util.Date;
+
+/**
+ * 染整线设备类型参数管理对象 DYE_TYPE_PARA
+ *
+ * @author wukai
+ * @date 2025-11-01
+ */
+@Data
+public class DyeTypePara extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 参数ID
+     */
+    private Long tparaId;
+
+    /**
+     * ID
+     */
+    @Excel(name = "ID")
+    private Long typeId;
+
+    /**
+     * 参数编码
+     */
+    @Excel(name = "参数编码")
+    private String paraCode;
+
+    /**
+     * 参数名称
+     */
+    @Excel(name = "参数名称")
+    private String paraName;
+
+    /**
+     * 参数表达式
+     */
+    @Excel(name = "参数表达式")
+    private String paraExp;
+
+    /**
+     * 告警规则
+     */
+    @Excel(name = "告警规则")
+    private String paraAlarm;
+    /**
+     * 设备标准
+     */
+    private String lineStand;
+    /**
+     * 自定义配置
+     */
+    private String customConfig;
+
+    /**
+     * 创建人
+     */
+    private String createdBy;
+
+    /**
+     * 创建时间
+     */
+    private Date createdTime;
+
+    /**
+     * 更新人
+     */
+    private String updatedBy;
+
+    /**
+     * 更新时间
+     */
+    private Date updatedTime;
+}

+ 62 - 0
jjt-biz/src/main/java/com/jjt/dye/mapper/DyeCalcHourMapper.java

@@ -0,0 +1,62 @@
+package com.jjt.dye.mapper;
+
+import java.util.List;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jjt.dye.domain.DyeCalcHour;
+
+/**
+ * 小时统计数据Mapper接口
+ * 
+ * @author wukai
+ * @date 2025-11-01
+ */
+public interface DyeCalcHourMapper extends BaseMapper<DyeCalcHour>
+{
+    /**
+     * 查询小时统计数据
+     * 
+     * @param chId 小时统计数据主键
+     * @return 小时统计数据
+     */
+    public DyeCalcHour selectDyeCalcHourByChId(Long chId);
+
+    /**
+     * 查询小时统计数据列表
+     * 
+     * @param dyeCalcHour 小时统计数据
+     * @return 小时统计数据集合
+     */
+    public List<DyeCalcHour> selectDyeCalcHourList(DyeCalcHour dyeCalcHour);
+
+    /**
+     * 新增小时统计数据
+     * 
+     * @param dyeCalcHour 小时统计数据
+     * @return 结果
+     */
+    public int insertDyeCalcHour(DyeCalcHour dyeCalcHour);
+
+    /**
+     * 修改小时统计数据
+     * 
+     * @param dyeCalcHour 小时统计数据
+     * @return 结果
+     */
+    public int updateDyeCalcHour(DyeCalcHour dyeCalcHour);
+
+    /**
+     * 删除小时统计数据
+     * 
+     * @param chId 小时统计数据主键
+     * @return 结果
+     */
+    public int deleteDyeCalcHourByChId(Long chId);
+
+    /**
+     * 批量删除小时统计数据
+     * 
+     * @param chIds 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteDyeCalcHourByChIds(Long[] chIds);
+}

+ 88 - 0
jjt-biz/src/main/java/com/jjt/dye/mapper/DyeDeviceMapper.java

@@ -0,0 +1,88 @@
+package com.jjt.dye.mapper;
+
+import java.util.List;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jjt.dye.domain.DyeDevice;
+import com.jjt.dye.domain.DyeDevicePara;
+
+/**
+ * 染整线设备管理Mapper接口
+ * 
+ * @author wukai
+ * @date 2025-11-01
+ */
+public interface DyeDeviceMapper extends BaseMapper<DyeDevice>
+{
+    /**
+     * 查询染整线设备管理
+     * 
+     * @param deviceId 染整线设备管理主键
+     * @return 染整线设备管理
+     */
+    public DyeDevice selectDyeDeviceByDeviceId(Long deviceId);
+
+    /**
+     * 查询染整线设备管理列表
+     * 
+     * @param dyeDevice 染整线设备管理
+     * @return 染整线设备管理集合
+     */
+    public List<DyeDevice> selectDyeDeviceList(DyeDevice dyeDevice);
+
+    /**
+     * 新增染整线设备管理
+     * 
+     * @param dyeDevice 染整线设备管理
+     * @return 结果
+     */
+    public int insertDyeDevice(DyeDevice dyeDevice);
+
+    /**
+     * 修改染整线设备管理
+     * 
+     * @param dyeDevice 染整线设备管理
+     * @return 结果
+     */
+    public int updateDyeDevice(DyeDevice dyeDevice);
+
+    /**
+     * 删除染整线设备管理
+     * 
+     * @param deviceId 染整线设备管理主键
+     * @return 结果
+     */
+    public int deleteDyeDeviceByDeviceId(Long deviceId);
+
+    /**
+     * 批量删除染整线设备管理
+     * 
+     * @param deviceIds 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteDyeDeviceByDeviceIds(Long[] deviceIds);
+
+    /**
+     * 批量删除染整线设备参数管理
+     * 
+     * @param deviceIds 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteDyeDeviceParaByDeviceIds(Long[] deviceIds);
+    
+    /**
+     * 批量新增染整线设备参数管理
+     * 
+     * @param dyeDeviceParaList 染整线设备参数管理列表
+     * @return 结果
+     */
+    public int batchDyeDevicePara(List<DyeDevicePara> dyeDeviceParaList);
+    
+
+    /**
+     * 通过染整线设备管理主键删除染整线设备参数管理信息
+     * 
+     * @param deviceId 染整线设备管理ID
+     * @return 结果
+     */
+    public int deleteDyeDeviceParaByDeviceId(Long deviceId);
+}

+ 62 - 0
jjt-biz/src/main/java/com/jjt/dye/mapper/DyeEnergyMapper.java

@@ -0,0 +1,62 @@
+package com.jjt.dye.mapper;
+
+import java.util.List;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jjt.dye.domain.DyeEnergy;
+
+/**
+ * 染整线能源基础管理Mapper接口
+ * 
+ * @author wukai
+ * @date 2025-11-01
+ */
+public interface DyeEnergyMapper extends BaseMapper<DyeEnergy>
+{
+    /**
+     * 查询染整线能源基础管理
+     * 
+     * @param engId 染整线能源基础管理主键
+     * @return 染整线能源基础管理
+     */
+    public DyeEnergy selectDyeEnergyByEngId(Long engId);
+
+    /**
+     * 查询染整线能源基础管理列表
+     * 
+     * @param dyeEnergy 染整线能源基础管理
+     * @return 染整线能源基础管理集合
+     */
+    public List<DyeEnergy> selectDyeEnergyList(DyeEnergy dyeEnergy);
+
+    /**
+     * 新增染整线能源基础管理
+     * 
+     * @param dyeEnergy 染整线能源基础管理
+     * @return 结果
+     */
+    public int insertDyeEnergy(DyeEnergy dyeEnergy);
+
+    /**
+     * 修改染整线能源基础管理
+     * 
+     * @param dyeEnergy 染整线能源基础管理
+     * @return 结果
+     */
+    public int updateDyeEnergy(DyeEnergy dyeEnergy);
+
+    /**
+     * 删除染整线能源基础管理
+     * 
+     * @param engId 染整线能源基础管理主键
+     * @return 结果
+     */
+    public int deleteDyeEnergyByEngId(Long engId);
+
+    /**
+     * 批量删除染整线能源基础管理
+     * 
+     * @param engIds 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteDyeEnergyByEngIds(Long[] engIds);
+}

+ 88 - 0
jjt-biz/src/main/java/com/jjt/dye/mapper/DyeTypeMapper.java

@@ -0,0 +1,88 @@
+package com.jjt.dye.mapper;
+
+import java.util.List;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jjt.dye.domain.DyeType;
+import com.jjt.dye.domain.DyeTypePara;
+
+/**
+ * 染整线设备类型管理Mapper接口
+ * 
+ * @author wukai
+ * @date 2025-11-01
+ */
+public interface DyeTypeMapper extends BaseMapper<DyeType>
+{
+    /**
+     * 查询染整线设备类型管理
+     * 
+     * @param typeId 染整线设备类型管理主键
+     * @return 染整线设备类型管理
+     */
+    public DyeType selectDyeTypeByTypeId(Long typeId);
+
+    /**
+     * 查询染整线设备类型管理列表
+     * 
+     * @param dyeType 染整线设备类型管理
+     * @return 染整线设备类型管理集合
+     */
+    public List<DyeType> selectDyeTypeList(DyeType dyeType);
+
+    /**
+     * 新增染整线设备类型管理
+     * 
+     * @param dyeType 染整线设备类型管理
+     * @return 结果
+     */
+    public int insertDyeType(DyeType dyeType);
+
+    /**
+     * 修改染整线设备类型管理
+     * 
+     * @param dyeType 染整线设备类型管理
+     * @return 结果
+     */
+    public int updateDyeType(DyeType dyeType);
+
+    /**
+     * 删除染整线设备类型管理
+     * 
+     * @param typeId 染整线设备类型管理主键
+     * @return 结果
+     */
+    public int deleteDyeTypeByTypeId(Long typeId);
+
+    /**
+     * 批量删除染整线设备类型管理
+     * 
+     * @param typeIds 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteDyeTypeByTypeIds(Long[] typeIds);
+
+    /**
+     * 批量删除染整线设备类型参数管理
+     * 
+     * @param typeIds 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteDyeTypeParaByTypeIds(Long[] typeIds);
+    
+    /**
+     * 批量新增染整线设备类型参数管理
+     * 
+     * @param dyeTypeParaList 染整线设备类型参数管理列表
+     * @return 结果
+     */
+    public int batchDyeTypePara(List<DyeTypePara> dyeTypeParaList);
+    
+
+    /**
+     * 通过染整线设备类型管理主键删除染整线设备类型参数管理信息
+     * 
+     * @param typeId 染整线设备类型管理ID
+     * @return 结果
+     */
+    public int deleteDyeTypeParaByTypeId(Long typeId);
+}

+ 60 - 0
jjt-biz/src/main/java/com/jjt/dye/service/IDyeCalcHourService.java

@@ -0,0 +1,60 @@
+package com.jjt.dye.service;
+
+import java.util.List;
+import com.jjt.dye.domain.DyeCalcHour;
+
+/**
+ * 小时统计数据Service接口
+ *
+ * @author wukai
+ * @date 2025-11-01
+ */
+public interface IDyeCalcHourService {
+    /**
+     * 查询小时统计数据
+     *
+     * @param chId 小时统计数据主键
+     * @return 小时统计数据
+     */
+    public DyeCalcHour selectDyeCalcHourByChId(Long chId);
+
+    /**
+     * 查询小时统计数据列表
+     *
+     * @param dyeCalcHour 小时统计数据
+     * @return 小时统计数据集合
+     */
+    public List<DyeCalcHour> selectDyeCalcHourList(DyeCalcHour dyeCalcHour);
+
+    /**
+     * 新增小时统计数据
+     *
+     * @param dyeCalcHour 小时统计数据
+     * @return 结果
+     */
+    public int insertDyeCalcHour(DyeCalcHour dyeCalcHour);
+
+    /**
+     * 修改小时统计数据
+     *
+     * @param dyeCalcHour 小时统计数据
+     * @return 结果
+     */
+    public int updateDyeCalcHour(DyeCalcHour dyeCalcHour);
+
+    /**
+     * 批量删除小时统计数据
+     *
+     * @param chIds 需要删除的小时统计数据主键集合
+     * @return 结果
+     */
+    public int deleteDyeCalcHourByChIds(Long[] chIds);
+
+    /**
+     * 删除小时统计数据信息
+     *
+     * @param chId 小时统计数据主键
+     * @return 结果
+     */
+    public int deleteDyeCalcHourByChId(Long chId);
+}

+ 60 - 0
jjt-biz/src/main/java/com/jjt/dye/service/IDyeDeviceService.java

@@ -0,0 +1,60 @@
+package com.jjt.dye.service;
+
+import java.util.List;
+import com.jjt.dye.domain.DyeDevice;
+
+/**
+ * 染整线设备管理Service接口
+ *
+ * @author wukai
+ * @date 2025-11-01
+ */
+public interface IDyeDeviceService {
+    /**
+     * 查询染整线设备管理
+     *
+     * @param deviceId 染整线设备管理主键
+     * @return 染整线设备管理
+     */
+    public DyeDevice selectDyeDeviceByDeviceId(Long deviceId);
+
+    /**
+     * 查询染整线设备管理列表
+     *
+     * @param dyeDevice 染整线设备管理
+     * @return 染整线设备管理集合
+     */
+    public List<DyeDevice> selectDyeDeviceList(DyeDevice dyeDevice);
+
+    /**
+     * 新增染整线设备管理
+     *
+     * @param dyeDevice 染整线设备管理
+     * @return 结果
+     */
+    public int insertDyeDevice(DyeDevice dyeDevice);
+
+    /**
+     * 修改染整线设备管理
+     *
+     * @param dyeDevice 染整线设备管理
+     * @return 结果
+     */
+    public int updateDyeDevice(DyeDevice dyeDevice);
+
+    /**
+     * 批量删除染整线设备管理
+     *
+     * @param deviceIds 需要删除的染整线设备管理主键集合
+     * @return 结果
+     */
+    public int deleteDyeDeviceByDeviceIds(Long[] deviceIds);
+
+    /**
+     * 删除染整线设备管理信息
+     *
+     * @param deviceId 染整线设备管理主键
+     * @return 结果
+     */
+    public int deleteDyeDeviceByDeviceId(Long deviceId);
+}

+ 60 - 0
jjt-biz/src/main/java/com/jjt/dye/service/IDyeEnergyService.java

@@ -0,0 +1,60 @@
+package com.jjt.dye.service;
+
+import java.util.List;
+import com.jjt.dye.domain.DyeEnergy;
+
+/**
+ * 染整线能源基础管理Service接口
+ *
+ * @author wukai
+ * @date 2025-11-01
+ */
+public interface IDyeEnergyService {
+    /**
+     * 查询染整线能源基础管理
+     *
+     * @param engId 染整线能源基础管理主键
+     * @return 染整线能源基础管理
+     */
+    public DyeEnergy selectDyeEnergyByEngId(Long engId);
+
+    /**
+     * 查询染整线能源基础管理列表
+     *
+     * @param dyeEnergy 染整线能源基础管理
+     * @return 染整线能源基础管理集合
+     */
+    public List<DyeEnergy> selectDyeEnergyList(DyeEnergy dyeEnergy);
+
+    /**
+     * 新增染整线能源基础管理
+     *
+     * @param dyeEnergy 染整线能源基础管理
+     * @return 结果
+     */
+    public int insertDyeEnergy(DyeEnergy dyeEnergy);
+
+    /**
+     * 修改染整线能源基础管理
+     *
+     * @param dyeEnergy 染整线能源基础管理
+     * @return 结果
+     */
+    public int updateDyeEnergy(DyeEnergy dyeEnergy);
+
+    /**
+     * 批量删除染整线能源基础管理
+     *
+     * @param engIds 需要删除的染整线能源基础管理主键集合
+     * @return 结果
+     */
+    public int deleteDyeEnergyByEngIds(Long[] engIds);
+
+    /**
+     * 删除染整线能源基础管理信息
+     *
+     * @param engId 染整线能源基础管理主键
+     * @return 结果
+     */
+    public int deleteDyeEnergyByEngId(Long engId);
+}

+ 60 - 0
jjt-biz/src/main/java/com/jjt/dye/service/IDyeTypeService.java

@@ -0,0 +1,60 @@
+package com.jjt.dye.service;
+
+import java.util.List;
+import com.jjt.dye.domain.DyeType;
+
+/**
+ * 染整线设备类型管理Service接口
+ *
+ * @author wukai
+ * @date 2025-11-01
+ */
+public interface IDyeTypeService {
+    /**
+     * 查询染整线设备类型管理
+     *
+     * @param typeId 染整线设备类型管理主键
+     * @return 染整线设备类型管理
+     */
+    public DyeType selectDyeTypeByTypeId(Long typeId);
+
+    /**
+     * 查询染整线设备类型管理列表
+     *
+     * @param dyeType 染整线设备类型管理
+     * @return 染整线设备类型管理集合
+     */
+    public List<DyeType> selectDyeTypeList(DyeType dyeType);
+
+    /**
+     * 新增染整线设备类型管理
+     *
+     * @param dyeType 染整线设备类型管理
+     * @return 结果
+     */
+    public int insertDyeType(DyeType dyeType);
+
+    /**
+     * 修改染整线设备类型管理
+     *
+     * @param dyeType 染整线设备类型管理
+     * @return 结果
+     */
+    public int updateDyeType(DyeType dyeType);
+
+    /**
+     * 批量删除染整线设备类型管理
+     *
+     * @param typeIds 需要删除的染整线设备类型管理主键集合
+     * @return 结果
+     */
+    public int deleteDyeTypeByTypeIds(Long[] typeIds);
+
+    /**
+     * 删除染整线设备类型管理信息
+     *
+     * @param typeId 染整线设备类型管理主键
+     * @return 结果
+     */
+    public int deleteDyeTypeByTypeId(Long typeId);
+}

+ 86 - 0
jjt-biz/src/main/java/com/jjt/dye/service/impl/DyeCalcHourServiceImpl.java

@@ -0,0 +1,86 @@
+package com.jjt.dye.service.impl;
+
+import java.util.List;
+import org.springframework.stereotype.Service;
+import com.jjt.dye.mapper.DyeCalcHourMapper;
+import com.jjt.dye.domain.DyeCalcHour;
+import com.jjt.dye.service.IDyeCalcHourService;
+import javax.annotation.Resource;
+
+/**
+ * 小时统计数据Service业务层处理
+ *
+ * @author wukai
+ * @date 2025-11-01
+ */
+@Service
+public class DyeCalcHourServiceImpl implements IDyeCalcHourService {
+    @Resource
+    private DyeCalcHourMapper dyeCalcHourMapper;
+
+    /**
+     * 查询小时统计数据
+     *
+     * @param chId 小时统计数据主键
+     * @return 小时统计数据
+     */
+    @Override
+    public DyeCalcHour selectDyeCalcHourByChId(Long chId) {
+        return dyeCalcHourMapper.selectDyeCalcHourByChId(chId);
+    }
+
+    /**
+     * 查询小时统计数据列表
+     *
+     * @param dyeCalcHour 小时统计数据
+     * @return 小时统计数据
+     */
+    @Override
+    public List<DyeCalcHour> selectDyeCalcHourList(DyeCalcHour dyeCalcHour) {
+        return dyeCalcHourMapper.selectDyeCalcHourList(dyeCalcHour);
+    }
+
+    /**
+     * 新增小时统计数据
+     *
+     * @param dyeCalcHour 小时统计数据
+     * @return 结果
+     */
+    @Override
+    public int insertDyeCalcHour(DyeCalcHour dyeCalcHour) {
+            return dyeCalcHourMapper.insertDyeCalcHour(dyeCalcHour);
+    }
+
+    /**
+     * 修改小时统计数据
+     *
+     * @param dyeCalcHour 小时统计数据
+     * @return 结果
+     */
+    @Override
+    public int updateDyeCalcHour(DyeCalcHour dyeCalcHour) {
+        return dyeCalcHourMapper.updateDyeCalcHour(dyeCalcHour);
+    }
+
+    /**
+     * 批量删除小时统计数据
+     *
+     * @param chIds 需要删除的小时统计数据主键
+     * @return 结果
+     */
+    @Override
+    public int deleteDyeCalcHourByChIds(Long[] chIds) {
+        return dyeCalcHourMapper.deleteDyeCalcHourByChIds(chIds);
+    }
+
+    /**
+     * 删除小时统计数据信息
+     *
+     * @param chId 小时统计数据主键
+     * @return 结果
+     */
+    @Override
+    public int deleteDyeCalcHourByChId(Long chId) {
+        return dyeCalcHourMapper.deleteDyeCalcHourByChId(chId);
+    }
+}

+ 123 - 0
jjt-biz/src/main/java/com/jjt/dye/service/impl/DyeDeviceServiceImpl.java

@@ -0,0 +1,123 @@
+package com.jjt.dye.service.impl;
+
+import java.util.List;
+import org.springframework.stereotype.Service;
+    import java.util.ArrayList;
+
+    import com.jjt.common.utils.StringUtils;
+    import org.springframework.transaction.annotation.Transactional;
+    import com.jjt.dye.domain.DyeDevicePara;
+import com.jjt.dye.mapper.DyeDeviceMapper;
+import com.jjt.dye.domain.DyeDevice;
+import com.jjt.dye.service.IDyeDeviceService;
+import javax.annotation.Resource;
+
+/**
+ * 染整线设备管理Service业务层处理
+ *
+ * @author wukai
+ * @date 2025-11-01
+ */
+@Service
+public class DyeDeviceServiceImpl implements IDyeDeviceService {
+    @Resource
+    private DyeDeviceMapper dyeDeviceMapper;
+
+    /**
+     * 查询染整线设备管理
+     *
+     * @param deviceId 染整线设备管理主键
+     * @return 染整线设备管理
+     */
+    @Override
+    public DyeDevice selectDyeDeviceByDeviceId(Long deviceId) {
+        return dyeDeviceMapper.selectDyeDeviceByDeviceId(deviceId);
+    }
+
+    /**
+     * 查询染整线设备管理列表
+     *
+     * @param dyeDevice 染整线设备管理
+     * @return 染整线设备管理
+     */
+    @Override
+    public List<DyeDevice> selectDyeDeviceList(DyeDevice dyeDevice) {
+        return dyeDeviceMapper.selectDyeDeviceList(dyeDevice);
+    }
+
+    /**
+     * 新增染整线设备管理
+     *
+     * @param dyeDevice 染整线设备管理
+     * @return 结果
+     */
+        @Transactional
+    @Override
+    public int insertDyeDevice(DyeDevice dyeDevice) {
+            int rows = dyeDeviceMapper.insertDyeDevice(dyeDevice);
+            insertDyeDevicePara(dyeDevice);
+            return rows;
+    }
+
+    /**
+     * 修改染整线设备管理
+     *
+     * @param dyeDevice 染整线设备管理
+     * @return 结果
+     */
+        @Transactional
+    @Override
+    public int updateDyeDevice(DyeDevice dyeDevice) {
+                dyeDeviceMapper.deleteDyeDeviceParaByDeviceId(dyeDevice.getDeviceId())
+            ;
+            insertDyeDevicePara(dyeDevice);
+        return dyeDeviceMapper.updateDyeDevice(dyeDevice);
+    }
+
+    /**
+     * 批量删除染整线设备管理
+     *
+     * @param deviceIds 需要删除的染整线设备管理主键
+     * @return 结果
+     */
+        @Transactional
+    @Override
+    public int deleteDyeDeviceByDeviceIds(Long[] deviceIds) {
+                dyeDeviceMapper.deleteDyeDeviceParaByDeviceIds(deviceIds);
+        return dyeDeviceMapper.deleteDyeDeviceByDeviceIds(deviceIds);
+    }
+
+    /**
+     * 删除染整线设备管理信息
+     *
+     * @param deviceId 染整线设备管理主键
+     * @return 结果
+     */
+        @Transactional
+    @Override
+    public int deleteDyeDeviceByDeviceId(Long deviceId) {
+                dyeDeviceMapper.deleteDyeDeviceParaByDeviceId(deviceId);
+        return dyeDeviceMapper.deleteDyeDeviceByDeviceId(deviceId);
+    }
+
+        /**
+         * 新增染整线设备参数管理信息
+         *
+         * @param dyeDevice 染整线设备管理对象
+         */
+        public void insertDyeDevicePara(DyeDevice dyeDevice) {
+            List<DyeDevicePara> dyeDeviceParaList = dyeDevice.getDyeDeviceParaList();
+            Long deviceId = dyeDevice.getDeviceId();
+            if (StringUtils.isNotNull(dyeDeviceParaList)) {
+                List<DyeDevicePara> list = new ArrayList<DyeDevicePara>();
+                for (DyeDevicePara dyeDevicePara :dyeDeviceParaList)
+                {
+                    dyeDevicePara.setDeviceId(deviceId);
+                    list.add(dyeDevicePara);
+                }
+                if (list.size() > 0) {
+                        dyeDeviceMapper.batchDyeDevicePara(list);
+                }
+            }
+        }
+}

+ 86 - 0
jjt-biz/src/main/java/com/jjt/dye/service/impl/DyeEnergyServiceImpl.java

@@ -0,0 +1,86 @@
+package com.jjt.dye.service.impl;
+
+import java.util.List;
+import org.springframework.stereotype.Service;
+import com.jjt.dye.mapper.DyeEnergyMapper;
+import com.jjt.dye.domain.DyeEnergy;
+import com.jjt.dye.service.IDyeEnergyService;
+import javax.annotation.Resource;
+
+/**
+ * 染整线能源基础管理Service业务层处理
+ *
+ * @author wukai
+ * @date 2025-11-01
+ */
+@Service
+public class DyeEnergyServiceImpl implements IDyeEnergyService {
+    @Resource
+    private DyeEnergyMapper dyeEnergyMapper;
+
+    /**
+     * 查询染整线能源基础管理
+     *
+     * @param engId 染整线能源基础管理主键
+     * @return 染整线能源基础管理
+     */
+    @Override
+    public DyeEnergy selectDyeEnergyByEngId(Long engId) {
+        return dyeEnergyMapper.selectDyeEnergyByEngId(engId);
+    }
+
+    /**
+     * 查询染整线能源基础管理列表
+     *
+     * @param dyeEnergy 染整线能源基础管理
+     * @return 染整线能源基础管理
+     */
+    @Override
+    public List<DyeEnergy> selectDyeEnergyList(DyeEnergy dyeEnergy) {
+        return dyeEnergyMapper.selectDyeEnergyList(dyeEnergy);
+    }
+
+    /**
+     * 新增染整线能源基础管理
+     *
+     * @param dyeEnergy 染整线能源基础管理
+     * @return 结果
+     */
+    @Override
+    public int insertDyeEnergy(DyeEnergy dyeEnergy) {
+            return dyeEnergyMapper.insertDyeEnergy(dyeEnergy);
+    }
+
+    /**
+     * 修改染整线能源基础管理
+     *
+     * @param dyeEnergy 染整线能源基础管理
+     * @return 结果
+     */
+    @Override
+    public int updateDyeEnergy(DyeEnergy dyeEnergy) {
+        return dyeEnergyMapper.updateDyeEnergy(dyeEnergy);
+    }
+
+    /**
+     * 批量删除染整线能源基础管理
+     *
+     * @param engIds 需要删除的染整线能源基础管理主键
+     * @return 结果
+     */
+    @Override
+    public int deleteDyeEnergyByEngIds(Long[] engIds) {
+        return dyeEnergyMapper.deleteDyeEnergyByEngIds(engIds);
+    }
+
+    /**
+     * 删除染整线能源基础管理信息
+     *
+     * @param engId 染整线能源基础管理主键
+     * @return 结果
+     */
+    @Override
+    public int deleteDyeEnergyByEngId(Long engId) {
+        return dyeEnergyMapper.deleteDyeEnergyByEngId(engId);
+    }
+}

+ 121 - 0
jjt-biz/src/main/java/com/jjt/dye/service/impl/DyeTypeServiceImpl.java

@@ -0,0 +1,121 @@
+package com.jjt.dye.service.impl;
+
+import com.jjt.common.utils.StringUtils;
+import com.jjt.dye.domain.DyeType;
+import com.jjt.dye.domain.DyeTypePara;
+import com.jjt.dye.mapper.DyeTypeMapper;
+import com.jjt.dye.service.IDyeTypeService;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 染整线设备类型管理Service业务层处理
+ *
+ * @author wukai
+ * @date 2025-11-01
+ */
+@Service
+public class DyeTypeServiceImpl implements IDyeTypeService {
+    @Resource
+    private DyeTypeMapper dyeTypeMapper;
+
+    /**
+     * 查询染整线设备类型管理
+     *
+     * @param typeId 染整线设备类型管理主键
+     * @return 染整线设备类型管理
+     */
+    @Override
+    public DyeType selectDyeTypeByTypeId(Long typeId) {
+        return dyeTypeMapper.selectDyeTypeByTypeId(typeId);
+    }
+
+    /**
+     * 查询染整线设备类型管理列表
+     *
+     * @param dyeType 染整线设备类型管理
+     * @return 染整线设备类型管理
+     */
+    @Override
+    public List<DyeType> selectDyeTypeList(DyeType dyeType) {
+        return dyeTypeMapper.selectDyeTypeList(dyeType);
+    }
+
+    /**
+     * 新增染整线设备类型管理
+     *
+     * @param dyeType 染整线设备类型管理
+     * @return 结果
+     */
+    @Transactional
+    @Override
+    public int insertDyeType(DyeType dyeType) {
+        int rows = dyeTypeMapper.insertDyeType(dyeType);
+        insertDyeTypePara(dyeType);
+        return rows;
+    }
+
+    /**
+     * 修改染整线设备类型管理
+     *
+     * @param dyeType 染整线设备类型管理
+     * @return 结果
+     */
+    @Transactional
+    @Override
+    public int updateDyeType(DyeType dyeType) {
+        dyeTypeMapper.deleteDyeTypeParaByTypeId(dyeType.getTypeId());
+        insertDyeTypePara(dyeType);
+        return dyeTypeMapper.updateDyeType(dyeType);
+    }
+
+    /**
+     * 批量删除染整线设备类型管理
+     *
+     * @param typeIds 需要删除的染整线设备类型管理主键
+     * @return 结果
+     */
+    @Transactional
+    @Override
+    public int deleteDyeTypeByTypeIds(Long[] typeIds) {
+        dyeTypeMapper.deleteDyeTypeParaByTypeIds(typeIds);
+        return dyeTypeMapper.deleteDyeTypeByTypeIds(typeIds);
+    }
+
+    /**
+     * 删除染整线设备类型管理信息
+     *
+     * @param typeId 染整线设备类型管理主键
+     * @return 结果
+     */
+    @Transactional
+    @Override
+    public int deleteDyeTypeByTypeId(Long typeId) {
+        dyeTypeMapper.deleteDyeTypeParaByTypeId(typeId);
+        return dyeTypeMapper.deleteDyeTypeByTypeId(typeId);
+    }
+
+    /**
+     * 新增染整线设备类型参数管理信息
+     *
+     * @param dyeType 染整线设备类型管理对象
+     */
+    public void insertDyeTypePara(DyeType dyeType) {
+        List<DyeTypePara> dyeTypeParaList = dyeType.getDyeTypeParaList();
+        Long typeId = dyeType.getTypeId();
+        if (StringUtils.isNotNull(dyeTypeParaList)) {
+            List<DyeTypePara> list = new ArrayList<DyeTypePara>();
+            for (DyeTypePara dyeTypePara : dyeTypeParaList) {
+                dyeTypePara.setTypeId(typeId);
+                list.add(dyeTypePara);
+            }
+            if (list.size() > 0) {
+                dyeTypeMapper.batchDyeTypePara(list);
+            }
+        }
+    }
+}

+ 106 - 0
jjt-biz/src/main/resources/mapper/dye/DyeCalcHourMapper.xml

@@ -0,0 +1,106 @@
+<?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.dye.mapper.DyeCalcHourMapper">
+    
+    <resultMap type="DyeCalcHour" id="DyeCalcHourResult">
+        <result property="chId"    column="CH_ID"    />
+        <result property="dataDate"    column="DATA_DATE"    />
+        <result property="hour"    column="HOUR"    />
+        <result property="deviceId"    column="DEVICE_ID"    />
+        <result property="paraCode"    column="PARA_CODE"    />
+        <result property="paraName"    column="PARA_NAME"    />
+        <result property="paraValue"    column="PARA_VALUE"    />
+        <result property="paraMValue"    column="PARA_M_VALUE"    />
+        <result property="createdBy"    column="CREATED_BY"    />
+        <result property="createdTime"    column="CREATED_TIME"    />
+        <result property="updatedBy"    column="UPDATED_BY"    />
+        <result property="updatedTime"    column="UPDATED_TIME"    />
+        <result property="remark"    column="REMARK"    />
+    </resultMap>
+
+    <sql id="selectDyeCalcHourVo">
+        select CH_ID, DATA_DATE, HOUR, DEVICE_ID, PARA_CODE, PARA_NAME, PARA_VALUE, PARA_M_VALUE, CREATED_BY, CREATED_TIME, UPDATED_BY, UPDATED_TIME, REMARK from DYE_CALC_HOUR
+    </sql>
+
+    <select id="selectDyeCalcHourList" parameterType="DyeCalcHour" resultMap="DyeCalcHourResult">
+        <include refid="selectDyeCalcHourVo"/>
+        <where>  
+            <if test="dataDate != null "> and DATA_DATE = #{dataDate}</if>
+            <if test="hour != null "> and HOUR = #{hour}</if>
+            <if test="deviceId != null "> and DEVICE_ID = #{deviceId}</if>
+            <if test="paraCode != null  and paraCode != ''"> and PARA_CODE = #{paraCode}</if>
+            <if test="paraName != null  and paraName != ''"> and PARA_NAME like concat('%', #{paraName}, '%')</if>
+            <if test="paraValue != null "> and PARA_VALUE = #{paraValue}</if>
+            <if test="paraMValue != null  and paraMValue != ''"> and PARA_M_VALUE = #{paraMValue}</if>
+        </where>
+    </select>
+    
+    <select id="selectDyeCalcHourByChId" parameterType="Long" resultMap="DyeCalcHourResult">
+        <include refid="selectDyeCalcHourVo"/>
+        where CH_ID = #{chId}
+    </select>
+
+    <insert id="insertDyeCalcHour" parameterType="DyeCalcHour" useGeneratedKeys="true" keyProperty="chId">
+        insert into DYE_CALC_HOUR
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="dataDate != null">DATA_DATE,</if>
+            <if test="hour != null">HOUR,</if>
+            <if test="deviceId != null">DEVICE_ID,</if>
+            <if test="paraCode != null">PARA_CODE,</if>
+            <if test="paraName != null">PARA_NAME,</if>
+            <if test="paraValue != null">PARA_VALUE,</if>
+            <if test="paraMValue != null">PARA_M_VALUE,</if>
+            <if test="createdBy != null">CREATED_BY,</if>
+            <if test="createdTime != null">CREATED_TIME,</if>
+            <if test="updatedBy != null">UPDATED_BY,</if>
+            <if test="updatedTime != null">UPDATED_TIME,</if>
+            <if test="remark != null">REMARK,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="dataDate != null">#{dataDate},</if>
+            <if test="hour != null">#{hour},</if>
+            <if test="deviceId != null">#{deviceId},</if>
+            <if test="paraCode != null">#{paraCode},</if>
+            <if test="paraName != null">#{paraName},</if>
+            <if test="paraValue != null">#{paraValue},</if>
+            <if test="paraMValue != null">#{paraMValue},</if>
+            <if test="createdBy != null">#{createdBy},</if>
+            <if test="createdTime != null">#{createdTime},</if>
+            <if test="updatedBy != null">#{updatedBy},</if>
+            <if test="updatedTime != null">#{updatedTime},</if>
+            <if test="remark != null">#{remark},</if>
+         </trim>
+    </insert>
+
+    <update id="updateDyeCalcHour" parameterType="DyeCalcHour">
+        update DYE_CALC_HOUR
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="dataDate != null">DATA_DATE = #{dataDate},</if>
+            <if test="hour != null">HOUR = #{hour},</if>
+            <if test="deviceId != null">DEVICE_ID = #{deviceId},</if>
+            <if test="paraCode != null">PARA_CODE = #{paraCode},</if>
+            <if test="paraName != null">PARA_NAME = #{paraName},</if>
+            <if test="paraValue != null">PARA_VALUE = #{paraValue},</if>
+            <if test="paraMValue != null">PARA_M_VALUE = #{paraMValue},</if>
+            <if test="createdBy != null">CREATED_BY = #{createdBy},</if>
+            <if test="createdTime != null">CREATED_TIME = #{createdTime},</if>
+            <if test="updatedBy != null">UPDATED_BY = #{updatedBy},</if>
+            <if test="updatedTime != null">UPDATED_TIME = #{updatedTime},</if>
+            <if test="remark != null">REMARK = #{remark},</if>
+        </trim>
+        where CH_ID = #{chId}
+    </update>
+
+    <delete id="deleteDyeCalcHourByChId" parameterType="Long">
+        delete from DYE_CALC_HOUR where CH_ID = #{chId}
+    </delete>
+
+    <delete id="deleteDyeCalcHourByChIds" parameterType="String">
+        delete from DYE_CALC_HOUR where CH_ID in 
+        <foreach item="chId" collection="array" open="(" separator="," close=")">
+            #{chId}
+        </foreach>
+    </delete>
+</mapper>

+ 207 - 0
jjt-biz/src/main/resources/mapper/dye/DyeDeviceMapper.xml

@@ -0,0 +1,207 @@
+<?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.dye.mapper.DyeDeviceMapper">
+
+    <resultMap type="DyeDevice" id="DyeDeviceResult">
+        <result property="deviceId" column="DEVICE_ID"/>
+        <result property="typeId" column="TYPE_ID"/>
+        <result property="wsName" column="WS_NAME"/>
+        <result property="line" column="LINE"/>
+        <result property="typeName" column="TYPE_NAME"/>
+        <result property="deviceCode" column="DEVICE_CODE"/>
+        <result property="sortNum" column="SORT_NUM"/>
+        <result property="deviceName" column="DEVICE_NAME"/>
+        <result property="devicePath" column="DEVICE_PATH"/>
+        <result property="createdBy" column="CREATED_BY"/>
+        <result property="createdTime" column="CREATED_TIME"/>
+        <result property="updatedBy" column="UPDATED_BY"/>
+        <result property="updatedTime" column="UPDATED_TIME"/>
+        <result property="remark" column="REMARK"/>
+    </resultMap>
+
+    <resultMap id="DyeDeviceDyeDeviceParaResult" type="DyeDevice" extends="DyeDeviceResult">
+        <collection property="dyeDeviceParaList" ofType="DyeDevicePara" column="DEVICE_ID"
+                    select="selectDyeDeviceParaList"/>
+    </resultMap>
+
+    <resultMap type="DyeDevicePara" id="DyeDeviceParaResult">
+        <result property="paraId" column="PARA_ID"/>
+        <result property="deviceId" column="DEVICE_ID"/>
+        <result property="paraCode" column="PARA_CODE"/>
+        <result property="paraName" column="PARA_NAME"/>
+        <result property="paraExp" column="PARA_EXP"/>
+        <result property="paraAlarm" column="PARA_ALARM"/>
+        <result property="lineStand" column="LINE_STAND"/>
+        <result property="createdBy" column="CREATED_BY"/>
+        <result property="createdTime" column="CREATED_TIME"/>
+        <result property="updatedBy" column="UPDATED_BY"/>
+        <result property="updatedTime" column="UPDATED_TIME"/>
+        <result property="remark" column="REMARK"/>
+    </resultMap>
+
+    <sql id="selectDyeDeviceVo">
+        select DEVICE_ID,
+               TYPE_ID,
+               WS_NAME,
+               LINE,
+               TYPE_NAME,
+               DEVICE_CODE,
+               SORT_NUM,
+               DEVICE_NAME,
+               DEVICE_PATH,
+               CREATED_BY,
+               CREATED_TIME,
+               UPDATED_BY,
+               UPDATED_TIME,
+               REMARK
+        from DYE_DEVICE
+    </sql>
+
+    <select id="selectDyeDeviceList" parameterType="DyeDevice" resultMap="DyeDeviceResult">
+        <include refid="selectDyeDeviceVo"/>
+        <where>
+            <if test="typeId != null ">and TYPE_ID = #{typeId}</if>
+            <if test="wsName != null  and wsName != ''">and WS_NAME like concat('%', #{wsName}, '%')</if>
+            <if test="line != null  and line != ''">and LINE = #{line}</if>
+            <if test="typeName != null  and typeName != ''">and TYPE_NAME like concat('%', #{typeName}, '%')</if>
+            <if test="deviceCode != null  and deviceCode != ''">and DEVICE_CODE = #{deviceCode}</if>
+            <if test="deviceName != null  and deviceName != ''">and DEVICE_NAME like concat('%', #{deviceName}, '%')
+            </if>
+            <if test="devicePath != null  and devicePath != ''">and DEVICE_PATH = #{devicePath}</if>
+            <if test="createdBy != null  and createdBy != ''">and CREATED_BY = #{createdBy}</if>
+            <if test="createdTime != null ">and CREATED_TIME = #{createdTime}</if>
+            <if test="updatedBy != null  and updatedBy != ''">and UPDATED_BY = #{updatedBy}</if>
+            <if test="updatedTime != null ">and UPDATED_TIME = #{updatedTime}</if>
+            <if test="remark != null  and remark != ''">and REMARK = #{remark}</if>
+        </where>
+        order by line, SORT_NUM
+    </select>
+
+    <select id="selectDyeDeviceByDeviceId" parameterType="Long" resultMap="DyeDeviceDyeDeviceParaResult">
+        select DEVICE_ID,
+               TYPE_ID,
+               WS_NAME,
+               LINE,
+               TYPE_NAME,
+               DEVICE_CODE,
+               SORT_NUM,
+               DEVICE_NAME,
+               DEVICE_PATH,
+               CREATED_BY,
+               CREATED_TIME,
+               UPDATED_BY,
+               UPDATED_TIME,
+               REMARK
+        from DYE_DEVICE
+        where DEVICE_ID = #{deviceId}
+    </select>
+
+    <select id="selectDyeDeviceParaList" resultMap="DyeDeviceParaResult">
+        select PARA_ID,
+               DEVICE_ID,
+               PARA_CODE,
+               PARA_NAME,
+               PARA_EXP,
+               PARA_ALARM,
+               LINE_STAND,
+               CREATED_BY,
+               CREATED_TIME,
+               UPDATED_BY,
+               UPDATED_TIME,
+               REMARK
+        from DYE_DEVICE_PARA
+        where DEVICE_ID = #{DEVICE_ID}
+    </select>
+
+    <insert id="insertDyeDevice" parameterType="DyeDevice" useGeneratedKeys="true" keyProperty="deviceId">
+        insert into DYE_DEVICE
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="typeId != null">TYPE_ID,</if>
+            <if test="wsName != null">WS_NAME,</if>
+            <if test="line != null">LINE,</if>
+            <if test="typeName != null">TYPE_NAME,</if>
+            <if test="deviceCode != null">DEVICE_CODE,</if>
+            <if test="sortNum != null">SORT_NUM,</if>
+            <if test="deviceName != null">DEVICE_NAME,</if>
+            <if test="devicePath != null">DEVICE_PATH,</if>
+            <if test="createdBy != null">CREATED_BY,</if>
+            <if test="createdTime != null">CREATED_TIME,</if>
+            <if test="updatedBy != null">UPDATED_BY,</if>
+            <if test="updatedTime != null">UPDATED_TIME,</if>
+            <if test="remark != null">REMARK,</if>
+        </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="typeId != null">#{typeId},</if>
+            <if test="wsName != null">#{wsName},</if>
+            <if test="line != null">#{line},</if>
+            <if test="typeName != null">#{typeName},</if>
+            <if test="deviceCode != null">#{deviceCode},</if>
+            <if test="sortNum != null">#{sortNum},</if>
+            <if test="deviceName != null">#{deviceName},</if>
+            <if test="devicePath != null">#{devicePath},</if>
+            <if test="createdBy != null">#{createdBy},</if>
+            <if test="createdTime != null">#{createdTime},</if>
+            <if test="updatedBy != null">#{updatedBy},</if>
+            <if test="updatedTime != null">#{updatedTime},</if>
+            <if test="remark != null">#{remark},</if>
+        </trim>
+    </insert>
+
+    <update id="updateDyeDevice" parameterType="DyeDevice">
+        update DYE_DEVICE
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="typeId != null">TYPE_ID = #{typeId},</if>
+            <if test="wsName != null">WS_NAME = #{wsName},</if>
+            <if test="line != null">LINE = #{line},</if>
+            <if test="typeName != null">TYPE_NAME = #{typeName},</if>
+            <if test="deviceCode != null">DEVICE_CODE = #{deviceCode},</if>
+            <if test="sortNum != null">SORT_NUM = #{sortNum},</if>
+            <if test="deviceName != null">DEVICE_NAME = #{deviceName},</if>
+            <if test="devicePath != null">DEVICE_PATH = #{devicePath},</if>
+            <if test="createdBy != null">CREATED_BY = #{createdBy},</if>
+            <if test="createdTime != null">CREATED_TIME = #{createdTime},</if>
+            <if test="updatedBy != null">UPDATED_BY = #{updatedBy},</if>
+            <if test="updatedTime != null">UPDATED_TIME = #{updatedTime},</if>
+            <if test="remark != null">REMARK = #{remark},</if>
+        </trim>
+        where DEVICE_ID = #{deviceId}
+    </update>
+
+    <delete id="deleteDyeDeviceByDeviceId" parameterType="Long">
+        delete
+        from DYE_DEVICE
+        where DEVICE_ID = #{deviceId}
+    </delete>
+
+    <delete id="deleteDyeDeviceByDeviceIds" parameterType="String">
+        delete from DYE_DEVICE where DEVICE_ID in
+        <foreach item="deviceId" collection="array" open="(" separator="," close=")">
+            #{deviceId}
+        </foreach>
+    </delete>
+
+    <delete id="deleteDyeDeviceParaByDeviceIds" parameterType="String">
+        delete from DYE_DEVICE_PARA where DEVICE_ID in
+        <foreach item="deviceId" collection="array" open="(" separator="," close=")">
+            #{deviceId}
+        </foreach>
+    </delete>
+
+    <delete id="deleteDyeDeviceParaByDeviceId" parameterType="Long">
+        delete
+        from DYE_DEVICE_PARA
+        where DEVICE_ID = #{deviceId}
+    </delete>
+
+    <insert id="batchDyeDevicePara">
+        insert into DYE_DEVICE_PARA(DEVICE_ID, PARA_CODE, PARA_NAME, PARA_EXP, PARA_ALARM, LINE_STAND, CREATED_BY,
+        CREATED_TIME, UPDATED_BY, UPDATED_TIME, REMARK) values
+        <foreach item="item" index="index" collection="list" separator=",">
+            ( #{item.deviceId}, #{item.paraCode}, #{item.paraName}, #{item.paraExp}, #{item.paraAlarm},
+            #{item.lineStand}, #{item.createdBy}, #{item.createdTime}, #{item.updatedBy}, #{item.updatedTime},
+            #{item.remark})
+        </foreach>
+    </insert>
+</mapper>

+ 91 - 0
jjt-biz/src/main/resources/mapper/dye/DyeEnergyMapper.xml

@@ -0,0 +1,91 @@
+<?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.dye.mapper.DyeEnergyMapper">
+    
+    <resultMap type="DyeEnergy" id="DyeEnergyResult">
+        <result property="engId"    column="ENG_ID"    />
+        <result property="engCode"    column="ENG_CODE"    />
+        <result property="engName"    column="ENG_NAME"    />
+        <result property="lineStand"    column="LINE_STAND"    />
+        <result property="createdBy"    column="CREATED_BY"    />
+        <result property="createdTime"    column="CREATED_TIME"    />
+        <result property="updatedBy"    column="UPDATED_BY"    />
+        <result property="updatedTime"    column="UPDATED_TIME"    />
+        <result property="remark"    column="REMARK"    />
+    </resultMap>
+
+    <sql id="selectDyeEnergyVo">
+        select ENG_ID, ENG_CODE, ENG_NAME, LINE_STAND, CREATED_BY, CREATED_TIME, UPDATED_BY, UPDATED_TIME, REMARK from DYE_ENERGY
+    </sql>
+
+    <select id="selectDyeEnergyList" parameterType="DyeEnergy" resultMap="DyeEnergyResult">
+        <include refid="selectDyeEnergyVo"/>
+        <where>  
+            <if test="engCode != null  and engCode != ''"> and ENG_CODE = #{engCode}</if>
+            <if test="engName != null  and engName != ''"> and ENG_NAME like concat('%', #{engName}, '%')</if>
+            <if test="lineStand != null  and lineStand != ''"> and LINE_STAND = #{lineStand}</if>
+            <if test="createdBy != null  and createdBy != ''"> and CREATED_BY = #{createdBy}</if>
+            <if test="createdTime != null "> and CREATED_TIME = #{createdTime}</if>
+            <if test="updatedBy != null  and updatedBy != ''"> and UPDATED_BY = #{updatedBy}</if>
+            <if test="updatedTime != null "> and UPDATED_TIME = #{updatedTime}</if>
+            <if test="remark != null  and remark != ''"> and REMARK = #{remark}</if>
+        </where>
+    </select>
+    
+    <select id="selectDyeEnergyByEngId" parameterType="Long" resultMap="DyeEnergyResult">
+        <include refid="selectDyeEnergyVo"/>
+        where ENG_ID = #{engId}
+    </select>
+
+    <insert id="insertDyeEnergy" parameterType="DyeEnergy" useGeneratedKeys="true" keyProperty="engId">
+        insert into DYE_ENERGY
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="engCode != null">ENG_CODE,</if>
+            <if test="engName != null">ENG_NAME,</if>
+            <if test="lineStand != null">LINE_STAND,</if>
+            <if test="createdBy != null">CREATED_BY,</if>
+            <if test="createdTime != null">CREATED_TIME,</if>
+            <if test="updatedBy != null">UPDATED_BY,</if>
+            <if test="updatedTime != null">UPDATED_TIME,</if>
+            <if test="remark != null">REMARK,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="engCode != null">#{engCode},</if>
+            <if test="engName != null">#{engName},</if>
+            <if test="lineStand != null">#{lineStand},</if>
+            <if test="createdBy != null">#{createdBy},</if>
+            <if test="createdTime != null">#{createdTime},</if>
+            <if test="updatedBy != null">#{updatedBy},</if>
+            <if test="updatedTime != null">#{updatedTime},</if>
+            <if test="remark != null">#{remark},</if>
+         </trim>
+    </insert>
+
+    <update id="updateDyeEnergy" parameterType="DyeEnergy">
+        update DYE_ENERGY
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="engCode != null">ENG_CODE = #{engCode},</if>
+            <if test="engName != null">ENG_NAME = #{engName},</if>
+            <if test="lineStand != null">LINE_STAND = #{lineStand},</if>
+            <if test="createdBy != null">CREATED_BY = #{createdBy},</if>
+            <if test="createdTime != null">CREATED_TIME = #{createdTime},</if>
+            <if test="updatedBy != null">UPDATED_BY = #{updatedBy},</if>
+            <if test="updatedTime != null">UPDATED_TIME = #{updatedTime},</if>
+            <if test="remark != null">REMARK = #{remark},</if>
+        </trim>
+        where ENG_ID = #{engId}
+    </update>
+
+    <delete id="deleteDyeEnergyByEngId" parameterType="Long">
+        delete from DYE_ENERGY where ENG_ID = #{engId}
+    </delete>
+
+    <delete id="deleteDyeEnergyByEngIds" parameterType="String">
+        delete from DYE_ENERGY where ENG_ID in 
+        <foreach item="engId" collection="array" open="(" separator="," close=")">
+            #{engId}
+        </foreach>
+    </delete>
+</mapper>

+ 165 - 0
jjt-biz/src/main/resources/mapper/dye/DyeTypeMapper.xml

@@ -0,0 +1,165 @@
+<?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.dye.mapper.DyeTypeMapper">
+
+    <resultMap type="DyeType" id="DyeTypeResult">
+        <result property="typeId" column="TYPE_ID"/>
+        <result property="typeName" column="TYPE_NAME"/>
+        <result property="wsName" column="WS_NAME"/>
+        <result property="typeMatch" column="TYPE_MATCH"/>
+        <result property="createdBy" column="CREATED_BY"/>
+        <result property="createdTime" column="CREATED_TIME"/>
+        <result property="updatedBy" column="UPDATED_BY"/>
+        <result property="updatedTime" column="UPDATED_TIME"/>
+        <result property="remark" column="REMARK"/>
+    </resultMap>
+
+    <resultMap id="DyeTypeDyeTypeParaResult" type="DyeType" extends="DyeTypeResult">
+        <collection property="dyeTypeParaList" ofType="DyeTypePara" column="TYPE_ID" select="selectDyeTypeParaList"/>
+    </resultMap>
+
+    <resultMap type="DyeTypePara" id="DyeTypeParaResult">
+        <result property="tparaId" column="TPARA_ID"/>
+        <result property="typeId" column="TYPE_ID"/>
+        <result property="paraCode" column="PARA_CODE"/>
+        <result property="paraName" column="PARA_NAME"/>
+        <result property="paraExp" column="PARA_EXP"/>
+        <result property="paraAlarm" column="PARA_ALARM"/>
+        <result property="createdBy" column="CREATED_BY"/>
+        <result property="createdTime" column="CREATED_TIME"/>
+        <result property="updatedBy" column="UPDATED_BY"/>
+        <result property="updatedTime" column="UPDATED_TIME"/>
+        <result property="remark" column="REMARK"/>
+    </resultMap>
+
+    <sql id="selectDyeTypeVo">
+        select TYPE_ID,
+               TYPE_NAME,
+               WS_NAME,
+               TYPE_MATCH,
+               CREATED_BY,
+               CREATED_TIME,
+               UPDATED_BY,
+               UPDATED_TIME,
+               REMARK
+        from DYE_TYPE
+    </sql>
+
+    <select id="selectDyeTypeList" parameterType="DyeType" resultMap="DyeTypeResult">
+        <include refid="selectDyeTypeVo"/>
+        <where>
+            <if test="typeName != null  and typeName != ''">and TYPE_NAME like concat('%', #{typeName}, '%')</if>
+            <if test="wsName != null  and wsName != ''">and WS_NAME like concat('%', #{wsName}, '%')</if>
+            <if test="typeMatch != null  and typeMatch != ''">and TYPE_MATCH = #{typeMatch}</if>
+        </where>
+    </select>
+
+    <select id="selectDyeTypeByTypeId" parameterType="Long" resultMap="DyeTypeDyeTypeParaResult">
+        select TYPE_ID,
+               TYPE_NAME,
+               WS_NAME,
+               TYPE_MATCH,
+               CREATED_BY,
+               CREATED_TIME,
+               UPDATED_BY,
+               UPDATED_TIME,
+               REMARK
+        from DYE_TYPE
+        where TYPE_ID = #{typeId}
+    </select>
+
+    <select id="selectDyeTypeParaList" resultMap="DyeTypeParaResult">
+        select TPARA_ID,
+               TYPE_ID,
+               PARA_CODE,
+               PARA_NAME,
+               PARA_EXP,
+               PARA_ALARM,
+               LINE_STAND,
+               CUSTOM_CONFIG,
+               CREATED_BY,
+               CREATED_TIME,
+               UPDATED_BY,
+               UPDATED_TIME,
+               REMARK
+        from DYE_TYPE_PARA
+        where TYPE_ID = #{TYPE_ID}
+    </select>
+
+    <insert id="insertDyeType" parameterType="DyeType" useGeneratedKeys="true" keyProperty="typeId">
+        insert into DYE_TYPE
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="typeName != null">TYPE_NAME,</if>
+            <if test="wsName != null">WS_NAME,</if>
+            <if test="typeMatch != null">TYPE_MATCH,</if>
+            <if test="createdBy != null">CREATED_BY,</if>
+            <if test="createdTime != null">CREATED_TIME,</if>
+            <if test="updatedBy != null">UPDATED_BY,</if>
+            <if test="updatedTime != null">UPDATED_TIME,</if>
+            <if test="remark != null">REMARK,</if>
+        </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="typeName != null">#{typeName},</if>
+            <if test="wsName != null">#{wsName},</if>
+            <if test="typeMatch != null">#{typeMatch},</if>
+            <if test="createdBy != null">#{createdBy},</if>
+            <if test="createdTime != null">#{createdTime},</if>
+            <if test="updatedBy != null">#{updatedBy},</if>
+            <if test="updatedTime != null">#{updatedTime},</if>
+            <if test="remark != null">#{remark},</if>
+        </trim>
+    </insert>
+
+    <update id="updateDyeType" parameterType="DyeType">
+        update DYE_TYPE
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="typeName != null">TYPE_NAME = #{typeName},</if>
+            <if test="wsName != null">WS_NAME = #{wsName},</if>
+            <if test="typeMatch != null">TYPE_MATCH = #{typeMatch},</if>
+            <if test="createdBy != null">CREATED_BY = #{createdBy},</if>
+            <if test="createdTime != null">CREATED_TIME = #{createdTime},</if>
+            <if test="updatedBy != null">UPDATED_BY = #{updatedBy},</if>
+            <if test="updatedTime != null">UPDATED_TIME = #{updatedTime},</if>
+            <if test="remark != null">REMARK = #{remark},</if>
+        </trim>
+        where TYPE_ID = #{typeId}
+    </update>
+
+    <delete id="deleteDyeTypeByTypeId" parameterType="Long">
+        delete
+        from DYE_TYPE
+        where TYPE_ID = #{typeId}
+    </delete>
+
+    <delete id="deleteDyeTypeByTypeIds" parameterType="String">
+        delete from DYE_TYPE where TYPE_ID in
+        <foreach item="typeId" collection="array" open="(" separator="," close=")">
+            #{typeId}
+        </foreach>
+    </delete>
+
+    <delete id="deleteDyeTypeParaByTypeIds" parameterType="String">
+        delete from DYE_TYPE_PARA where TYPE_ID in
+        <foreach item="typeId" collection="array" open="(" separator="," close=")">
+            #{typeId}
+        </foreach>
+    </delete>
+
+    <delete id="deleteDyeTypeParaByTypeId" parameterType="Long">
+        delete
+        from DYE_TYPE_PARA
+        where TYPE_ID = #{typeId}
+    </delete>
+
+    <insert id="batchDyeTypePara">
+        insert into DYE_TYPE_PARA(TYPE_ID, PARA_CODE, PARA_NAME, PARA_EXP, PARA_ALARM,LINE_STAND,CUSTOM_CONFIG,
+        CREATED_BY, CREATED_TIME, UPDATED_BY, UPDATED_TIME, REMARK) values
+        <foreach item="item" index="index" collection="list" separator=",">
+            (#{item.typeId}, #{item.paraCode}, #{item.paraName}, #{item.paraExp},
+            #{item.paraAlarm},#{item.lineStand},#{item.customConfig},#{item.createdBy}, #{item.createdTime},
+            #{item.updatedBy}, #{item.updatedTime}, #{item.remark})
+        </foreach>
+    </insert>
+</mapper>