执行重构加入镀锌线1的后端调用接口

This commit is contained in:
2026-01-29 19:15:43 +08:00
parent 08a5f9bb13
commit e6c6dbc3e7
134 changed files with 3676 additions and 3104 deletions

View File

@@ -0,0 +1,67 @@
package com.klp.pocket.acid.controller;
import com.klp.common.core.controller.BaseController;
import com.klp.common.core.domain.PageQuery;
import com.klp.common.core.domain.R;
import com.klp.common.core.page.TableDataInfo;
import com.klp.pocket.acid.domain.Klptcm1ProPlantStateCurrent;
import com.klp.pocket.acid.service.IKlptcm1ProPlantStateCurrentService;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.Date;
import java.math.BigDecimal;
import org.springframework.format.annotation.DateTimeFormat;
@RestController
@RequestMapping("/pocket/proPlantStateCurrent")
public class Klptcm1ProPlantStateCurrentController extends BaseController {
@Resource
private IKlptcm1ProPlantStateCurrentService klptcm1ProPlantStateCurrentService;
/**
* 查询所有数据
*/
@GetMapping("/selectAll")
public TableDataInfo<Klptcm1ProPlantStateCurrent> selectAll(PageQuery pageQuery) {
return klptcm1ProPlantStateCurrentService.selectAll(pageQuery);
}
/**
* 查询单条(按 INSDATE + TYPE
*/
@GetMapping("/one")
public R<Klptcm1ProPlantStateCurrent> getOne(
@RequestParam("type") BigDecimal type,
@RequestParam("insdate") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") Date insdate) {
return R.ok(klptcm1ProPlantStateCurrentService.selectOne(insdate, type));
}
/**
* 新增一条 current 记录
*/
@PostMapping
public R<Void> add(@RequestBody Klptcm1ProPlantStateCurrent entity) {
return toAjax(klptcm1ProPlantStateCurrentService.insert(entity));
}
/**
* 修改一条 current 记录(依据 INSDATE + TYPE
*/
@PutMapping
public R<Void> edit(@RequestBody Klptcm1ProPlantStateCurrent entity) {
return toAjax(klptcm1ProPlantStateCurrentService.updateByKey(entity));
}
/**
* 删除一条 current 记录(按 INSDATE + TYPE
*/
@DeleteMapping
public R<Void> remove(
@RequestParam("type") BigDecimal type,
@RequestParam("insdate") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") Date insdate) {
return toAjax(klptcm1ProPlantStateCurrentService.deleteByKey(insdate, type));
}
}

View File

@@ -0,0 +1,70 @@
package com.klp.pocket.acid.controller;
import com.klp.common.core.controller.BaseController;
import com.klp.common.core.domain.PageQuery;
import com.klp.common.core.page.TableDataInfo;
import com.klp.pocket.acid.domain.Klptcm1ProPlantStateDefine;
import com.klp.pocket.acid.domain.vo.PlantStateWithValueVo;
import com.klp.pocket.acid.service.IKlptcm1ProPlantStateDefineService;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.List;
import com.klp.common.core.domain.R;
/**
* 工厂状态定义表Controller
* 提供RESTful接口处理前端请求
*/
@RestController
@RequestMapping("/pocket/proPlantStateDefine")
public class Klptcm1ProPlantStateDefineController extends BaseController {
@Resource
private IKlptcm1ProPlantStateDefineService defineService;
/**
* 获取所有定义及其当前值(用于前端初始化缓存)
* @return 所有定义列表,每个定义包含对应的当前值
*/
@GetMapping("/allWithValues")
public R<List<PlantStateWithValueVo>> getAllWithValues() {
return R.ok(defineService.selectAllWithValues());
}
@GetMapping("/plant/state")
public List<PlantStateWithValueVo> getTopByValue(@RequestParam String name) {
return defineService.selectByValue(name);
}
/**
* 分页查询状态定义列表
* @param pageQuery 分页参数(请求参数,如?pageNum=1&pageSize=10
* @return 分页表格数据
*/
@GetMapping("/listPage")
public TableDataInfo<Klptcm1ProPlantStateDefine> getDefinePage(PageQuery pageQuery) {
return defineService.getDefinePage(pageQuery);
}
@GetMapping("/{id}")
public R<Klptcm1ProPlantStateDefine> getInfo(@PathVariable BigDecimal id) {
return R.ok(defineService.selectById(id));
}
@PostMapping
public R<Void> add(@RequestBody Klptcm1ProPlantStateDefine entity) {
return toAjax(defineService.insert(entity));
}
@PutMapping
public R<Void> edit(@RequestBody Klptcm1ProPlantStateDefine entity) {
return toAjax(defineService.updateById(entity));
}
@DeleteMapping("/{ids}")
public R<Void> remove(@PathVariable List<BigDecimal> ids) {
return toAjax(defineService.deleteByIds(ids));
}
}

View File

@@ -0,0 +1,88 @@
package com.klp.pocket.acid.controller;
import com.klp.common.annotation.Log;
import com.klp.common.annotation.RepeatSubmit;
import com.klp.common.core.domain.R;
import com.klp.common.core.validate.AddGroup;
import com.klp.common.core.validate.EditGroup;
import com.klp.common.enums.BusinessType;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import com.klp.common.core.controller.BaseController;
import com.klp.common.core.domain.PageQuery;
import com.klp.pocket.acid.domain.vo.Klptcm1ProPlantStateHistoryVo;
import com.klp.pocket.acid.domain.bo.Klptcm1ProPlantStateHistoryBo;
import com.klp.pocket.acid.service.IKlptcm1ProPlantStateHistoryService;
import com.klp.common.core.page.TableDataInfo;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.Arrays;
import java.util.Date;
/**
* 历史
*
* @author klp
* @date 2025-10-27
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/pocket/proPlantStateHistory")
public class Klptcm1ProPlantStateHistoryController extends BaseController {
private final IKlptcm1ProPlantStateHistoryService iKlptcm1ProPlantStateHistoryService;
/**
* 查询历史列表
*/
@GetMapping("/list")
public TableDataInfo<Klptcm1ProPlantStateHistoryVo> list(Klptcm1ProPlantStateHistoryBo bo, PageQuery pageQuery) {
return iKlptcm1ProPlantStateHistoryService.queryPageList(bo, pageQuery);
}
/**
* 获取历史详细信息
*
* @param INSDATE 主键
*/
@GetMapping("/{INSDATE}")
public R<Klptcm1ProPlantStateHistoryVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Date INSDATE) {
return R.ok(iKlptcm1ProPlantStateHistoryService.queryById(INSDATE));
}
/**
* 新增历史
*/
@Log(title = "历史", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody Klptcm1ProPlantStateHistoryBo bo) {
return toAjax(iKlptcm1ProPlantStateHistoryService.insertByBo(bo));
}
/**
* 修改历史
*/
@Log(title = "历史", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody Klptcm1ProPlantStateHistoryBo bo) {
return toAjax(iKlptcm1ProPlantStateHistoryService.updateByBo(bo));
}
/**
* 删除历史
*
* @param INSDATEs 主键串
*/
@Log(title = "历史", businessType = BusinessType.DELETE)
@DeleteMapping("/{INSDATEs}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Date[] INSDATEs) {
return toAjax(iKlptcm1ProPlantStateHistoryService.deleteWithValidByIds(Arrays.asList(INSDATEs), true));
}
}

View File

@@ -0,0 +1,87 @@
package com.klp.pocket.acid.controller;
import com.klp.common.annotation.Log;
import com.klp.common.annotation.RepeatSubmit;
import com.klp.common.core.domain.R;
import com.klp.common.core.validate.AddGroup;
import com.klp.common.core.validate.EditGroup;
import com.klp.common.enums.BusinessType;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import com.klp.common.core.controller.BaseController;
import com.klp.common.core.domain.PageQuery;
import com.klp.pocket.acid.domain.vo.Klptcm1ProStoppageVo;
import com.klp.pocket.acid.domain.bo.Klptcm1ProStoppageBo;
import com.klp.pocket.acid.service.IKlptcm1ProStoppageService;
import com.klp.common.core.page.TableDataInfo;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.Arrays;
/**
* 停机
*
* @author klp
* @date 2025-10-27
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/pocket/proStoppage")
public class Klptcm1ProStoppageController extends BaseController {
private final IKlptcm1ProStoppageService iKlptcm1ProStoppageService;
/**
* 查询停机列表
*/
@GetMapping("/list")
public TableDataInfo<Klptcm1ProStoppageVo> list(Klptcm1ProStoppageBo bo, PageQuery pageQuery) {
return iKlptcm1ProStoppageService.queryPageList(bo, pageQuery);
}
/**
* 获取停机详细信息
*
* @param STOPID 主键
*/
@GetMapping("/{STOPID}")
public R<Klptcm1ProStoppageVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long STOPID) {
return R.ok(iKlptcm1ProStoppageService.queryById(STOPID));
}
/**
* 新增停机
*/
@Log(title = "停机", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody Klptcm1ProStoppageBo bo) {
return toAjax(iKlptcm1ProStoppageService.insertByBo(bo));
}
/**
* 修改停机
*/
@Log(title = "停机", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody Klptcm1ProStoppageBo bo) {
return toAjax(iKlptcm1ProStoppageService.updateByBo(bo));
}
/**
* 删除停机
*
* @param STOPIDs 主键串
*/
@Log(title = "停机", businessType = BusinessType.DELETE)
@DeleteMapping("/{STOPIDs}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] STOPIDs) {
return toAjax(iKlptcm1ProStoppageService.deleteWithValidByIds(Arrays.asList(STOPIDs), true));
}
}

View File

@@ -0,0 +1,93 @@
package com.klp.pocket.acid.controller;
import com.klp.common.core.controller.BaseController;
import com.klp.common.core.domain.R;
import com.klp.pocket.acid.domain.vo.ProductionStatisticsVo;
import com.klp.pocket.acid.domain.vo.CrewProductionVo;
import com.klp.pocket.acid.domain.vo.SpecDistributionVo;
import com.klp.pocket.acid.domain.vo.TeamPerformanceVo;
import com.klp.pocket.acid.service.IKlptcm1PdoExcoilService;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 生产统计Controller
*
* @author klp
* @date 2025-10-31
*/
@RequiredArgsConstructor
@RestController
@RequestMapping("/pocket/productionStatistics")
public class Klptcm1ProductionStatisticsController extends BaseController {
private final IKlptcm1PdoExcoilService excoilService;
/**
* 获取生产统计汇总数据
* @param startDate 开始日期格式yyyy-MM-dd
* @param endDate 结束日期格式yyyy-MM-dd
* @return 统计数据(钢卷数、平均宽度、平均厚度、原料总量、成品总量、成材率)
*/
@GetMapping("/summary")
public R<ProductionStatisticsVo> getSummary(
@RequestParam String startDate,
@RequestParam String endDate) {
return R.ok(excoilService.getProductionStatistics(startDate, endDate));
}
/**
* 获取班组产量统计
* @param startDate 开始日期
* @param endDate 结束日期
* @return 班组产量列表(按产量倒序)
*/
@GetMapping("/crewProduction")
public R<List<CrewProductionVo>> getCrewProduction(
@RequestParam String startDate,
@RequestParam String endDate) {
return R.ok(excoilService.getCrewProduction(startDate, endDate));
}
/**
* 获取厚度分布统计
* @param startDate 开始日期
* @param endDate 结束日期
* @return 厚度分布列表
*/
@GetMapping("/thicknessDistribution")
public R<List<SpecDistributionVo>> getThicknessDistribution(
@RequestParam String startDate,
@RequestParam String endDate) {
return R.ok(excoilService.getThicknessDistribution(startDate, endDate));
}
/**
* 获取宽度分布统计
* @param startDate 开始日期
* @param endDate 结束日期
* @return 宽度分布列表
*/
@GetMapping("/widthDistribution")
public R<List<SpecDistributionVo>> getWidthDistribution(
@RequestParam String startDate,
@RequestParam String endDate) {
return R.ok(excoilService.getWidthDistribution(startDate, endDate));
}
/**
* 获取班组绩效统计
* @param startDate 开始日期
* @param endDate 结束日期
* @return 班组绩效列表(按综合评分倒序排列)
*/
@GetMapping("/teamPerformance")
public R<List<TeamPerformanceVo>> getTeamPerformance(
@RequestParam String startDate,
@RequestParam String endDate) {
return R.ok(excoilService.getTeamPerformance(startDate, endDate));
}
}

View File

@@ -0,0 +1,32 @@
package com.klp.pocket.acid.controller;
import com.klp.common.core.controller.BaseController;
import com.klp.common.core.domain.R;
import com.klp.pocket.acid.domain.vo.Klptcm1ShiftCurrentVo;
import com.klp.pocket.acid.service.IKlptcm1ShiftCurrentService;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.*;
/**
* 当前班组Controller
*
* @author klp
* @date 2025-10-31
*/
@RequiredArgsConstructor
@RestController
@RequestMapping("/pocket/shiftCurrent")
public class Klptcm1ShiftCurrentController extends BaseController {
private final IKlptcm1ShiftCurrentService shiftCurrentService;
/**
* 获取当前班组信息
* @return 当前班组信息(班次+班组)
*/
@GetMapping("/current")
public R<Klptcm1ShiftCurrentVo> getCurrentShift() {
return R.ok(shiftCurrentService.getCurrentShift());
}
}

View File

@@ -0,0 +1,64 @@
package com.klp.pocket.acid.domain;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
* 成品卷对象 klptcm1_pdo_excoil
*/
@Data
public class Klptcm1PdoExcoil {
/** 成品卷号 */
private String encoilid;
/** 钢种 */
private String grade;
/** 厚度质量 */
private BigDecimal thickQuality;
/** 板形质量 */
private BigDecimal shapeQuality;
/** 入口厚度 */
private BigDecimal entryThick;
/** 出口厚度 */
private BigDecimal exitThick;
/** 入口宽度 */
private BigDecimal entryWidth;
/** 出口宽度 */
private BigDecimal exitWidth;
/** 入口重量 */
private BigDecimal entryWeight;
/** 出口重量 */
private BigDecimal exitWeight;
/** 上线时间 */
private Date onlineDate;
/** 开始时间 */
private Date startDate;
/** 结束时间 */
private Date endDate;
/** 插入时间 */
private Date insdate;
/** 班次 */
private String shift;
/** 班组 */
private String crew;
/** 出口卷号 */
private String excoilid;
}

View File

@@ -0,0 +1,615 @@
package com.klp.pocket.acid.domain;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
@Data
public class Klptcm1ProPlantStateCurrent {
private Date insdate; // 对应数据库 INSDATE
private BigDecimal year; // 对应数据库 YEAR
private BigDecimal month; // 对应数据库 MONTH
private BigDecimal day; // 对应数据库 DAY
private BigDecimal hour; // 对应数据库 HOUR
private BigDecimal minute; // 对应数据库 MINUTE
private BigDecimal type; // 对应数据库 TYPE
/**
* 状态值1
* 对应数据库列VALUE1decimal类型具体含义取决于TYPE字段如温度、压力等
*/
private BigDecimal value1;
/**
* 状态值2
* 对应数据库列VALUE2decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value2;
/**
* 状态值3
* 对应数据库列VALUE3decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value3;
/**
* 状态值4
* 对应数据库列VALUE4decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value4;
/**
* 状态值5
* 对应数据库列VALUE5decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value5;
/**
* 状态值6
* 对应数据库列VALUE6decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value6;
/**
* 状态值7
* 对应数据库列VALUE7decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value7;
/**
* 状态值8
* 对应数据库列VALUE8decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value8;
/**
* 状态值9
* 对应数据库列VALUE9decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value9;
/**
* 状态值10
* 对应数据库列VALUE10decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value10;
// ------------------------------
// 以下为VALUE11至VALUE98的完整声明
// ------------------------------
/**
* 状态值11
* 对应数据库列VALUE11decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value11;
/**
* 状态值12
* 对应数据库列VALUE12decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value12;
/**
* 状态值13
* 对应数据库列VALUE13decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value13;
/**
* 状态值14
* 对应数据库列VALUE14decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value14;
/**
* 状态值15
* 对应数据库列VALUE15decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value15;
/**
* 状态值16
* 对应数据库列VALUE16decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value16;
/**
* 状态值17
* 对应数据库列VALUE17decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value17;
/**
* 状态值18
* 对应数据库列VALUE18decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value18;
/**
* 状态值19
* 对应数据库列VALUE19decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value19;
/**
* 状态值20
* 对应数据库列VALUE20decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value20;
/**
* 状态值21
* 对应数据库列VALUE21decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value21;
/**
* 状态值22
* 对应数据库列VALUE22decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value22;
/**
* 状态值23
* 对应数据库列VALUE23decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value23;
/**
* 状态值24
* 对应数据库列VALUE24decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value24;
/**
* 状态值25
* 对应数据库列VALUE25decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value25;
/**
* 状态值26
* 对应数据库列VALUE26decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value26;
/**
* 状态值27
* 对应数据库列VALUE27decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value27;
/**
* 状态值28
* 对应数据库列VALUE28decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value28;
/**
* 状态值29
* 对应数据库列VALUE29decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value29;
/**
* 状态值30
* 对应数据库列VALUE30decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value30;
/**
* 状态值31
* 对应数据库列VALUE31decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value31;
/**
* 状态值32
* 对应数据库列VALUE32decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value32;
/**
* 状态值33
* 对应数据库列VALUE33decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value33;
/**
* 状态值34
* 对应数据库列VALUE34decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value34;
/**
* 状态值35
* 对应数据库列VALUE35decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value35;
/**
* 状态值36
* 对应数据库列VALUE36decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value36;
/**
* 状态值37
* 对应数据库列VALUE37decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value37;
/**
* 状态值38
* 对应数据库列VALUE38decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value38;
/**
* 状态值39
* 对应数据库列VALUE39decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value39;
/**
* 状态值40
* 对应数据库列VALUE40decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value40;
/**
* 状态值41
* 对应数据库列VALUE41decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value41;
/**
* 状态值42
* 对应数据库列VALUE42decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value42;
/**
* 状态值43
* 对应数据库列VALUE43decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value43;
/**
* 状态值44
* 对应数据库列VALUE44decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value44;
/**
* 状态值45
* 对应数据库列VALUE45decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value45;
/**
* 状态值46
* 对应数据库列VALUE46decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value46;
/**
* 状态值47
* 对应数据库列VALUE47decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value47;
/**
* 状态值48
* 对应数据库列VALUE48decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value48;
/**
* 状态值49
* 对应数据库列VALUE49decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value49;
/**
* 状态值50
* 对应数据库列VALUE50decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value50;
/**
* 状态值51
* 对应数据库列VALUE51decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value51;
/**
* 状态值52
* 对应数据库列VALUE52decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value52;
/**
* 状态值53
* 对应数据库列VALUE53decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value53;
/**
* 状态值54
* 对应数据库列VALUE54decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value54;
/**
* 状态值55
* 对应数据库列VALUE55decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value55;
/**
* 状态值56
* 对应数据库列VALUE56decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value56;
/**
* 状态值57
* 对应数据库列VALUE57decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value57;
/**
* 状态值58
* 对应数据库列VALUE58decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value58;
/**
* 状态值59
* 对应数据库列VALUE59decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value59;
/**
* 状态值60
* 对应数据库列VALUE60decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value60;
/**
* 状态值61
* 对应数据库列VALUE61decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value61;
/**
* 状态值62
* 对应数据库列VALUE62decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value62;
/**
* 状态值63
* 对应数据库列VALUE63decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value63;
/**
* 状态值64
* 对应数据库列VALUE64decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value64;
/**
* 状态值65
* 对应数据库列VALUE65decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value65;
/**
* 状态值66
* 对应数据库列VALUE66decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value66;
/**
* 状态值67
* 对应数据库列VALUE67decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value67;
/**
* 状态值68
* 对应数据库列VALUE68decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value68;
/**
* 状态值69
* 对应数据库列VALUE69decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value69;
/**
* 状态值70
* 对应数据库列VALUE70decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value70;
/**
* 状态值71
* 对应数据库列VALUE71decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value71;
/**
* 状态值72
* 对应数据库列VALUE72decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value72;
/**
* 状态值73
* 对应数据库列VALUE73decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value73;
/**
* 状态值74
* 对应数据库列VALUE74decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value74;
/**
* 状态值75
* 对应数据库列VALUE75decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value75;
/**
* 状态值76
* 对应数据库列VALUE76decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value76;
/**
* 状态值77
* 对应数据库列VALUE77decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value77;
/**
* 状态值78
* 对应数据库列VALUE78decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value78;
/**
* 状态值79
* 对应数据库列VALUE79decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value79;
/**
* 状态值80
* 对应数据库列VALUE80decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value80;
/**
* 状态值81
* 对应数据库列VALUE81decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value81;
/**
* 状态值82
* 对应数据库列VALUE82decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value82;
/**
* 状态值83
* 对应数据库列VALUE83decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value83;
/**
* 状态值84
* 对应数据库列VALUE84decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value84;
/**
* 状态值85
* 对应数据库列VALUE85decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value85;
/**
* 状态值86
* 对应数据库列VALUE86decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value86;
/**
* 状态值87
* 对应数据库列VALUE87decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value87;
/**
* 状态值88
* 对应数据库列VALUE88decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value88;
/**
* 状态值89
* 对应数据库列VALUE89decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value89;
/**
* 状态值90
* 对应数据库列VALUE90decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value90;
/**
* 状态值91
* 对应数据库列VALUE91decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value91;
/**
* 状态值92
* 对应数据库列VALUE92decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value92;
/**
* 状态值93
* 对应数据库列VALUE93decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value93;
/**
* 状态值94
* 对应数据库列VALUE94decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value94;
/**
* 状态值95
* 对应数据库列VALUE95decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value95;
/**
* 状态值96
* 对应数据库列VALUE96decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value96;
/**
* 状态值97
* 对应数据库列VALUE97decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value97;
/**
* 状态值98
* 对应数据库列VALUE98decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value98;
/**
* 状态值99
* 对应数据库列VALUE99decimal类型具体含义取决于TYPE字段
*/
private BigDecimal value99;
}

View File

@@ -0,0 +1,50 @@
package com.klp.pocket.acid.domain;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
* 工厂状态定义表实体类
* 对应数据库表klptcm1_pro_plant_state_define
* 用途:存储工厂状态参数的定义信息(如参数名称、单位、说明等)
*/
@Data
public class Klptcm1ProPlantStateDefine {
/**
* 主键ID
* 对应数据库列IDdecimal类型唯一标识一条状态定义记录
*/
private BigDecimal id;
/**
* 状态参数名称
* 对应数据库列NAMEvarchar类型非空如"温度"、"压力"
*/
private String name;
/**
* 状态参数单位
* 对应数据库列UNITSvarchar类型非空如"℃"、"MPa"
*/
private String units;
/**
* 状态参数说明
* 对应数据库列COMMENTSvarchar类型非空补充参数的详细描述
*/
private String comments;
/**
* 插入时间
* 对应数据库列INSDATEdatetime类型默认当前时间戳记录数据创建时间
*/
private Date insdate;
/**
* 模型类型
* 对应数据库列MODELTYPEdecimal类型默认值2标识参数所属模型类型
*/
private BigDecimal modeltype;
}

View File

@@ -0,0 +1,128 @@
package com.klp.pocket.acid.domain;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
* 历史对象 klptcm1_pro_plant_state_history
*
* @author klp
* @date 2025-10-27
*/
@Data
@TableName("klptcm1_pro_plant_state_history")
public class Klptcm1ProPlantStateHistory{
private static final long serialVersionUID=1L;
private Date insdate;
private Long year;
private Long month;
private Long day;
private Long hour;
private Long minute;
private Long type;
private BigDecimal value1;
private BigDecimal value2;
private BigDecimal value3;
private BigDecimal value4;
private BigDecimal value5;
private BigDecimal value6;
private BigDecimal value7;
private BigDecimal value8;
private BigDecimal value9;
private BigDecimal value10;
private BigDecimal value11;
private BigDecimal value12;
private BigDecimal value13;
private BigDecimal value14;
private BigDecimal value15;
private BigDecimal value16;
private BigDecimal value17;
private BigDecimal value18;
private BigDecimal value19;
private BigDecimal value20;
private BigDecimal value21;
private BigDecimal value22;
private BigDecimal value23;
private BigDecimal value24;
private BigDecimal value25;
private BigDecimal value26;
private BigDecimal value27;
private BigDecimal value28;
private BigDecimal value29;
private BigDecimal value30;
private BigDecimal value31;
private BigDecimal value32;
private BigDecimal value33;
private BigDecimal value34;
private BigDecimal value35;
private BigDecimal value36;
private BigDecimal value37;
private BigDecimal value38;
private BigDecimal value39;
private BigDecimal value40;
private BigDecimal value41;
private BigDecimal value42;
private BigDecimal value43;
private BigDecimal value44;
private BigDecimal value45;
private BigDecimal value46;
private BigDecimal value47;
private BigDecimal value48;
private BigDecimal value49;
private BigDecimal value50;
private BigDecimal value51;
private BigDecimal value52;
private BigDecimal value53;
private BigDecimal value54;
private BigDecimal value55;
private BigDecimal value56;
private BigDecimal value57;
private BigDecimal value58;
private BigDecimal value59;
private BigDecimal value60;
private BigDecimal value61;
private BigDecimal value62;
private BigDecimal value63;
private BigDecimal value64;
private BigDecimal value65;
private BigDecimal value66;
private BigDecimal value67;
private BigDecimal value68;
private BigDecimal value69;
private BigDecimal value70;
private BigDecimal value71;
private BigDecimal value72;
private BigDecimal value73;
private BigDecimal value74;
private BigDecimal value75;
private BigDecimal value76;
private BigDecimal value77;
private BigDecimal value78;
private BigDecimal value79;
private BigDecimal value80;
private BigDecimal value81;
private BigDecimal value82;
private BigDecimal value83;
private BigDecimal value84;
private BigDecimal value85;
private BigDecimal value86;
private BigDecimal value87;
private BigDecimal value88;
private BigDecimal value89;
private BigDecimal value90;
private BigDecimal value91;
private BigDecimal value92;
private BigDecimal value93;
private BigDecimal value94;
private BigDecimal value95;
private BigDecimal value96;
private BigDecimal value97;
private BigDecimal value98;
private BigDecimal value99;
}

View File

@@ -0,0 +1,34 @@
package com.klp.pocket.acid.domain;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import java.util.Date;
/**
* 停机对象 klptcm1_pro_stoppage
*
* @author klp
* @date 2025-10-27
*/
@Data
@TableName("klptcm1_pro_stoppage")
public class Klptcm1ProStoppage{
private static final long serialVersionUID=1L;
private Long stopid;
private String encoilid;
private String shift;
private String crew;
private String area;
private String unit;
private String seton;
private String remark;
private Date startDate;
private Date endDate;
private Long duration;
private Date insDate;
private String stopType;
}

View File

@@ -0,0 +1,33 @@
package com.klp.pocket.acid.domain;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
* 当前班组对象 klptcm1_shift_current
*/
@Data
public class Klptcm1ShiftCurrent {
/**
* 班次A/B/C 或 早/中/晚)
*/
private String shift;
/**
* 班组编号
*/
private BigDecimal crew;
/**
* 序列号
*/
private BigDecimal seqNum;
/**
* 系统时间
*/
private Date sysTime;
}

View File

@@ -0,0 +1,554 @@
package com.klp.pocket.acid.domain.bo;
import com.klp.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;
import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
/**
* 当前业务对象 klptcm1_pro_plant_state_current
*
* @author klp
* @date 2025-10-27
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class Klptcm1ProPlantStateCurrentBo extends BaseEntity {
/**
*
*/
private Date INSDATE;
/**
*
*/
private Long YEAR;
/**
*
*/
private Long MONTH;
/**
*
*/
private Long DAY;
/**
*
*/
private Long HOUR;
/**
*
*/
private Long MINUTE;
/**
*
*/
private Long TYPE;
/**
*
*/
private BigDecimal VALUE1;
/**
*
*/
private BigDecimal VALUE2;
/**
*
*/
private BigDecimal VALUE3;
/**
*
*/
private BigDecimal VALUE4;
/**
*
*/
private BigDecimal VALUE5;
/**
*
*/
private BigDecimal VALUE6;
/**
*
*/
private BigDecimal VALUE7;
/**
*
*/
private BigDecimal VALUE8;
/**
*
*/
private BigDecimal VALUE9;
/**
*
*/
private BigDecimal VALUE10;
/**
*
*/
private BigDecimal VALUE11;
/**
*
*/
private BigDecimal VALUE12;
/**
*
*/
private BigDecimal VALUE13;
/**
*
*/
private BigDecimal VALUE14;
/**
*
*/
private BigDecimal VALUE15;
/**
*
*/
private BigDecimal VALUE16;
/**
*
*/
private BigDecimal VALUE17;
/**
*
*/
private BigDecimal VALUE18;
/**
*
*/
private BigDecimal VALUE19;
/**
*
*/
private BigDecimal VALUE20;
/**
*
*/
private BigDecimal VALUE21;
/**
*
*/
private BigDecimal VALUE22;
/**
*
*/
private BigDecimal VALUE23;
/**
*
*/
private BigDecimal VALUE24;
/**
*
*/
private BigDecimal VALUE25;
/**
*
*/
private BigDecimal VALUE26;
/**
*
*/
private BigDecimal VALUE27;
/**
*
*/
private BigDecimal VALUE28;
/**
*
*/
private BigDecimal VALUE29;
/**
*
*/
private BigDecimal VALUE30;
/**
*
*/
private BigDecimal VALUE31;
/**
*
*/
private BigDecimal VALUE32;
/**
*
*/
private BigDecimal VALUE33;
/**
*
*/
private BigDecimal VALUE34;
/**
*
*/
private BigDecimal VALUE35;
/**
*
*/
private BigDecimal VALUE36;
/**
*
*/
private BigDecimal VALUE37;
/**
*
*/
private BigDecimal VALUE38;
/**
*
*/
private BigDecimal VALUE39;
/**
*
*/
private BigDecimal VALUE40;
/**
*
*/
private BigDecimal VALUE41;
/**
*
*/
private BigDecimal VALUE42;
/**
*
*/
private BigDecimal VALUE43;
/**
*
*/
private BigDecimal VALUE44;
/**
*
*/
private BigDecimal VALUE45;
/**
*
*/
private BigDecimal VALUE46;
/**
*
*/
private BigDecimal VALUE47;
/**
*
*/
private BigDecimal VALUE48;
/**
*
*/
private BigDecimal VALUE49;
/**
*
*/
private BigDecimal VALUE50;
/**
*
*/
private BigDecimal VALUE51;
/**
*
*/
private BigDecimal VALUE52;
/**
*
*/
private BigDecimal VALUE53;
/**
*
*/
private BigDecimal VALUE54;
/**
*
*/
private BigDecimal VALUE55;
/**
*
*/
private BigDecimal VALUE56;
/**
*
*/
private BigDecimal VALUE57;
/**
*
*/
private BigDecimal VALUE58;
/**
*
*/
private BigDecimal VALUE59;
/**
*
*/
private BigDecimal VALUE60;
/**
*
*/
private BigDecimal VALUE61;
/**
*
*/
private BigDecimal VALUE62;
/**
*
*/
private BigDecimal VALUE63;
/**
*
*/
private BigDecimal VALUE64;
/**
*
*/
private BigDecimal VALUE65;
/**
*
*/
private BigDecimal VALUE66;
/**
*
*/
private BigDecimal VALUE67;
/**
*
*/
private BigDecimal VALUE68;
/**
*
*/
private BigDecimal VALUE69;
/**
*
*/
private BigDecimal VALUE70;
/**
*
*/
private BigDecimal VALUE71;
/**
*
*/
private BigDecimal VALUE72;
/**
*
*/
private BigDecimal VALUE73;
/**
*
*/
private BigDecimal VALUE74;
/**
*
*/
private BigDecimal VALUE75;
/**
*
*/
private BigDecimal VALUE76;
/**
*
*/
private BigDecimal VALUE77;
/**
*
*/
private BigDecimal VALUE78;
/**
*
*/
private BigDecimal VALUE79;
/**
*
*/
private BigDecimal VALUE80;
/**
*
*/
private BigDecimal VALUE81;
/**
*
*/
private BigDecimal VALUE82;
/**
*
*/
private BigDecimal VALUE83;
/**
*
*/
private BigDecimal VALUE84;
/**
*
*/
private BigDecimal VALUE85;
/**
*
*/
private BigDecimal VALUE86;
/**
*
*/
private BigDecimal VALUE87;
/**
*
*/
private BigDecimal VALUE88;
/**
*
*/
private BigDecimal VALUE89;
/**
*
*/
private BigDecimal VALUE90;
/**
*
*/
private BigDecimal VALUE91;
/**
*
*/
private BigDecimal VALUE92;
/**
*
*/
private BigDecimal VALUE93;
/**
*
*/
private BigDecimal VALUE94;
/**
*
*/
private BigDecimal VALUE95;
/**
*
*/
private BigDecimal VALUE96;
/**
*
*/
private BigDecimal VALUE97;
/**
*
*/
private BigDecimal VALUE98;
/**
*
*/
private BigDecimal VALUE99;
}

View File

@@ -0,0 +1,217 @@
package com.klp.pocket.acid.domain.bo;
import com.klp.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.util.Date;
/**
* 历史业务对象 klptcm1_pro_plant_state_history
*
* @author klp
* @date 2025-10-27
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class Klptcm1ProPlantStateHistoryBo extends BaseEntity {
private Date INSDATE;
private Long YEAR;
private Long MONTH;
private Long DAY;
private Long HOUR;
private Long MINUTE;
private Long TYPE;
private BigDecimal VALUE1;
private BigDecimal VALUE2;
private BigDecimal VALUE3;
private BigDecimal VALUE4;
private BigDecimal VALUE5;
private BigDecimal VALUE6;
private BigDecimal VALUE7;
private BigDecimal VALUE8;
private BigDecimal VALUE9;
private BigDecimal VALUE10;
private BigDecimal VALUE11;
private BigDecimal VALUE12;
private BigDecimal VALUE13;
private BigDecimal VALUE14;
private BigDecimal VALUE15;
private BigDecimal VALUE16;
private BigDecimal VALUE17;
private BigDecimal VALUE18;
private BigDecimal VALUE19;
private BigDecimal VALUE20;
private BigDecimal VALUE21;
private BigDecimal VALUE22;
private BigDecimal VALUE23;
private BigDecimal VALUE24;
private BigDecimal VALUE25;
private BigDecimal VALUE26;
private BigDecimal VALUE27;
private BigDecimal VALUE28;
private BigDecimal VALUE29;
private BigDecimal VALUE30;
private BigDecimal VALUE31;
private BigDecimal VALUE32;
private BigDecimal VALUE33;
private BigDecimal VALUE34;
private BigDecimal VALUE35;
private BigDecimal VALUE36;
private BigDecimal VALUE37;
private BigDecimal VALUE38;
private BigDecimal VALUE39;
private BigDecimal VALUE40;
private BigDecimal VALUE41;
private BigDecimal VALUE42;
private BigDecimal VALUE43;
private BigDecimal VALUE44;
private BigDecimal VALUE45;
private BigDecimal VALUE46;
private BigDecimal VALUE47;
private BigDecimal VALUE48;
private BigDecimal VALUE49;
private BigDecimal VALUE50;
private BigDecimal VALUE51;
private BigDecimal VALUE52;
private BigDecimal VALUE53;
private BigDecimal VALUE54;
private BigDecimal VALUE55;
private BigDecimal VALUE56;
private BigDecimal VALUE57;
private BigDecimal VALUE58;
private BigDecimal VALUE59;
private BigDecimal VALUE60;
private BigDecimal VALUE61;
private BigDecimal VALUE62;
private BigDecimal VALUE63;
private BigDecimal VALUE64;
private BigDecimal VALUE65;
private BigDecimal VALUE66;
private BigDecimal VALUE67;
private BigDecimal VALUE68;
private BigDecimal VALUE69;
private BigDecimal VALUE70;
private BigDecimal VALUE71;
private BigDecimal VALUE72;
private BigDecimal VALUE73;
private BigDecimal VALUE74;
private BigDecimal VALUE75;
private BigDecimal VALUE76;
private BigDecimal VALUE77;
private BigDecimal VALUE78;
private BigDecimal VALUE79;
private BigDecimal VALUE80;
private BigDecimal VALUE81;
private BigDecimal VALUE82;
private BigDecimal VALUE83;
private BigDecimal VALUE84;
private BigDecimal VALUE85;
private BigDecimal VALUE86;
private BigDecimal VALUE87;
private BigDecimal VALUE88;
private BigDecimal VALUE89;
private BigDecimal VALUE90;
private BigDecimal VALUE91;
private BigDecimal VALUE92;
private BigDecimal VALUE93;
private BigDecimal VALUE94;
private BigDecimal VALUE95;
private BigDecimal VALUE96;
private BigDecimal VALUE97;
private BigDecimal VALUE98;
private BigDecimal VALUE99;
}

View File

@@ -0,0 +1,90 @@
package com.klp.pocket.acid.domain.bo;
import com.klp.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
/**
* 停机业务对象 klptcm1_pro_stoppage
*
* @author klp
* @date 2025-10-27
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class Klptcm1ProStoppageBo extends BaseEntity {
/**
*
*/
private Long STOPID;
/**
*
*/
private String ENCOILID;
/**
*
*/
private String SHIFT;
/**
*
*/
private String CREW;
/**
*
*/
private String AREA;
/**
*
*/
private String UNIT;
/**
*
*/
private String SETON;
/**
*
*/
private String REMARK;
/**
* 开始日期(支持多种日期格式)
*/
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date startDate;
/**
* 结束日期(支持多种日期格式)
*/
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date endDate;
/**
*
*/
private Long DURATION;
/**
* 插入日期
*/
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date insDate;
/**
*
*/
private String stopType;
}

View File

@@ -0,0 +1,30 @@
package com.klp.pocket.acid.domain.vo;
import lombok.Data;
import java.math.BigDecimal;
/**
* 班组产量统计视图对象
*/
@Data
public class CrewProductionVo {
/** 班组 */
private String crew;
/** 班次 */
private String shift;
/** 钢卷数 */
private Long coilCount;
/** 总产量 */
private BigDecimal totalWeight;
/** 平均厚度 */
private BigDecimal avgThick;
/** 平均宽度 */
private BigDecimal avgWidth;
}

View File

@@ -0,0 +1,659 @@
package com.klp.pocket.acid.domain.vo;
import java.math.BigDecimal;
import java.util.Date;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import lombok.Data;
/**
* 当前视图对象 klptcm1_pro_plant_state_current
*
* @author klp
* @date 2025-10-27
*/
@Data
@ExcelIgnoreUnannotated
public class Klptcm1ProPlantStateCurrentVo {
private static final long serialVersionUID = 1L;
/**
*
*/
@ExcelProperty(value = "")
private Date INSDATE;
/**
*
*/
@ExcelProperty(value = "")
private Long YEAR;
/**
*
*/
@ExcelProperty(value = "")
private Long MONTH;
/**
*
*/
@ExcelProperty(value = "")
private Long DAY;
/**
*
*/
@ExcelProperty(value = "")
private Long HOUR;
/**
*
*/
@ExcelProperty(value = "")
private Long MINUTE;
/**
*
*/
@ExcelProperty(value = "")
private Long TYPE;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE1;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE2;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE3;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE4;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE5;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE6;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE7;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE8;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE9;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE10;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE11;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE12;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE13;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE14;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE15;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE16;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE17;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE18;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE19;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE20;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE21;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE22;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE23;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE24;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE25;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE26;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE27;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE28;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE29;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE30;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE31;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE32;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE33;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE34;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE35;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE36;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE37;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE38;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE39;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE40;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE41;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE42;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE43;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE44;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE45;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE46;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE47;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE48;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE49;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE50;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE51;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE52;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE53;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE54;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE55;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE56;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE57;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE58;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE59;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE60;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE61;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE62;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE63;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE64;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE65;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE66;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE67;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE68;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE69;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE70;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE71;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE72;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE73;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE74;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE75;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE76;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE77;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE78;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE79;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE80;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE81;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE82;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE83;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE84;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE85;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE86;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE87;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE88;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE89;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE90;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE91;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE92;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE93;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE94;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE95;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE96;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE97;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE98;
/**
*
*/
@ExcelProperty(value = "")
private BigDecimal VALUE99;
}

View File

@@ -0,0 +1,128 @@
package com.klp.pocket.acid.domain.vo;
import java.math.BigDecimal;
import java.util.Date;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import lombok.Data;
/**
* 历史视图对象 klptcm1_pro_plant_state_history
*
* @author klp
* @date 2025-10-27
*/
@Data
@ExcelIgnoreUnannotated
public class Klptcm1ProPlantStateHistoryVo {
private static final long serialVersionUID = 1L;
private Date insdate;
private Long year;
private Long month;
private Long day;
private Long hour;
private Long minute;
private Long type;
private BigDecimal value1;
private BigDecimal value2;
private BigDecimal value3;
private BigDecimal value4;
private BigDecimal value5;
private BigDecimal value6;
private BigDecimal value7;
private BigDecimal value8;
private BigDecimal value9;
private BigDecimal value10;
private BigDecimal value11;
private BigDecimal value12;
private BigDecimal value13;
private BigDecimal value14;
private BigDecimal value15;
private BigDecimal value16;
private BigDecimal value17;
private BigDecimal value18;
private BigDecimal value19;
private BigDecimal value20;
private BigDecimal value21;
private BigDecimal value22;
private BigDecimal value23;
private BigDecimal value24;
private BigDecimal value25;
private BigDecimal value26;
private BigDecimal value27;
private BigDecimal value28;
private BigDecimal value29;
private BigDecimal value30;
private BigDecimal value31;
private BigDecimal value32;
private BigDecimal value33;
private BigDecimal value34;
private BigDecimal value35;
private BigDecimal value36;
private BigDecimal value37;
private BigDecimal value38;
private BigDecimal value39;
private BigDecimal value40;
private BigDecimal value41;
private BigDecimal value42;
private BigDecimal value43;
private BigDecimal value44;
private BigDecimal value45;
private BigDecimal value46;
private BigDecimal value47;
private BigDecimal value48;
private BigDecimal value49;
private BigDecimal value50;
private BigDecimal value51;
private BigDecimal value52;
private BigDecimal value53;
private BigDecimal value54;
private BigDecimal value55;
private BigDecimal value56;
private BigDecimal value57;
private BigDecimal value58;
private BigDecimal value59;
private BigDecimal value60;
private BigDecimal value61;
private BigDecimal value62;
private BigDecimal value63;
private BigDecimal value64;
private BigDecimal value65;
private BigDecimal value66;
private BigDecimal value67;
private BigDecimal value68;
private BigDecimal value69;
private BigDecimal value70;
private BigDecimal value71;
private BigDecimal value72;
private BigDecimal value73;
private BigDecimal value74;
private BigDecimal value75;
private BigDecimal value76;
private BigDecimal value77;
private BigDecimal value78;
private BigDecimal value79;
private BigDecimal value80;
private BigDecimal value81;
private BigDecimal value82;
private BigDecimal value83;
private BigDecimal value84;
private BigDecimal value85;
private BigDecimal value86;
private BigDecimal value87;
private BigDecimal value88;
private BigDecimal value89;
private BigDecimal value90;
private BigDecimal value91;
private BigDecimal value92;
private BigDecimal value93;
private BigDecimal value94;
private BigDecimal value95;
private BigDecimal value96;
private BigDecimal value97;
private BigDecimal value98;
private BigDecimal value99;
}

View File

@@ -0,0 +1,33 @@
package com.klp.pocket.acid.domain.vo;
import java.util.Date;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import lombok.Data;
/**
* 停机视图对象 klptcm1_pro_stoppage
*
* @author klp
* @date 2025-10-27
*/
@Data
@ExcelIgnoreUnannotated
public class Klptcm1ProStoppageVo {
private static final long serialVersionUID = 1L;
private Long stopid;
private String encoilid;
private String shift;
private String crew;
private String area;
private String unit;
private String seton;
private String remark;
private Date startDate;
private Date endDate;
private Long duration;
private Date insDate;
private String stopType;
}

View File

@@ -0,0 +1,18 @@
package com.klp.pocket.acid.domain.vo;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
* 当前班组视图对象 klptcm1_shift_current
*/
@Data
public class Klptcm1ShiftCurrentVo {
private String shift;
private BigDecimal crew;
private BigDecimal seqNum;
private Date sysTime;
}

View File

@@ -0,0 +1,27 @@
package com.klp.pocket.acid.domain.vo;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
@Data
public class PlantStateWithValueVo {
// define表基础字段
private BigDecimal id;
private String name;
private String units;
private String comments;
private Date insdate;
private BigDecimal modeltype;
// current表关联字段VALUE{ID} + 时间)
private BigDecimal currentValue;
private Date currentInsdate;
// history表关联字段VALUE{ID} + 时间)
private BigDecimal historyValue;
private Date historyInsdate;
}

View File

@@ -0,0 +1,30 @@
package com.klp.pocket.acid.domain.vo;
import lombok.Data;
import java.math.BigDecimal;
/**
* 生产统计视图对象
*/
@Data
public class ProductionStatisticsVo {
/** 生产钢卷数 */
private Long coilCount;
/** 平均宽度 */
private BigDecimal avgWidth;
/** 平均厚度 */
private BigDecimal avgThick;
/** 原料总量 */
private BigDecimal totalEntryWeight;
/** 成品总量 */
private BigDecimal totalExitWeight;
/** 成材率 */
private BigDecimal yieldRate;
}

View File

@@ -0,0 +1,17 @@
package com.klp.pocket.acid.domain.vo;
import lombok.Data;
/**
* 规格分布视图对象
*/
@Data
public class SpecDistributionVo {
/** 分类名称 */
private String category;
/** 数量 */
private Long count;
}

View File

@@ -0,0 +1,42 @@
package com.klp.pocket.acid.domain.vo;
import lombok.Data;
import java.math.BigDecimal;
/**
* 班组绩效视图对象
*/
@Data
public class TeamPerformanceVo {
/** 班组 */
private String crew;
/** 班次 */
private String shift;
/** 班组-班次组合(用于显示) */
private String teamName;
/** 产量(t) */
private BigDecimal output;
/** 成材率(%) */
private BigDecimal yieldRate;
/** 合格率(%) - 基于厚度质量 */
private BigDecimal passRate;
/** 平均厚度质量 */
private BigDecimal avgThickQuality;
/** 平均板形质量 */
private BigDecimal avgShapeQuality;
/** 效率指标(钢卷数/时间,这里简化为钢卷数) */
private Long efficiency;
/** 综合评分 */
private BigDecimal score;
}

View File

@@ -0,0 +1,63 @@
package com.klp.pocket.acid.mapper;
import com.klp.pocket.acid.domain.vo.ProductionStatisticsVo;
import com.klp.pocket.acid.domain.vo.CrewProductionVo;
import com.klp.pocket.acid.domain.vo.SpecDistributionVo;
import com.klp.pocket.acid.domain.vo.TeamPerformanceVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* 成品卷Mapper接口
*/
@Mapper
public interface Klptcm1PdoExcoilMapper {
/**
* 查询生产统计汇总数据
* @param startDate 开始日期
* @param endDate 结束日期
* @return 统计数据
*/
ProductionStatisticsVo selectProductionStatistics(@Param("startDate") String startDate,
@Param("endDate") String endDate);
/**
* 查询班组产量统计
* @param startDate 开始日期
* @param endDate 结束日期
* @return 班组产量列表
*/
List<CrewProductionVo> selectCrewProduction(@Param("startDate") String startDate,
@Param("endDate") String endDate);
/**
* 查询厚度分布
* @param startDate 开始日期
* @param endDate 结束日期
* @return 厚度分布列表
*/
List<SpecDistributionVo> selectThicknessDistribution(@Param("startDate") String startDate,
@Param("endDate") String endDate);
/**
* 查询宽度分布
* @param startDate 开始日期
* @param endDate 结束日期
* @return 宽度分布列表
*/
List<SpecDistributionVo> selectWidthDistribution(@Param("startDate") String startDate,
@Param("endDate") String endDate);
/**
* 查询班组绩效统计
* @param startDate 开始日期
* @param endDate 结束日期
* @return 班组绩效列表
*/
List<TeamPerformanceVo> selectTeamPerformance(@Param("startDate") String startDate,
@Param("endDate") String endDate);
}

View File

@@ -0,0 +1,28 @@
package com.klp.pocket.acid.mapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.klp.pocket.acid.domain.Klptcm1ProPlantStateCurrent;
import org.apache.ibatis.annotations.Mapper;
import java.util.Date;
import java.math.BigDecimal;
import org.apache.ibatis.annotations.Param;
@Mapper
public interface Klptcm1ProPlantStateCurrentMapper {
// 查询所有
Page<Klptcm1ProPlantStateCurrent> selectAll(Page<Object> build);
// 按复合键查询
Klptcm1ProPlantStateCurrent selectOne(@Param("insdate") Date insdate, @Param("type") BigDecimal type);
// 新增
int insert(Klptcm1ProPlantStateCurrent entity);
// 修改(按复合键)
int updateByKey(Klptcm1ProPlantStateCurrent entity);
// 删除(按复合键)
int deleteByKey(@Param("insdate") Date insdate, @Param("type") BigDecimal type);
}

View File

@@ -0,0 +1,52 @@
package com.klp.pocket.acid.mapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.klp.pocket.acid.domain.Klptcm1ProPlantStateDefine;
import com.klp.pocket.acid.domain.vo.PlantStateWithValueVo;
import org.apache.ibatis.annotations.Mapper;
import java.math.BigDecimal;
import java.util.List;
/**
* 工厂状态定义表Mapper接口
* 提供增删改查及分页查询能力
*/
@Mapper
public interface Klptcm1ProPlantStateDefineMapper {
/**
* 分页查询所有状态定义
* @param page 分页参数(含页码、每页条数)
* @return 分页结果(含总条数、当前页数据)
*/
Page<Klptcm1ProPlantStateDefine> selectPage(Page<Object> page);
List<PlantStateWithValueVo> selectByValue(String name);
/**
* 获取所有定义及其当前值
* @return 所有定义列表,每个定义包含对应的当前值
*/
List<PlantStateWithValueVo> selectAllWithValues();
/**
* 按ID查询
*/
Klptcm1ProPlantStateDefine selectById(BigDecimal id);
/**
* 新增
*/
int insert(Klptcm1ProPlantStateDefine entity);
/**
* 修改
*/
int updateById(Klptcm1ProPlantStateDefine entity);
/**
* 删除(批量)
*/
int deleteByIds(List<BigDecimal> ids);
}

View File

@@ -0,0 +1,15 @@
package com.klp.pocket.acid.mapper;
import com.klp.pocket.acid.domain.Klptcm1ProPlantStateHistory;
import com.klp.pocket.acid.domain.vo.Klptcm1ProPlantStateHistoryVo;
import com.klp.common.core.mapper.BaseMapperPlus;
/**
* 历史Mapper接口
*
* @author klp
* @date 2025-10-27
*/
public interface Klptcm1ProPlantStateHistoryMapper extends BaseMapperPlus<Klptcm1ProPlantStateHistoryMapper, Klptcm1ProPlantStateHistory, Klptcm1ProPlantStateHistoryVo> {
}

View File

@@ -0,0 +1,15 @@
package com.klp.pocket.acid.mapper;
import com.klp.pocket.acid.domain.Klptcm1ProStoppage;
import com.klp.pocket.acid.domain.vo.Klptcm1ProStoppageVo;
import com.klp.common.core.mapper.BaseMapperPlus;
/**
* 停机Mapper接口
*
* @author klp
* @date 2025-10-27
*/
public interface Klptcm1ProStoppageMapper extends BaseMapperPlus<Klptcm1ProStoppageMapper, Klptcm1ProStoppage, Klptcm1ProStoppageVo> {
}

View File

@@ -0,0 +1,18 @@
package com.klp.pocket.acid.mapper;
import com.klp.pocket.acid.domain.vo.Klptcm1ShiftCurrentVo;
import org.apache.ibatis.annotations.Mapper;
/**
* 当前班组Mapper接口
*/
@Mapper
public interface Klptcm1ShiftCurrentMapper {
/**
* 查询当前班组信息(最新一条)
* @return 当前班组信息
*/
Klptcm1ShiftCurrentVo selectCurrent();
}

View File

@@ -0,0 +1,55 @@
package com.klp.pocket.acid.service;
import com.klp.pocket.acid.domain.vo.ProductionStatisticsVo;
import com.klp.pocket.acid.domain.vo.CrewProductionVo;
import com.klp.pocket.acid.domain.vo.SpecDistributionVo;
import com.klp.pocket.acid.domain.vo.TeamPerformanceVo;
import java.util.List;
/**
* 生产统计Service接口
*/
public interface IKlptcm1PdoExcoilService {
/**
* 查询生产统计汇总数据
* @param startDate 开始日期
* @param endDate 结束日期
* @return 统计数据
*/
ProductionStatisticsVo getProductionStatistics(String startDate, String endDate);
/**
* 查询班组产量统计
* @param startDate 开始日期
* @param endDate 结束日期
* @return 班组产量列表
*/
List<CrewProductionVo> getCrewProduction(String startDate, String endDate);
/**
* 查询厚度分布
* @param startDate 开始日期
* @param endDate 结束日期
* @return 厚度分布列表
*/
List<SpecDistributionVo> getThicknessDistribution(String startDate, String endDate);
/**
* 查询宽度分布
* @param startDate 开始日期
* @param endDate 结束日期
* @return 宽度分布列表
*/
List<SpecDistributionVo> getWidthDistribution(String startDate, String endDate);
/**
* 查询班组绩效统计
* @param startDate 开始日期
* @param endDate 结束日期
* @return 班组绩效列表(按综合评分倒序)
*/
List<TeamPerformanceVo> getTeamPerformance(String startDate, String endDate);
}

View File

@@ -0,0 +1,21 @@
package com.klp.pocket.acid.service;
import com.klp.common.core.domain.PageQuery;
import com.klp.common.core.page.TableDataInfo;
import com.klp.pocket.acid.domain.Klptcm1ProPlantStateCurrent;
import java.util.Date;
import java.math.BigDecimal;
public interface IKlptcm1ProPlantStateCurrentService {
TableDataInfo<Klptcm1ProPlantStateCurrent> selectAll(PageQuery pageQuery);
Klptcm1ProPlantStateCurrent selectOne(Date insdate, BigDecimal type);
int insert(Klptcm1ProPlantStateCurrent entity);
int updateByKey(Klptcm1ProPlantStateCurrent entity);
int deleteByKey(Date insdate, BigDecimal type);
}

View File

@@ -0,0 +1,41 @@
package com.klp.pocket.acid.service;
import com.klp.common.core.domain.PageQuery;
import com.klp.common.core.page.TableDataInfo;
import com.klp.pocket.acid.domain.Klptcm1ProPlantStateDefine;
import com.klp.pocket.acid.domain.vo.PlantStateWithValueVo;
import java.math.BigDecimal;
import java.util.List;
/**
* 工厂状态定义表Service接口
* 封装业务逻辑,对外提供数据操作能力
*/
public interface IKlptcm1ProPlantStateDefineService {
/**
* 分页查询状态定义
* @param pageQuery 分页查询参数(含页码、每页条数)
* @return 分页表格数据符合前端TableDataInfo格式
*/
TableDataInfo<Klptcm1ProPlantStateDefine> getDefinePage(PageQuery pageQuery);
List<PlantStateWithValueVo> selectByValue(String name);
/**
* 获取所有定义及其当前值
* @return 所有定义列表,每个定义包含对应的当前值
*/
List<PlantStateWithValueVo> selectAllWithValues();
Klptcm1ProPlantStateDefine selectById(BigDecimal id);
int insert(Klptcm1ProPlantStateDefine entity);
int updateById(Klptcm1ProPlantStateDefine entity);
int deleteByIds(List<BigDecimal> ids);
}

View File

@@ -0,0 +1,49 @@
package com.klp.pocket.acid.service;
import com.klp.pocket.acid.domain.vo.Klptcm1ProPlantStateHistoryVo;
import com.klp.pocket.acid.domain.bo.Klptcm1ProPlantStateHistoryBo;
import com.klp.common.core.page.TableDataInfo;
import com.klp.common.core.domain.PageQuery;
import java.util.Collection;
import java.util.Date;
import java.util.List;
/**
* 历史Service接口
*
* @author klp
* @date 2025-10-27
*/
public interface IKlptcm1ProPlantStateHistoryService {
/**
* 查询历史
*/
Klptcm1ProPlantStateHistoryVo queryById(Date INSDATE);
/**
* 查询历史列表
*/
TableDataInfo<Klptcm1ProPlantStateHistoryVo> queryPageList(Klptcm1ProPlantStateHistoryBo bo, PageQuery pageQuery);
/**
* 查询历史列表
*/
List<Klptcm1ProPlantStateHistoryVo> queryList(Klptcm1ProPlantStateHistoryBo bo);
/**
* 新增历史
*/
Boolean insertByBo(Klptcm1ProPlantStateHistoryBo bo);
/**
* 修改历史
*/
Boolean updateByBo(Klptcm1ProPlantStateHistoryBo bo);
/**
* 校验并批量删除历史信息
*/
Boolean deleteWithValidByIds(Collection<Date> ids, Boolean isValid);
}

View File

@@ -0,0 +1,48 @@
package com.klp.pocket.acid.service;
import com.klp.pocket.acid.domain.vo.Klptcm1ProStoppageVo;
import com.klp.pocket.acid.domain.bo.Klptcm1ProStoppageBo;
import com.klp.common.core.page.TableDataInfo;
import com.klp.common.core.domain.PageQuery;
import java.util.Collection;
import java.util.List;
/**
* 停机Service接口
*
* @author klp
* @date 2025-10-27
*/
public interface IKlptcm1ProStoppageService {
/**
* 查询停机
*/
Klptcm1ProStoppageVo queryById(Long STOPID);
/**
* 查询停机列表
*/
TableDataInfo<Klptcm1ProStoppageVo> queryPageList(Klptcm1ProStoppageBo bo, PageQuery pageQuery);
/**
* 查询停机列表
*/
List<Klptcm1ProStoppageVo> queryList(Klptcm1ProStoppageBo bo);
/**
* 新增停机
*/
Boolean insertByBo(Klptcm1ProStoppageBo bo);
/**
* 修改停机
*/
Boolean updateByBo(Klptcm1ProStoppageBo bo);
/**
* 校验并批量删除停机信息
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}

View File

@@ -0,0 +1,16 @@
package com.klp.pocket.acid.service;
import com.klp.pocket.acid.domain.vo.Klptcm1ShiftCurrentVo;
/**
* 当前班组Service接口
*/
public interface IKlptcm1ShiftCurrentService {
/**
* 查询当前班组信息
* @return 当前班组信息
*/
Klptcm1ShiftCurrentVo getCurrentShift();
}

View File

@@ -0,0 +1,50 @@
package com.klp.pocket.acid.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.klp.pocket.acid.domain.vo.ProductionStatisticsVo;
import com.klp.pocket.acid.domain.vo.CrewProductionVo;
import com.klp.pocket.acid.domain.vo.SpecDistributionVo;
import com.klp.pocket.acid.domain.vo.TeamPerformanceVo;
import com.klp.pocket.acid.mapper.Klptcm1PdoExcoilMapper;
import com.klp.pocket.acid.service.IKlptcm1PdoExcoilService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 生产统计Service实现类
*/
@RequiredArgsConstructor
@DS("acid")
@Service
public class Klptcm1PdoExcoilServiceImpl implements IKlptcm1PdoExcoilService {
private final Klptcm1PdoExcoilMapper excoilMapper;
@Override
public ProductionStatisticsVo getProductionStatistics(String startDate, String endDate) {
return excoilMapper.selectProductionStatistics(startDate, endDate);
}
@Override
public List<CrewProductionVo> getCrewProduction(String startDate, String endDate) {
return excoilMapper.selectCrewProduction(startDate, endDate);
}
@Override
public List<SpecDistributionVo> getThicknessDistribution(String startDate, String endDate) {
return excoilMapper.selectThicknessDistribution(startDate, endDate);
}
@Override
public List<SpecDistributionVo> getWidthDistribution(String startDate, String endDate) {
return excoilMapper.selectWidthDistribution(startDate, endDate);
}
@Override
public List<TeamPerformanceVo> getTeamPerformance(String startDate, String endDate) {
return excoilMapper.selectTeamPerformance(startDate, endDate);
}
}

View File

@@ -0,0 +1,48 @@
package com.klp.pocket.acid.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.klp.common.core.domain.PageQuery;
import com.klp.common.core.page.TableDataInfo;
import com.klp.pocket.acid.domain.Klptcm1ProPlantStateCurrent;
import com.klp.pocket.acid.mapper.Klptcm1ProPlantStateCurrentMapper;
import com.klp.pocket.acid.service.IKlptcm1ProPlantStateCurrentService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Date;
import java.math.BigDecimal;
@DS("acid")
@Service
public class Klptcm1ProPlantStateCurrentServiceImpl implements IKlptcm1ProPlantStateCurrentService {
@Resource
private Klptcm1ProPlantStateCurrentMapper klptcm1ProPlantStateCurrentMapper;
@Override
public TableDataInfo<Klptcm1ProPlantStateCurrent> selectAll(PageQuery pageQuery) {
Page<Klptcm1ProPlantStateCurrent> result = klptcm1ProPlantStateCurrentMapper.selectAll(pageQuery.build());
return TableDataInfo.build(result);
}
@Override
public Klptcm1ProPlantStateCurrent selectOne(Date insdate, BigDecimal type) {
return klptcm1ProPlantStateCurrentMapper.selectOne(insdate, type);
}
@Override
public int insert(Klptcm1ProPlantStateCurrent entity) {
return klptcm1ProPlantStateCurrentMapper.insert(entity);
}
@Override
public int updateByKey(Klptcm1ProPlantStateCurrent entity) {
return klptcm1ProPlantStateCurrentMapper.updateByKey(entity);
}
@Override
public int deleteByKey(Date insdate, BigDecimal type) {
return klptcm1ProPlantStateCurrentMapper.deleteByKey(insdate, type);
}
}

View File

@@ -0,0 +1,68 @@
package com.klp.pocket.acid.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.klp.common.core.domain.PageQuery;
import com.klp.common.core.page.TableDataInfo;
import com.klp.pocket.acid.domain.Klptcm1ProPlantStateDefine;
import com.klp.pocket.acid.domain.vo.PlantStateWithValueVo;
import com.klp.pocket.acid.mapper.Klptcm1ProPlantStateDefineMapper;
import com.klp.pocket.acid.service.IKlptcm1ProPlantStateDefineService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.List;
/**
* 工厂状态定义表Service实现类
* 具体业务逻辑实现依赖Mapper操作数据库
*/
@DS("acid")
@Service
public class Klptcm1ProPlantStateDefineServiceImpl implements IKlptcm1ProPlantStateDefineService {
@Resource
private Klptcm1ProPlantStateDefineMapper defineMapper;
@Override
public TableDataInfo<Klptcm1ProPlantStateDefine> getDefinePage(PageQuery pageQuery) {
// 构建分页对象(当前页码、每页条数)
Page<Klptcm1ProPlantStateDefine> result =defineMapper.selectPage(pageQuery.build());
// 调用Mapper分页查询
return TableDataInfo.build(result);
}
@Override
public List<PlantStateWithValueVo> selectByValue(String name) {
return defineMapper.selectByValue(name);
}
@Override
public List<PlantStateWithValueVo> selectAllWithValues() {
return defineMapper.selectAllWithValues();
}
@Override
public Klptcm1ProPlantStateDefine selectById(BigDecimal id) {
return defineMapper.selectById(id);
}
@Override
public int insert(Klptcm1ProPlantStateDefine entity) {
return defineMapper.insert(entity);
}
@Override
public int updateById(Klptcm1ProPlantStateDefine entity) {
return defineMapper.updateById(entity);
}
@Override
public int deleteByIds(List<BigDecimal> ids) {
return defineMapper.deleteByIds(ids);
}
}

View File

@@ -0,0 +1,218 @@
package com.klp.pocket.acid.service.impl;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.klp.common.core.page.TableDataInfo;
import com.klp.common.core.domain.PageQuery;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import com.klp.pocket.acid.domain.bo.Klptcm1ProPlantStateHistoryBo;
import com.klp.pocket.acid.domain.vo.Klptcm1ProPlantStateHistoryVo;
import com.klp.pocket.acid.domain.Klptcm1ProPlantStateHistory;
import com.klp.pocket.acid.mapper.Klptcm1ProPlantStateHistoryMapper;
import com.klp.pocket.acid.service.IKlptcm1ProPlantStateHistoryService;
import java.util.Collection;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
* 历史Service业务层处理
*
* @author klp
* @date 2025-10-27
*/
@RequiredArgsConstructor
@DS("acid")
@Service
public class Klptcm1ProPlantStateHistoryServiceImpl implements IKlptcm1ProPlantStateHistoryService {
private final Klptcm1ProPlantStateHistoryMapper baseMapper;
/**
* 查询历史
*/
@Override
public Klptcm1ProPlantStateHistoryVo queryById(Date INSDATE){
return baseMapper.selectVoById(INSDATE);
}
/**
* 查询历史列表
*/
@Override
public TableDataInfo<Klptcm1ProPlantStateHistoryVo> queryPageList(Klptcm1ProPlantStateHistoryBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<Klptcm1ProPlantStateHistory> lqw = buildQueryWrapper(bo);
Page<Klptcm1ProPlantStateHistoryVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
* 查询历史列表
*/
@Override
public List<Klptcm1ProPlantStateHistoryVo> queryList(Klptcm1ProPlantStateHistoryBo bo) {
LambdaQueryWrapper<Klptcm1ProPlantStateHistory> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private LambdaQueryWrapper<Klptcm1ProPlantStateHistory> buildQueryWrapper(Klptcm1ProPlantStateHistoryBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<Klptcm1ProPlantStateHistory> lqw = Wrappers.lambdaQuery();
lqw.eq(bo.getINSDATE() != null, Klptcm1ProPlantStateHistory::getInsdate, bo.getINSDATE());
lqw.eq(bo.getYEAR() != null, Klptcm1ProPlantStateHistory::getYear, bo.getYEAR());
lqw.eq(bo.getMONTH() != null, Klptcm1ProPlantStateHistory::getMonth, bo.getMONTH());
lqw.eq(bo.getDAY() != null, Klptcm1ProPlantStateHistory::getDay, bo.getDAY());
lqw.eq(bo.getHOUR() != null, Klptcm1ProPlantStateHistory::getHour, bo.getHOUR());
lqw.eq(bo.getMINUTE() != null, Klptcm1ProPlantStateHistory::getMinute, bo.getMINUTE());
lqw.eq(bo.getTYPE() != null, Klptcm1ProPlantStateHistory::getType, bo.getTYPE());
lqw.eq(bo.getVALUE1() != null, Klptcm1ProPlantStateHistory::getValue1, bo.getVALUE1());
lqw.eq(bo.getVALUE2() != null, Klptcm1ProPlantStateHistory::getValue2, bo.getVALUE2());
lqw.eq(bo.getVALUE3() != null, Klptcm1ProPlantStateHistory::getValue3, bo.getVALUE3());
lqw.eq(bo.getVALUE4() != null, Klptcm1ProPlantStateHistory::getValue4, bo.getVALUE4());
lqw.eq(bo.getVALUE5() != null, Klptcm1ProPlantStateHistory::getValue5, bo.getVALUE5());
lqw.eq(bo.getVALUE6() != null, Klptcm1ProPlantStateHistory::getValue6, bo.getVALUE6());
lqw.eq(bo.getVALUE7() != null, Klptcm1ProPlantStateHistory::getValue7, bo.getVALUE7());
lqw.eq(bo.getVALUE8() != null, Klptcm1ProPlantStateHistory::getValue8, bo.getVALUE8());
lqw.eq(bo.getVALUE9() != null, Klptcm1ProPlantStateHistory::getValue9, bo.getVALUE9());
lqw.eq(bo.getVALUE10() != null, Klptcm1ProPlantStateHistory::getValue10, bo.getVALUE10());
lqw.eq(bo.getVALUE11() != null, Klptcm1ProPlantStateHistory::getValue11, bo.getVALUE11());
lqw.eq(bo.getVALUE12() != null, Klptcm1ProPlantStateHistory::getValue12, bo.getVALUE12());
lqw.eq(bo.getVALUE13() != null, Klptcm1ProPlantStateHistory::getValue13, bo.getVALUE13());
lqw.eq(bo.getVALUE14() != null, Klptcm1ProPlantStateHistory::getValue14, bo.getVALUE14());
lqw.eq(bo.getVALUE15() != null, Klptcm1ProPlantStateHistory::getValue15, bo.getVALUE15());
lqw.eq(bo.getVALUE16() != null, Klptcm1ProPlantStateHistory::getValue16, bo.getVALUE16());
lqw.eq(bo.getVALUE17() != null, Klptcm1ProPlantStateHistory::getValue17, bo.getVALUE17());
lqw.eq(bo.getVALUE18() != null, Klptcm1ProPlantStateHistory::getValue18, bo.getVALUE18());
lqw.eq(bo.getVALUE19() != null, Klptcm1ProPlantStateHistory::getValue19, bo.getVALUE19());
lqw.eq(bo.getVALUE20() != null, Klptcm1ProPlantStateHistory::getValue20, bo.getVALUE20());
lqw.eq(bo.getVALUE21() != null, Klptcm1ProPlantStateHistory::getValue21, bo.getVALUE21());
lqw.eq(bo.getVALUE22() != null, Klptcm1ProPlantStateHistory::getValue22, bo.getVALUE22());
lqw.eq(bo.getVALUE23() != null, Klptcm1ProPlantStateHistory::getValue23, bo.getVALUE23());
lqw.eq(bo.getVALUE24() != null, Klptcm1ProPlantStateHistory::getValue24, bo.getVALUE24());
lqw.eq(bo.getVALUE25() != null, Klptcm1ProPlantStateHistory::getValue25, bo.getVALUE25());
lqw.eq(bo.getVALUE26() != null, Klptcm1ProPlantStateHistory::getValue26, bo.getVALUE26());
lqw.eq(bo.getVALUE27() != null, Klptcm1ProPlantStateHistory::getValue27, bo.getVALUE27());
lqw.eq(bo.getVALUE28() != null, Klptcm1ProPlantStateHistory::getValue28, bo.getVALUE28());
lqw.eq(bo.getVALUE29() != null, Klptcm1ProPlantStateHistory::getValue29, bo.getVALUE29());
lqw.eq(bo.getVALUE30() != null, Klptcm1ProPlantStateHistory::getValue30, bo.getVALUE30());
lqw.eq(bo.getVALUE31() != null, Klptcm1ProPlantStateHistory::getValue31, bo.getVALUE31());
lqw.eq(bo.getVALUE32() != null, Klptcm1ProPlantStateHistory::getValue32, bo.getVALUE32());
lqw.eq(bo.getVALUE33() != null, Klptcm1ProPlantStateHistory::getValue33, bo.getVALUE33());
lqw.eq(bo.getVALUE34() != null, Klptcm1ProPlantStateHistory::getValue34, bo.getVALUE34());
lqw.eq(bo.getVALUE35() != null, Klptcm1ProPlantStateHistory::getValue35, bo.getVALUE35());
lqw.eq(bo.getVALUE36() != null, Klptcm1ProPlantStateHistory::getValue36, bo.getVALUE36());
lqw.eq(bo.getVALUE37() != null, Klptcm1ProPlantStateHistory::getValue37, bo.getVALUE37());
lqw.eq(bo.getVALUE38() != null, Klptcm1ProPlantStateHistory::getValue38, bo.getVALUE38());
lqw.eq(bo.getVALUE39() != null, Klptcm1ProPlantStateHistory::getValue39, bo.getVALUE39());
lqw.eq(bo.getVALUE40() != null, Klptcm1ProPlantStateHistory::getValue40, bo.getVALUE40());
lqw.eq(bo.getVALUE41() != null, Klptcm1ProPlantStateHistory::getValue41, bo.getVALUE41());
lqw.eq(bo.getVALUE42() != null, Klptcm1ProPlantStateHistory::getValue42, bo.getVALUE42());
lqw.eq(bo.getVALUE43() != null, Klptcm1ProPlantStateHistory::getValue43, bo.getVALUE43());
lqw.eq(bo.getVALUE44() != null, Klptcm1ProPlantStateHistory::getValue44, bo.getVALUE44());
lqw.eq(bo.getVALUE45() != null, Klptcm1ProPlantStateHistory::getValue45, bo.getVALUE45());
lqw.eq(bo.getVALUE46() != null, Klptcm1ProPlantStateHistory::getValue46, bo.getVALUE46());
lqw.eq(bo.getVALUE47() != null, Klptcm1ProPlantStateHistory::getValue47, bo.getVALUE47());
lqw.eq(bo.getVALUE48() != null, Klptcm1ProPlantStateHistory::getValue48, bo.getVALUE48());
lqw.eq(bo.getVALUE49() != null, Klptcm1ProPlantStateHistory::getValue49, bo.getVALUE49());
lqw.eq(bo.getVALUE50() != null, Klptcm1ProPlantStateHistory::getValue50, bo.getVALUE50());
lqw.eq(bo.getVALUE51() != null, Klptcm1ProPlantStateHistory::getValue51, bo.getVALUE51());
lqw.eq(bo.getVALUE52() != null, Klptcm1ProPlantStateHistory::getValue52, bo.getVALUE52());
lqw.eq(bo.getVALUE53() != null, Klptcm1ProPlantStateHistory::getValue53, bo.getVALUE53());
lqw.eq(bo.getVALUE54() != null, Klptcm1ProPlantStateHistory::getValue54, bo.getVALUE54());
lqw.eq(bo.getVALUE55() != null, Klptcm1ProPlantStateHistory::getValue55, bo.getVALUE55());
lqw.eq(bo.getVALUE56() != null, Klptcm1ProPlantStateHistory::getValue56, bo.getVALUE56());
lqw.eq(bo.getVALUE57() != null, Klptcm1ProPlantStateHistory::getValue57, bo.getVALUE57());
lqw.eq(bo.getVALUE58() != null, Klptcm1ProPlantStateHistory::getValue58, bo.getVALUE58());
lqw.eq(bo.getVALUE59() != null, Klptcm1ProPlantStateHistory::getValue59, bo.getVALUE59());
lqw.eq(bo.getVALUE60() != null, Klptcm1ProPlantStateHistory::getValue60, bo.getVALUE60());
lqw.eq(bo.getVALUE61() != null, Klptcm1ProPlantStateHistory::getValue61, bo.getVALUE61());
lqw.eq(bo.getVALUE62() != null, Klptcm1ProPlantStateHistory::getValue62, bo.getVALUE62());
lqw.eq(bo.getVALUE63() != null, Klptcm1ProPlantStateHistory::getValue63, bo.getVALUE63());
lqw.eq(bo.getVALUE64() != null, Klptcm1ProPlantStateHistory::getValue64, bo.getVALUE64());
lqw.eq(bo.getVALUE65() != null, Klptcm1ProPlantStateHistory::getValue65, bo.getVALUE65());
lqw.eq(bo.getVALUE66() != null, Klptcm1ProPlantStateHistory::getValue66, bo.getVALUE66());
lqw.eq(bo.getVALUE67() != null, Klptcm1ProPlantStateHistory::getValue67, bo.getVALUE67());
lqw.eq(bo.getVALUE68() != null, Klptcm1ProPlantStateHistory::getValue68, bo.getVALUE68());
lqw.eq(bo.getVALUE69() != null, Klptcm1ProPlantStateHistory::getValue69, bo.getVALUE69());
lqw.eq(bo.getVALUE70() != null, Klptcm1ProPlantStateHistory::getValue70, bo.getVALUE70());
lqw.eq(bo.getVALUE71() != null, Klptcm1ProPlantStateHistory::getValue71, bo.getVALUE71());
lqw.eq(bo.getVALUE72() != null, Klptcm1ProPlantStateHistory::getValue72, bo.getVALUE72());
lqw.eq(bo.getVALUE73() != null, Klptcm1ProPlantStateHistory::getValue73, bo.getVALUE73());
lqw.eq(bo.getVALUE74() != null, Klptcm1ProPlantStateHistory::getValue74, bo.getVALUE74());
lqw.eq(bo.getVALUE75() != null, Klptcm1ProPlantStateHistory::getValue75, bo.getVALUE75());
lqw.eq(bo.getVALUE76() != null, Klptcm1ProPlantStateHistory::getValue76, bo.getVALUE76());
lqw.eq(bo.getVALUE77() != null, Klptcm1ProPlantStateHistory::getValue77, bo.getVALUE77());
lqw.eq(bo.getVALUE78() != null, Klptcm1ProPlantStateHistory::getValue78, bo.getVALUE78());
lqw.eq(bo.getVALUE79() != null, Klptcm1ProPlantStateHistory::getValue79, bo.getVALUE79());
lqw.eq(bo.getVALUE80() != null, Klptcm1ProPlantStateHistory::getValue80, bo.getVALUE80());
lqw.eq(bo.getVALUE81() != null, Klptcm1ProPlantStateHistory::getValue81, bo.getVALUE81());
lqw.eq(bo.getVALUE82() != null, Klptcm1ProPlantStateHistory::getValue82, bo.getVALUE82());
lqw.eq(bo.getVALUE83() != null, Klptcm1ProPlantStateHistory::getValue83, bo.getVALUE83());
lqw.eq(bo.getVALUE84() != null, Klptcm1ProPlantStateHistory::getValue84, bo.getVALUE84());
lqw.eq(bo.getVALUE85() != null, Klptcm1ProPlantStateHistory::getValue85, bo.getVALUE85());
lqw.eq(bo.getVALUE86() != null, Klptcm1ProPlantStateHistory::getValue86, bo.getVALUE86());
lqw.eq(bo.getVALUE87() != null, Klptcm1ProPlantStateHistory::getValue87, bo.getVALUE87());
lqw.eq(bo.getVALUE88() != null, Klptcm1ProPlantStateHistory::getValue88, bo.getVALUE88());
lqw.eq(bo.getVALUE89() != null, Klptcm1ProPlantStateHistory::getValue89, bo.getVALUE89());
lqw.eq(bo.getVALUE90() != null, Klptcm1ProPlantStateHistory::getValue90, bo.getVALUE90());
lqw.eq(bo.getVALUE91() != null, Klptcm1ProPlantStateHistory::getValue91, bo.getVALUE91());
lqw.eq(bo.getVALUE92() != null, Klptcm1ProPlantStateHistory::getValue92, bo.getVALUE92());
lqw.eq(bo.getVALUE93() != null, Klptcm1ProPlantStateHistory::getValue93, bo.getVALUE93());
lqw.eq(bo.getVALUE94() != null, Klptcm1ProPlantStateHistory::getValue94, bo.getVALUE94());
lqw.eq(bo.getVALUE95() != null, Klptcm1ProPlantStateHistory::getValue95, bo.getVALUE95());
lqw.eq(bo.getVALUE96() != null, Klptcm1ProPlantStateHistory::getValue96, bo.getVALUE96());
lqw.eq(bo.getVALUE97() != null, Klptcm1ProPlantStateHistory::getValue97, bo.getVALUE97());
lqw.eq(bo.getVALUE98() != null, Klptcm1ProPlantStateHistory::getValue98, bo.getVALUE98());
lqw.eq(bo.getVALUE99() != null, Klptcm1ProPlantStateHistory::getValue99, bo.getVALUE99());
//倒叙
lqw.orderByDesc(Klptcm1ProPlantStateHistory::getInsdate);
return lqw;
}
/**
* 新增历史
*/
@Override
public Boolean insertByBo(Klptcm1ProPlantStateHistoryBo bo) {
Klptcm1ProPlantStateHistory add = BeanUtil.toBean(bo, Klptcm1ProPlantStateHistory.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setINSDATE(add.getInsdate());
}
return flag;
}
/**
* 修改历史
*/
@Override
public Boolean updateByBo(Klptcm1ProPlantStateHistoryBo bo) {
Klptcm1ProPlantStateHistory update = BeanUtil.toBean(bo, Klptcm1ProPlantStateHistory.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
* 保存前的数据校验
*/
private void validEntityBeforeSave(Klptcm1ProPlantStateHistory entity){
//TODO 做一些数据校验,如唯一约束
}
/**
* 批量删除历史
*/
@Override
public Boolean deleteWithValidByIds(Collection<Date> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteBatchIds(ids) > 0;
}
}

View File

@@ -0,0 +1,142 @@
package com.klp.pocket.acid.service.impl;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.klp.common.core.page.TableDataInfo;
import com.klp.common.core.domain.PageQuery;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.klp.common.utils.StringUtils;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import com.klp.pocket.acid.domain.bo.Klptcm1ProStoppageBo;
import com.klp.pocket.acid.domain.vo.Klptcm1ProStoppageVo;
import com.klp.pocket.acid.domain.Klptcm1ProStoppage;
import com.klp.pocket.acid.mapper.Klptcm1ProStoppageMapper;
import com.klp.pocket.acid.service.IKlptcm1ProStoppageService;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.ZoneId;
import java.util.Collection;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
* 停机Service业务层处理
*
* @author klp
* @date 2025-10-27
*/
@RequiredArgsConstructor
@DS("acid")
@Service
public class Klptcm1ProStoppageServiceImpl implements IKlptcm1ProStoppageService {
private final Klptcm1ProStoppageMapper baseMapper;
/**
* 查询停机
*/
@Override
public Klptcm1ProStoppageVo queryById(Long STOPID){
return baseMapper.selectVoById(STOPID);
}
/**
* 查询停机列表
*/
@Override
public TableDataInfo<Klptcm1ProStoppageVo> queryPageList(Klptcm1ProStoppageBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<Klptcm1ProStoppage> lqw = buildQueryWrapper(bo);
Page<Klptcm1ProStoppageVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
* 查询停机列表
*/
@Override
public List<Klptcm1ProStoppageVo> queryList(Klptcm1ProStoppageBo bo) {
LambdaQueryWrapper<Klptcm1ProStoppage> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private LambdaQueryWrapper<Klptcm1ProStoppage> buildQueryWrapper(Klptcm1ProStoppageBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<Klptcm1ProStoppage> lqw = Wrappers.lambdaQuery();
lqw.eq(bo.getSTOPID() != null, Klptcm1ProStoppage::getStopid, bo.getSTOPID());
lqw.eq(StringUtils.isNotBlank(bo.getENCOILID()), Klptcm1ProStoppage::getEncoilid, bo.getENCOILID());
lqw.eq(StringUtils.isNotBlank(bo.getSHIFT()), Klptcm1ProStoppage::getShift, bo.getSHIFT());
lqw.eq(StringUtils.isNotBlank(bo.getCREW()), Klptcm1ProStoppage::getCrew, bo.getCREW());
lqw.eq(StringUtils.isNotBlank(bo.getAREA()), Klptcm1ProStoppage::getArea, bo.getAREA());
lqw.eq(StringUtils.isNotBlank(bo.getUNIT()), Klptcm1ProStoppage::getUnit, bo.getUNIT());
lqw.eq(StringUtils.isNotBlank(bo.getSETON()), Klptcm1ProStoppage::getSeton, bo.getSETON());
lqw.eq(StringUtils.isNotBlank(bo.getREMARK()), Klptcm1ProStoppage::getRemark, bo.getREMARK());
// 日期范围查询:查询停机开始时间在指定范围内的记录
// bo.startDate 是查询开始时间stoppage.startDate 是停机开始时间
lqw.ge(bo.getStartDate() != null, Klptcm1ProStoppage::getStartDate, bo.getStartDate());
// bo.endDate 是查询结束时间stoppage.startDate 是停机开始时间
// 如果结束日期存在将其设置为当天的最后一刻23:59:59.999),以覆盖整天的查询
if (bo.getEndDate() != null) {
Date endDate = bo.getEndDate();
LocalDate localDate = endDate.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
LocalDateTime endOfDay = LocalDateTime.of(localDate, LocalTime.MAX);
Date endDateWithTime = Date.from(endOfDay.atZone(ZoneId.systemDefault()).toInstant());
lqw.le(Klptcm1ProStoppage::getStartDate, endDateWithTime);
}
lqw.eq(bo.getDURATION() != null, Klptcm1ProStoppage::getDuration, bo.getDURATION());
// 只查询持续时间大于等于5分钟300秒的停机记录
lqw.ge(Klptcm1ProStoppage::getDuration, 300);
lqw.eq(bo.getInsDate() != null, Klptcm1ProStoppage::getInsDate, bo.getInsDate());
lqw.eq(StringUtils.isNotBlank(bo.getStopType()), Klptcm1ProStoppage::getStopType, bo.getStopType());
//倒序
lqw.orderByDesc(Klptcm1ProStoppage::getInsDate);
return lqw;
}
/**
* 新增停机
*/
@Override
public Boolean insertByBo(Klptcm1ProStoppageBo bo) {
Klptcm1ProStoppage add = BeanUtil.toBean(bo, Klptcm1ProStoppage.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setSTOPID(add.getStopid());
}
return flag;
}
/**
* 修改停机
*/
@Override
public Boolean updateByBo(Klptcm1ProStoppageBo bo) {
Klptcm1ProStoppage update = BeanUtil.toBean(bo, Klptcm1ProStoppage.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
* 保存前的数据校验
*/
private void validEntityBeforeSave(Klptcm1ProStoppage entity){
//TODO 做一些数据校验,如唯一约束
}
/**
* 批量删除停机
*/
@Override
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteBatchIds(ids) > 0;
}
}

View File

@@ -0,0 +1,25 @@
package com.klp.pocket.acid.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.klp.pocket.acid.domain.vo.Klptcm1ShiftCurrentVo;
import com.klp.pocket.acid.mapper.Klptcm1ShiftCurrentMapper;
import com.klp.pocket.acid.service.IKlptcm1ShiftCurrentService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
/**
* 当前班组Service实现类
*/
@RequiredArgsConstructor
@DS("acid")
@Service
public class Klptcm1ShiftCurrentServiceImpl implements IKlptcm1ShiftCurrentService {
private final Klptcm1ShiftCurrentMapper shiftCurrentMapper;
@Override
public Klptcm1ShiftCurrentVo getCurrentShift() {
return shiftCurrentMapper.selectCurrent();
}
}