为双机架完成轧辊,质量,模型等内容

This commit is contained in:
2026-05-28 16:16:49 +08:00
parent 91fc8b6e38
commit 80d33d9a3b
69 changed files with 7788 additions and 0 deletions

View File

@@ -0,0 +1,71 @@
package com.ruoyi.mill.controller;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.mill.domain.EqpEquipmentChecklist;
import com.ruoyi.mill.service.IEqpEquipmentChecklistService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
/**
* 双机架设备检验清单
*/
@RestController
@RequestMapping("/mill/eqp/checklist")
public class EqpEquipmentChecklistController extends BaseController {
@Autowired
private IEqpEquipmentChecklistService eqpEquipmentChecklistService;
@PreAuthorize("@ss.hasPermi('mill:eqp:checklist:list')")
@GetMapping("/list")
public TableDataInfo list(EqpEquipmentChecklist checklist) {
startPage();
List<EqpEquipmentChecklist> list = eqpEquipmentChecklistService.selectEqpChecklistList(checklist);
return getDataTable(list);
}
@PreAuthorize("@ss.hasPermi('mill:eqp:checklist:export')")
@Log(title = "设备检验清单", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, EqpEquipmentChecklist checklist) {
List<EqpEquipmentChecklist> list = eqpEquipmentChecklistService.selectEqpChecklistList(checklist);
ExcelUtil<EqpEquipmentChecklist> util = new ExcelUtil<>(EqpEquipmentChecklist.class);
util.exportExcel(response, list, "设备检验清单数据");
}
@PreAuthorize("@ss.hasPermi('mill:eqp:checklist:query')")
@GetMapping("/{checkId}")
public AjaxResult getInfo(@PathVariable Long checkId) {
return success(eqpEquipmentChecklistService.selectEqpChecklistByCheckId(checkId));
}
@PreAuthorize("@ss.hasPermi('mill:eqp:checklist:add')")
@Log(title = "设备检验清单", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody EqpEquipmentChecklist checklist) {
return toAjax(eqpEquipmentChecklistService.insertEqpChecklist(checklist));
}
@PreAuthorize("@ss.hasPermi('mill:eqp:checklist:edit')")
@Log(title = "设备检验清单", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody EqpEquipmentChecklist checklist) {
return toAjax(eqpEquipmentChecklistService.updateEqpChecklist(checklist));
}
@PreAuthorize("@ss.hasPermi('mill:eqp:checklist:remove')")
@Log(title = "设备检验清单", businessType = BusinessType.DELETE)
@DeleteMapping("/{checkIds}")
public AjaxResult remove(@PathVariable Long[] checkIds) {
return toAjax(eqpEquipmentChecklistService.deleteEqpChecklistByCheckIds(checkIds));
}
}

View File

@@ -0,0 +1,71 @@
package com.ruoyi.mill.controller;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.mill.domain.EqpEquipmentInspectionRecord;
import com.ruoyi.mill.service.IEqpEquipmentInspectionRecordService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
/**
* 双机架设备巡检记录
*/
@RestController
@RequestMapping("/mill/eqp/record")
public class EqpEquipmentInspectionRecordController extends BaseController {
@Autowired
private IEqpEquipmentInspectionRecordService eqpEquipmentInspectionRecordService;
@PreAuthorize("@ss.hasPermi('mill:eqp:record:list')")
@GetMapping("/list")
public TableDataInfo list(EqpEquipmentInspectionRecord record) {
startPage();
List<EqpEquipmentInspectionRecord> list = eqpEquipmentInspectionRecordService.selectEqpInspectionRecordList(record);
return getDataTable(list);
}
@PreAuthorize("@ss.hasPermi('mill:eqp:record:export')")
@Log(title = "设备巡检记录", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, EqpEquipmentInspectionRecord record) {
List<EqpEquipmentInspectionRecord> list = eqpEquipmentInspectionRecordService.selectEqpInspectionRecordList(record);
ExcelUtil<EqpEquipmentInspectionRecord> util = new ExcelUtil<>(EqpEquipmentInspectionRecord.class);
util.exportExcel(response, list, "设备巡检记录数据");
}
@PreAuthorize("@ss.hasPermi('mill:eqp:record:query')")
@GetMapping("/{recordId}")
public AjaxResult getInfo(@PathVariable Long recordId) {
return success(eqpEquipmentInspectionRecordService.selectEqpInspectionRecordByRecordId(recordId));
}
@PreAuthorize("@ss.hasPermi('mill:eqp:record:add')")
@Log(title = "设备巡检记录", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody EqpEquipmentInspectionRecord record) {
return toAjax(eqpEquipmentInspectionRecordService.insertEqpInspectionRecord(record));
}
@PreAuthorize("@ss.hasPermi('mill:eqp:record:edit')")
@Log(title = "设备巡检记录", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody EqpEquipmentInspectionRecord record) {
return toAjax(eqpEquipmentInspectionRecordService.updateEqpInspectionRecord(record));
}
@PreAuthorize("@ss.hasPermi('mill:eqp:record:remove')")
@Log(title = "设备巡检记录", businessType = BusinessType.DELETE)
@DeleteMapping("/{recordIds}")
public AjaxResult remove(@PathVariable Long[] recordIds) {
return toAjax(eqpEquipmentInspectionRecordService.deleteEqpInspectionRecordByRecordIds(recordIds));
}
}

View File

@@ -0,0 +1,71 @@
package com.ruoyi.mill.controller;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.mill.domain.EqpEquipmentPart;
import com.ruoyi.mill.service.IEqpEquipmentPartService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
/**
* 双机架设备巡检部位
*/
@RestController
@RequestMapping("/mill/eqp/part")
public class EqpEquipmentPartController extends BaseController {
@Autowired
private IEqpEquipmentPartService eqpEquipmentPartService;
@PreAuthorize("@ss.hasPermi('mill:eqp:part:list')")
@GetMapping("/list")
public TableDataInfo list(EqpEquipmentPart part) {
startPage();
List<EqpEquipmentPart> list = eqpEquipmentPartService.selectEqpPartList(part);
return getDataTable(list);
}
@PreAuthorize("@ss.hasPermi('mill:eqp:part:export')")
@Log(title = "设备巡检部位", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, EqpEquipmentPart part) {
List<EqpEquipmentPart> list = eqpEquipmentPartService.selectEqpPartList(part);
ExcelUtil<EqpEquipmentPart> util = new ExcelUtil<>(EqpEquipmentPart.class);
util.exportExcel(response, list, "设备巡检部位数据");
}
@PreAuthorize("@ss.hasPermi('mill:eqp:part:query')")
@GetMapping("/{partId}")
public AjaxResult getInfo(@PathVariable Long partId) {
return success(eqpEquipmentPartService.selectEqpPartByPartId(partId));
}
@PreAuthorize("@ss.hasPermi('mill:eqp:part:add')")
@Log(title = "设备巡检部位", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody EqpEquipmentPart part) {
return toAjax(eqpEquipmentPartService.insertEqpPart(part));
}
@PreAuthorize("@ss.hasPermi('mill:eqp:part:edit')")
@Log(title = "设备巡检部位", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody EqpEquipmentPart part) {
return toAjax(eqpEquipmentPartService.updateEqpPart(part));
}
@PreAuthorize("@ss.hasPermi('mill:eqp:part:remove')")
@Log(title = "设备巡检部位", businessType = BusinessType.DELETE)
@DeleteMapping("/{partIds}")
public AjaxResult remove(@PathVariable Long[] partIds) {
return toAjax(eqpEquipmentPartService.deleteEqpPartByPartIds(partIds));
}
}

View File

@@ -0,0 +1,28 @@
package com.ruoyi.mill.controller;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.mill.domain.KlpCoilInfo;
import com.ruoyi.mill.service.IKlpCoilService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/mill/klpCoil")
public class KlpCoilController extends BaseController {
@Autowired
private IKlpCoilService klpCoilService;
@GetMapping("/queryByCoilNo")
public AjaxResult queryByCoilNo(@RequestParam String coilNo) {
KlpCoilInfo info = klpCoilService.queryByCoilNo(coilNo);
if (info == null) {
return AjaxResult.error("未找到钢卷信息:" + coilNo);
}
return AjaxResult.success(info);
}
}

View File

@@ -0,0 +1,67 @@
package com.ruoyi.mill.controller;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.mill.domain.MesRollGrind;
import com.ruoyi.mill.service.IMesRollGrindService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import java.time.LocalDate;
import java.util.List;
/**
* 磨辊间 /mill/roll/grind
*/
@RestController
@RequestMapping("/mill/roll/grind")
public class MesRollGrindController extends BaseController {
@Autowired
private IMesRollGrindService grindService;
@PreAuthorize("@ss.hasPermi('mill:roll:grind:list')")
@GetMapping("/list")
public AjaxResult list(@RequestParam(required = false) Long rollId,
@RequestParam(required = false) String beginTime,
@RequestParam(required = false) String endTime) {
if (rollId != null) {
return AjaxResult.success(grindService.selectMesRollGrindByRollId(rollId));
}
MesRollGrind query = new MesRollGrind();
query.setBeginTime(beginTime);
query.setEndTime(endTime);
return AjaxResult.success(grindService.selectMesRollGrindList(query));
}
@GetMapping("/monthlyStats")
public AjaxResult monthlyStats(@RequestParam Long rollId,
@RequestParam(defaultValue = "0") int year) {
int y = year > 0 ? year : LocalDate.now().getYear();
return AjaxResult.success(grindService.selectMonthlyStats(rollId, y));
}
@PreAuthorize("@ss.hasPermi('mill:roll:grind:add')")
@Log(title = "磨辊间", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody MesRollGrind grind) {
return toAjax(grindService.insertMesRollGrind(grind));
}
@PreAuthorize("@ss.hasPermi('mill:roll:grind:edit')")
@Log(title = "磨辊间", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody MesRollGrind grind) {
return toAjax(grindService.updateMesRollGrind(grind));
}
@PreAuthorize("@ss.hasPermi('mill:roll:grind:remove')")
@Log(title = "磨辊间", businessType = BusinessType.DELETE)
@DeleteMapping("/{grindId}")
public AjaxResult remove(@PathVariable Long grindId) {
return toAjax(grindService.deleteMesRollGrindById(grindId));
}
}

View File

@@ -0,0 +1,81 @@
package com.ruoyi.mill.controller;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.mill.domain.MesRollInfo;
import com.ruoyi.mill.service.IMesRollInfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 轧辊管理 /mill/roll/info
*/
@RestController
@RequestMapping("/mill/roll/info")
public class MesRollInfoController extends BaseController {
private static final Long DOUBLE_RACK_LINE_ID = 5L;
@Autowired
private IMesRollInfoService rollInfoService;
@PreAuthorize("@ss.hasPermi('mill:roll:info:list')")
@GetMapping("/list")
public TableDataInfo list(MesRollInfo rollInfo) {
rollInfo.setLineId(DOUBLE_RACK_LINE_ID);
startPage();
List<MesRollInfo> list = rollInfoService.selectMesRollInfoList(rollInfo);
return getDataTable(list);
}
@GetMapping("/stats")
public AjaxResult stats() {
return AjaxResult.success(rollInfoService.selectStatusStats(DOUBLE_RACK_LINE_ID));
}
@GetMapping("/options")
public AjaxResult options(String rollType, String status) {
return AjaxResult.success(rollInfoService.selectRollNoList(DOUBLE_RACK_LINE_ID, rollType, status));
}
@PreAuthorize("@ss.hasPermi('mill:roll:info:query')")
@GetMapping("/{rollId}")
public AjaxResult getInfo(@PathVariable Long rollId) {
return AjaxResult.success(rollInfoService.selectMesRollInfoById(rollId));
}
@PreAuthorize("@ss.hasPermi('mill:roll:info:add')")
@Log(title = "轧辊管理", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody MesRollInfo rollInfo) {
return toAjax(rollInfoService.insertMesRollInfo(rollInfo));
}
@PreAuthorize("@ss.hasPermi('mill:roll:info:edit')")
@Log(title = "轧辊管理", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody MesRollInfo rollInfo) {
return toAjax(rollInfoService.updateMesRollInfo(rollInfo));
}
@PreAuthorize("@ss.hasPermi('mill:roll:info:remove')")
@Log(title = "轧辊管理", businessType = BusinessType.DELETE)
@DeleteMapping("/{rollIds}")
public AjaxResult remove(@PathVariable Long[] rollIds) {
return toAjax(rollInfoService.deleteMesRollInfoByIds(rollIds));
}
@PreAuthorize("@ss.hasPermi('mill:roll:info:edit')")
@Log(title = "轧辊管理-封闭", businessType = BusinessType.UPDATE)
@PutMapping("/{rollId}/scrap")
public AjaxResult scrap(@PathVariable Long rollId) {
rollInfoService.scrapRoll(rollId);
return AjaxResult.success();
}
}

View File

@@ -0,0 +1,48 @@
package com.ruoyi.mill.controller;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.mill.domain.QcInspectionItem;
import com.ruoyi.mill.service.IQcInspectionItemService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@RestController
@RequestMapping("/mill/qc/item")
public class QcInspectionItemController extends BaseController {
@Autowired
private IQcInspectionItemService itemService;
@PreAuthorize("@ss.hasPermi('mill:qc:task:list')")
@GetMapping("/list")
public TableDataInfo list(QcInspectionItem item) {
startPage();
List<QcInspectionItem> list = itemService.selectQcInspectionItemList(item);
return getDataTable(list);
}
@GetMapping("/byTask/{taskId}")
public AjaxResult listByTask(@PathVariable Long taskId) {
return AjaxResult.success(itemService.selectQcInspectionItemByTaskId(taskId));
}
@PreAuthorize("@ss.hasPermi('mill:qc:task:query')")
@GetMapping("/{itemId}")
public AjaxResult getInfo(@PathVariable Long itemId) {
return AjaxResult.success(itemService.selectQcInspectionItemById(itemId));
}
@Log(title = "检验项目", businessType = BusinessType.UPDATE)
@PreAuthorize("@ss.hasPermi('mill:qc:task:edit')")
@PutMapping
public AjaxResult edit(@RequestBody QcInspectionItem item) {
return toAjax(itemService.updateQcInspectionItem(item));
}
}

View File

@@ -0,0 +1,62 @@
package com.ruoyi.mill.controller;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.mill.domain.QcInspectionTask;
import com.ruoyi.mill.service.IQcInspectionTaskService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@RestController
@RequestMapping("/mill/qc/task")
public class QcInspectionTaskController extends BaseController {
@Autowired
private IQcInspectionTaskService taskService;
@PreAuthorize("@ss.hasPermi('mill:qc:task:list')")
@GetMapping("/list")
public TableDataInfo list(QcInspectionTask task) {
startPage();
List<QcInspectionTask> list = taskService.selectQcInspectionTaskListByDoubleRack(task);
return getDataTable(list);
}
@PreAuthorize("@ss.hasPermi('mill:qc:task:query')")
@GetMapping("/{taskId}")
public AjaxResult getInfo(@PathVariable Long taskId) {
return AjaxResult.success(taskService.selectQcInspectionTaskById(taskId));
}
@Log(title = "检验任务", businessType = BusinessType.INSERT)
@PreAuthorize("@ss.hasPermi('mill:qc:task:add')")
@PostMapping
public AjaxResult add(@RequestBody QcInspectionTask task) {
return toAjax(taskService.insertQcInspectionTask(task));
}
@Log(title = "检验任务", businessType = BusinessType.UPDATE)
@PreAuthorize("@ss.hasPermi('mill:qc:task:edit')")
@PutMapping
public AjaxResult edit(@RequestBody QcInspectionTask task) {
return toAjax(taskService.updateQcInspectionTask(task));
}
@Log(title = "检验任务", businessType = BusinessType.DELETE)
@PreAuthorize("@ss.hasPermi('mill:qc:task:remove')")
@DeleteMapping("/{taskIds}")
public AjaxResult remove(@PathVariable Long[] taskIds) {
return toAjax(taskService.deleteQcInspectionTaskByIds(taskIds));
}
@GetMapping("/coils")
public AjaxResult coilList() {
return AjaxResult.success(taskService.selectDoubleRackCoilList());
}
}

View File

@@ -0,0 +1,57 @@
package com.ruoyi.mill.controller;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.mill.domain.WmsCoilAbnormal;
import com.ruoyi.mill.service.IWmsCoilAbnormalService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@RestController
@RequestMapping("/mill/qc/abnormal")
public class WmsCoilAbnormalController extends BaseController {
@Autowired
private IWmsCoilAbnormalService abnormalService;
@PreAuthorize("@ss.hasPermi('mill:qc:abnormal:list')")
@GetMapping("/list")
public TableDataInfo list(WmsCoilAbnormal abnormal) {
startPage();
List<WmsCoilAbnormal> list = abnormalService.selectWmsCoilAbnormalListByDoubleRack(abnormal);
return getDataTable(list);
}
@PreAuthorize("@ss.hasPermi('mill:qc:abnormal:query')")
@GetMapping("/{abnormalId}")
public AjaxResult getInfo(@PathVariable Long abnormalId) {
return AjaxResult.success(abnormalService.selectWmsCoilAbnormalById(abnormalId));
}
@Log(title = "质量异常", businessType = BusinessType.INSERT)
@PreAuthorize("@ss.hasPermi('mill:qc:abnormal:add')")
@PostMapping
public AjaxResult add(@RequestBody WmsCoilAbnormal abnormal) {
return toAjax(abnormalService.insertWmsCoilAbnormal(abnormal));
}
@Log(title = "质量异常", businessType = BusinessType.UPDATE)
@PreAuthorize("@ss.hasPermi('mill:qc:abnormal:edit')")
@PutMapping
public AjaxResult edit(@RequestBody WmsCoilAbnormal abnormal) {
return toAjax(abnormalService.updateWmsCoilAbnormal(abnormal));
}
@Log(title = "质量异常", businessType = BusinessType.DELETE)
@PreAuthorize("@ss.hasPermi('mill:qc:abnormal:remove')")
@DeleteMapping("/{abnormalIds}")
public AjaxResult remove(@PathVariable Long[] abnormalIds) {
return toAjax(abnormalService.deleteWmsCoilAbnormalByIds(abnormalIds));
}
}

View File

@@ -0,0 +1,43 @@
package com.ruoyi.mill.domain;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
/**
* 双机架设备检验清单 mill_eqp_checklist
*/
@Data
public class EqpEquipmentChecklist extends BaseEntity {
private static final long serialVersionUID = 1L;
@Excel(name = "清单ID")
private Long checkId;
@Excel(name = "检验编号")
private String checkNo;
@Excel(name = "巡检部位ID")
private Long partId;
@Excel(name = "设备部件名称")
private String partName;
@Excel(name = "检验内容")
private String checkContent;
@Excel(name = "设备状态")
private String equipmentState;
@Excel(name = "检验标准")
private String checkStandard;
@Excel(name = "责任人")
private String responsiblePerson;
@Excel(name = "备注")
private String remark;
private String delFlag;
}

View File

@@ -0,0 +1,59 @@
package com.ruoyi.mill.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
import java.util.Date;
/**
* 双机架设备巡检记录 mill_eqp_inspection_record
*/
@Data
public class EqpEquipmentInspectionRecord extends BaseEntity {
private static final long serialVersionUID = 1L;
@Excel(name = "记录ID")
private Long recordId;
@Excel(name = "检验清单ID")
private Long checkId;
/** 班次 1白班 2夜班 */
@Excel(name = "班次")
private Integer shift;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "巡检时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date inspectTime;
/** 运行状态 1正常 2故障 */
@Excel(name = "运行状态")
private Integer runStatus;
@Excel(name = "巡检人")
private String inspector;
@Excel(name = "异常描述")
private String abnormalDesc;
@Excel(name = "巡检照片")
private String photo;
@Excel(name = "备注")
private String remark;
private String delFlag;
// 关联字段(查询时带出)
private Long partId;
private String checkContent;
private String checkStandard;
private String partName;
// 时间范围查询参数
private String startInspectTime;
private String endInspectTime;
}

View File

@@ -0,0 +1,31 @@
package com.ruoyi.mill.domain;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
/**
* 双机架设备巡检部位 mill_eqp_part
*/
@Data
public class EqpEquipmentPart extends BaseEntity {
private static final long serialVersionUID = 1L;
@Excel(name = "部位ID")
private Long partId;
@Excel(name = "巡检部位")
private String inspectPart;
@Excel(name = "产线")
private String productionLine;
@Excel(name = "产线段")
private String lineSection;
@Excel(name = "备注")
private String remark;
private String delFlag;
}

View File

@@ -0,0 +1,21 @@
package com.ruoyi.mill.domain;
import lombok.Data;
import java.math.BigDecimal;
/** 三级 WMS 钢卷信息(只读,从 klp-oa-test.wms_material_coil 查询) */
@Data
public class KlpCoilInfo {
private Long coilId;
private String enterCoilNo;
private String currentCoilNo;
private String supplierCoilNo;
private String actualThickness;
private BigDecimal actualWidth;
private BigDecimal netWeight;
private BigDecimal grossWeight;
private BigDecimal length;
private String qualityStatus;
private String materialType;
private String temperGrade;
}

View File

@@ -0,0 +1,63 @@
package com.ruoyi.mill.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
* 磨辊记录 mes_roll_grind
*/
@Data
public class MesRollGrind extends BaseEntity {
private static final long serialVersionUID = 1L;
@Excel(name = "磨削记录ID")
private Long grindId;
private Long lineId;
@Excel(name = "轧辊ID")
private Long rollId;
@Excel(name = "轧辊编号")
private String rollNo;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "磨削时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date grindTime;
@Excel(name = "班组")
private String team;
@Excel(name = "磨前直径(mm)")
private BigDecimal diaBefore;
@Excel(name = "磨后直径(mm)")
private BigDecimal diaAfter;
@Excel(name = "磨削量(mm)")
private BigDecimal grindAmount;
@Excel(name = "辊型")
private String rollShape;
@Excel(name = "探伤结果")
private String flawResult;
@Excel(name = "硬度")
private BigDecimal hardness;
@Excel(name = "操作者")
private String operator;
private Integer delFlag;
// 时间范围查询
private String beginTime;
private String endTime;
}

View File

@@ -0,0 +1,73 @@
package com.ruoyi.mill.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
* 轧辊库 mes_roll_info
*/
@Data
public class MesRollInfo extends BaseEntity {
private static final long serialVersionUID = 1L;
@Excel(name = "轧辊ID")
private Long rollId;
private Long lineId;
@Excel(name = "轧辊编号")
private String rollNo;
/** WR=工作辊 / BR=支撑辊 */
@Excel(name = "辊型")
private String rollType;
/** Offline / Standby / Online / Scrapped */
@Excel(name = "状态")
private String status;
@Excel(name = "初始辊径(mm)")
private BigDecimal initialDia;
@Excel(name = "当前辊径(mm)")
private BigDecimal currentDia;
@Excel(name = "最小辊径(mm)")
private BigDecimal minDia;
@Excel(name = "粗糙度")
private BigDecimal roughness;
@Excel(name = "凸度")
private BigDecimal crown;
@Excel(name = "材质")
private String material;
@Excel(name = "磨削次数")
private Integer grindCount;
@Excel(name = "累计轧制重量(t)")
private BigDecimal totalRolledWeight;
@Excel(name = "累计轧制长度(m)")
private BigDecimal totalRolledLength;
@Excel(name = "累计轧制卷数")
private Integer totalRolledCount;
@JsonFormat(pattern = "yyyy-MM-dd")
@Excel(name = "制造日期", width = 30, dateFormat = "yyyy-MM-dd")
private Date manufactureDate;
@Excel(name = "厂家")
private String manufacturer;
private Integer delFlag;
}

View File

@@ -0,0 +1,33 @@
package com.ruoyi.mill.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
* 检验任务项目 qc_inspection_item
*/
@Data
public class QcInspectionItem extends BaseEntity {
private static final long serialVersionUID = 1L;
private Long itemId;
private Long taskId;
private String itemName;
private String standardValue;
private BigDecimal upperLimit;
private BigDecimal lowerLimit;
private String unit;
private String itemType;
private String inspectValue;
private Integer isQualified;
private String judgeResult;
private String inspectUser;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date inspectTime;
private Integer delFlag;
}

View File

@@ -0,0 +1,47 @@
package com.ruoyi.mill.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
* 检验任务 qc_inspection_task
*/
@Data
public class QcInspectionTask extends BaseEntity {
private static final long serialVersionUID = 1L;
private Long taskId;
private String taskCode;
private String taskType;
private String belongCompany;
private String sourceType;
private Long sourceId;
private Long schemeId;
private String schemeName;
private Integer status;
private String inspectUser;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date inspectTime;
private String auditUser;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date auditTime;
private String result;
private String remark;
private String coilIds;
private String enterCoilNos;
private String attachmentFiles;
private Integer delFlag;
// 查询参数
private String beginTime;
private String endTime;
private Long coilId; // 按单个 coilId 过滤
// 关联数据
private List<QcInspectionItem> items;
}

View File

@@ -0,0 +1,46 @@
package com.ruoyi.mill.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
* 钢卷异常 wms_coil_abnormal
*/
@Data
public class WmsCoilAbnormal extends BaseEntity {
private static final long serialVersionUID = 1L;
private Long abnormalId;
private Long coilId;
private String productionLine;
private String position;
private String plateSurface;
private BigDecimal length;
private BigDecimal startPosition;
private BigDecimal endPosition;
private String defectCode;
private String defectType;
private BigDecimal defectRate;
private BigDecimal defectWeight;
private String degree;
private String judgeLevel;
private String judgeBy;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date judgeTime;
private Integer mainMark;
private Integer wholeCoilMark;
private String attachmentFiles;
private Integer delFlag;
// 关联字段
private String coilNo; // 从 wms_material_coil 带出
// 查询参数
private String beginTime;
private String endTime;
}

View File

@@ -0,0 +1,20 @@
package com.ruoyi.mill.mapper;
import com.ruoyi.mill.domain.EqpEquipmentChecklist;
import java.util.List;
public interface EqpEquipmentChecklistMapper {
List<EqpEquipmentChecklist> selectEqpChecklistList(EqpEquipmentChecklist checklist);
EqpEquipmentChecklist selectEqpChecklistByCheckId(Long checkId);
int insertEqpChecklist(EqpEquipmentChecklist checklist);
int updateEqpChecklist(EqpEquipmentChecklist checklist);
int deleteEqpChecklistByCheckId(Long checkId);
int deleteEqpChecklistByCheckIds(Long[] checkIds);
}

View File

@@ -0,0 +1,20 @@
package com.ruoyi.mill.mapper;
import com.ruoyi.mill.domain.EqpEquipmentInspectionRecord;
import java.util.List;
public interface EqpEquipmentInspectionRecordMapper {
List<EqpEquipmentInspectionRecord> selectEqpInspectionRecordList(EqpEquipmentInspectionRecord record);
EqpEquipmentInspectionRecord selectEqpInspectionRecordByRecordId(Long recordId);
int insertEqpInspectionRecord(EqpEquipmentInspectionRecord record);
int updateEqpInspectionRecord(EqpEquipmentInspectionRecord record);
int deleteEqpInspectionRecordByRecordId(Long recordId);
int deleteEqpInspectionRecordByRecordIds(Long[] recordIds);
}

View File

@@ -0,0 +1,20 @@
package com.ruoyi.mill.mapper;
import com.ruoyi.mill.domain.EqpEquipmentPart;
import java.util.List;
public interface EqpEquipmentPartMapper {
List<EqpEquipmentPart> selectEqpPartList(EqpEquipmentPart part);
EqpEquipmentPart selectEqpPartByPartId(Long partId);
int insertEqpPart(EqpEquipmentPart part);
int updateEqpPart(EqpEquipmentPart part);
int deleteEqpPartByPartId(Long partId);
int deleteEqpPartByPartIds(Long[] partIds);
}

View File

@@ -0,0 +1,11 @@
package com.ruoyi.mill.mapper;
import com.ruoyi.mill.domain.KlpCoilInfo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@Mapper
public interface KlpCoilMapper {
/** 根据入场钢卷号或当前钢卷号查询钢卷基础信息 */
KlpCoilInfo selectByCoilNo(@Param("coilNo") String coilNo);
}

View File

@@ -0,0 +1,24 @@
package com.ruoyi.mill.mapper;
import com.ruoyi.mill.domain.MesRollGrind;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
public interface MesRollGrindMapper {
List<MesRollGrind> selectMesRollGrindList(MesRollGrind grind);
List<MesRollGrind> selectMesRollGrindByRollId(@Param("rollId") Long rollId);
MesRollGrind selectMesRollGrindById(Long grindId);
int insertMesRollGrind(MesRollGrind grind);
int updateMesRollGrind(MesRollGrind grind);
int deleteMesRollGrindById(Long grindId);
List<Map<String, Object>> selectMonthlyStats(@Param("rollId") Long rollId, @Param("year") int year);
}

View File

@@ -0,0 +1,37 @@
package com.ruoyi.mill.mapper;
import com.ruoyi.mill.domain.MesRollInfo;
import org.apache.ibatis.annotations.Param;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;
public interface MesRollInfoMapper {
List<MesRollInfo> selectMesRollInfoList(MesRollInfo rollInfo);
MesRollInfo selectMesRollInfoById(Long rollId);
MesRollInfo selectMesRollInfoByRollNo(@Param("rollNo") String rollNo);
int insertMesRollInfo(MesRollInfo rollInfo);
int updateMesRollInfo(MesRollInfo rollInfo);
int deleteMesRollInfoById(Long rollId);
int deleteMesRollInfoByIds(Long[] rollIds);
List<Map<String, Object>> selectStatusStats(@Param("lineId") Long lineId);
List<String> selectRollNoList(@Param("lineId") Long lineId,
@Param("rollType") String rollType,
@Param("status") String status);
int updateStatusByRollNo(@Param("rollNo") String rollNo, @Param("status") String status);
int incrementGrindCount(@Param("rollId") Long rollId, @Param("diaAfter") BigDecimal diaAfter);
int updateCurrentDia(@Param("rollId") Long rollId, @Param("currentDia") BigDecimal currentDia);
}

View File

@@ -0,0 +1,22 @@
package com.ruoyi.mill.mapper;
import com.ruoyi.mill.domain.QcInspectionItem;
import java.util.List;
public interface QcInspectionItemMapper {
List<QcInspectionItem> selectQcInspectionItemList(QcInspectionItem item);
List<QcInspectionItem> selectQcInspectionItemByTaskId(Long taskId);
QcInspectionItem selectQcInspectionItemById(Long itemId);
int insertQcInspectionItem(QcInspectionItem item);
int updateQcInspectionItem(QcInspectionItem item);
int deleteQcInspectionItemById(Long itemId);
int deleteQcInspectionItemByTaskId(Long taskId);
}

View File

@@ -0,0 +1,30 @@
package com.ruoyi.mill.mapper;
import com.ruoyi.mill.domain.QcInspectionTask;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface QcInspectionTaskMapper {
List<QcInspectionTask> selectQcInspectionTaskList(QcInspectionTask task);
List<QcInspectionTask> selectQcInspectionTaskListByCoilIds(@Param("task") QcInspectionTask task,
@Param("coilIds") List<Long> coilIds);
QcInspectionTask selectQcInspectionTaskById(Long taskId);
int insertQcInspectionTask(QcInspectionTask task);
int updateQcInspectionTask(QcInspectionTask task);
int deleteQcInspectionTaskById(Long taskId);
int deleteQcInspectionTaskByIds(Long[] taskIds);
/** 获取所有 processed_coil_ids 字符串(来自双机架 action 类型) */
List<String> selectDoubleRackProcessedCoilIds(@Param("actionTypes") List<Integer> actionTypes);
/** 按 coilId 列表查询钢卷基本信息coilId + current_coil_no */
List<java.util.Map<String, Object>> selectCoilInfoByIds(@Param("coilIds") List<Long> coilIds);
}

View File

@@ -0,0 +1,24 @@
package com.ruoyi.mill.mapper;
import com.ruoyi.mill.domain.WmsCoilAbnormal;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface WmsCoilAbnormalMapper {
List<WmsCoilAbnormal> selectWmsCoilAbnormalList(WmsCoilAbnormal abnormal);
List<WmsCoilAbnormal> selectWmsCoilAbnormalListByCoilIds(@Param("abnormal") WmsCoilAbnormal abnormal,
@Param("coilIds") List<Long> coilIds);
WmsCoilAbnormal selectWmsCoilAbnormalById(Long abnormalId);
int insertWmsCoilAbnormal(WmsCoilAbnormal abnormal);
int updateWmsCoilAbnormal(WmsCoilAbnormal abnormal);
int deleteWmsCoilAbnormalById(Long abnormalId);
int deleteWmsCoilAbnormalByIds(Long[] abnormalIds);
}

View File

@@ -0,0 +1,20 @@
package com.ruoyi.mill.service;
import com.ruoyi.mill.domain.EqpEquipmentChecklist;
import java.util.List;
public interface IEqpEquipmentChecklistService {
List<EqpEquipmentChecklist> selectEqpChecklistList(EqpEquipmentChecklist checklist);
EqpEquipmentChecklist selectEqpChecklistByCheckId(Long checkId);
int insertEqpChecklist(EqpEquipmentChecklist checklist);
int updateEqpChecklist(EqpEquipmentChecklist checklist);
int deleteEqpChecklistByCheckIds(Long[] checkIds);
int deleteEqpChecklistByCheckId(Long checkId);
}

View File

@@ -0,0 +1,20 @@
package com.ruoyi.mill.service;
import com.ruoyi.mill.domain.EqpEquipmentInspectionRecord;
import java.util.List;
public interface IEqpEquipmentInspectionRecordService {
List<EqpEquipmentInspectionRecord> selectEqpInspectionRecordList(EqpEquipmentInspectionRecord record);
EqpEquipmentInspectionRecord selectEqpInspectionRecordByRecordId(Long recordId);
int insertEqpInspectionRecord(EqpEquipmentInspectionRecord record);
int updateEqpInspectionRecord(EqpEquipmentInspectionRecord record);
int deleteEqpInspectionRecordByRecordIds(Long[] recordIds);
int deleteEqpInspectionRecordByRecordId(Long recordId);
}

View File

@@ -0,0 +1,20 @@
package com.ruoyi.mill.service;
import com.ruoyi.mill.domain.EqpEquipmentPart;
import java.util.List;
public interface IEqpEquipmentPartService {
List<EqpEquipmentPart> selectEqpPartList(EqpEquipmentPart part);
EqpEquipmentPart selectEqpPartByPartId(Long partId);
int insertEqpPart(EqpEquipmentPart part);
int updateEqpPart(EqpEquipmentPart part);
int deleteEqpPartByPartIds(Long[] partIds);
int deleteEqpPartByPartId(Long partId);
}

View File

@@ -0,0 +1,8 @@
package com.ruoyi.mill.service;
import com.ruoyi.mill.domain.KlpCoilInfo;
public interface IKlpCoilService {
/** 根据入场钢卷号或当前钢卷号查询三级 WMS 钢卷信息 */
KlpCoilInfo queryByCoilNo(String coilNo);
}

View File

@@ -0,0 +1,23 @@
package com.ruoyi.mill.service;
import com.ruoyi.mill.domain.MesRollGrind;
import java.util.List;
import java.util.Map;
public interface IMesRollGrindService {
List<MesRollGrind> selectMesRollGrindList(MesRollGrind grind);
List<MesRollGrind> selectMesRollGrindByRollId(Long rollId);
MesRollGrind selectMesRollGrindById(Long grindId);
int insertMesRollGrind(MesRollGrind grind);
int updateMesRollGrind(MesRollGrind grind);
int deleteMesRollGrindById(Long grindId);
List<Map<String, Object>> selectMonthlyStats(Long rollId, int year);
}

View File

@@ -0,0 +1,25 @@
package com.ruoyi.mill.service;
import com.ruoyi.mill.domain.MesRollInfo;
import java.util.List;
import java.util.Map;
public interface IMesRollInfoService {
List<MesRollInfo> selectMesRollInfoList(MesRollInfo rollInfo);
MesRollInfo selectMesRollInfoById(Long rollId);
int insertMesRollInfo(MesRollInfo rollInfo);
int updateMesRollInfo(MesRollInfo rollInfo);
int deleteMesRollInfoByIds(Long[] rollIds);
Map<String, Object> selectStatusStats(Long lineId);
List<String> selectRollNoList(Long lineId, String rollType, String status);
void scrapRoll(Long rollId);
}

View File

@@ -0,0 +1,22 @@
package com.ruoyi.mill.service;
import com.ruoyi.mill.domain.QcInspectionItem;
import java.util.List;
public interface IQcInspectionItemService {
List<QcInspectionItem> selectQcInspectionItemList(QcInspectionItem item);
List<QcInspectionItem> selectQcInspectionItemByTaskId(Long taskId);
QcInspectionItem selectQcInspectionItemById(Long itemId);
int insertQcInspectionItem(QcInspectionItem item);
int updateQcInspectionItem(QcInspectionItem item);
int deleteQcInspectionItemById(Long itemId);
int deleteQcInspectionItemByTaskId(Long taskId);
}

View File

@@ -0,0 +1,25 @@
package com.ruoyi.mill.service;
import com.ruoyi.mill.domain.QcInspectionTask;
import java.util.List;
import java.util.Map;
public interface IQcInspectionTaskService {
List<QcInspectionTask> selectQcInspectionTaskList(QcInspectionTask task);
List<QcInspectionTask> selectQcInspectionTaskListByDoubleRack(QcInspectionTask task);
QcInspectionTask selectQcInspectionTaskById(Long taskId);
int insertQcInspectionTask(QcInspectionTask task);
int updateQcInspectionTask(QcInspectionTask task);
int deleteQcInspectionTaskById(Long taskId);
int deleteQcInspectionTaskByIds(Long[] taskIds);
List<Map<String, Object>> selectDoubleRackCoilList();
}

View File

@@ -0,0 +1,22 @@
package com.ruoyi.mill.service;
import com.ruoyi.mill.domain.WmsCoilAbnormal;
import java.util.List;
public interface IWmsCoilAbnormalService {
List<WmsCoilAbnormal> selectWmsCoilAbnormalList(WmsCoilAbnormal abnormal);
List<WmsCoilAbnormal> selectWmsCoilAbnormalListByDoubleRack(WmsCoilAbnormal abnormal);
WmsCoilAbnormal selectWmsCoilAbnormalById(Long abnormalId);
int insertWmsCoilAbnormal(WmsCoilAbnormal abnormal);
int updateWmsCoilAbnormal(WmsCoilAbnormal abnormal);
int deleteWmsCoilAbnormalById(Long abnormalId);
int deleteWmsCoilAbnormalByIds(Long[] abnormalIds);
}

View File

@@ -0,0 +1,52 @@
package com.ruoyi.mill.service.impl;
import com.ruoyi.common.annotation.DataSource;
import com.ruoyi.common.enums.DataSourceType;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.mill.domain.EqpEquipmentChecklist;
import com.ruoyi.mill.mapper.EqpEquipmentChecklistMapper;
import com.ruoyi.mill.service.IEqpEquipmentChecklistService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
@DataSource(DataSourceType.KLP)
public class EqpEquipmentChecklistServiceImpl implements IEqpEquipmentChecklistService {
@Autowired
private EqpEquipmentChecklistMapper eqpEquipmentChecklistMapper;
@Override
public List<EqpEquipmentChecklist> selectEqpChecklistList(EqpEquipmentChecklist checklist) {
return eqpEquipmentChecklistMapper.selectEqpChecklistList(checklist);
}
@Override
public EqpEquipmentChecklist selectEqpChecklistByCheckId(Long checkId) {
return eqpEquipmentChecklistMapper.selectEqpChecklistByCheckId(checkId);
}
@Override
public int insertEqpChecklist(EqpEquipmentChecklist checklist) {
checklist.setCreateTime(DateUtils.getNowDate());
return eqpEquipmentChecklistMapper.insertEqpChecklist(checklist);
}
@Override
public int updateEqpChecklist(EqpEquipmentChecklist checklist) {
checklist.setUpdateTime(DateUtils.getNowDate());
return eqpEquipmentChecklistMapper.updateEqpChecklist(checklist);
}
@Override
public int deleteEqpChecklistByCheckIds(Long[] checkIds) {
return eqpEquipmentChecklistMapper.deleteEqpChecklistByCheckIds(checkIds);
}
@Override
public int deleteEqpChecklistByCheckId(Long checkId) {
return eqpEquipmentChecklistMapper.deleteEqpChecklistByCheckId(checkId);
}
}

View File

@@ -0,0 +1,52 @@
package com.ruoyi.mill.service.impl;
import com.ruoyi.common.annotation.DataSource;
import com.ruoyi.common.enums.DataSourceType;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.mill.domain.EqpEquipmentInspectionRecord;
import com.ruoyi.mill.mapper.EqpEquipmentInspectionRecordMapper;
import com.ruoyi.mill.service.IEqpEquipmentInspectionRecordService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
@DataSource(DataSourceType.KLP)
public class EqpEquipmentInspectionRecordServiceImpl implements IEqpEquipmentInspectionRecordService {
@Autowired
private EqpEquipmentInspectionRecordMapper eqpEquipmentInspectionRecordMapper;
@Override
public List<EqpEquipmentInspectionRecord> selectEqpInspectionRecordList(EqpEquipmentInspectionRecord record) {
return eqpEquipmentInspectionRecordMapper.selectEqpInspectionRecordList(record);
}
@Override
public EqpEquipmentInspectionRecord selectEqpInspectionRecordByRecordId(Long recordId) {
return eqpEquipmentInspectionRecordMapper.selectEqpInspectionRecordByRecordId(recordId);
}
@Override
public int insertEqpInspectionRecord(EqpEquipmentInspectionRecord record) {
record.setCreateTime(DateUtils.getNowDate());
return eqpEquipmentInspectionRecordMapper.insertEqpInspectionRecord(record);
}
@Override
public int updateEqpInspectionRecord(EqpEquipmentInspectionRecord record) {
record.setUpdateTime(DateUtils.getNowDate());
return eqpEquipmentInspectionRecordMapper.updateEqpInspectionRecord(record);
}
@Override
public int deleteEqpInspectionRecordByRecordIds(Long[] recordIds) {
return eqpEquipmentInspectionRecordMapper.deleteEqpInspectionRecordByRecordIds(recordIds);
}
@Override
public int deleteEqpInspectionRecordByRecordId(Long recordId) {
return eqpEquipmentInspectionRecordMapper.deleteEqpInspectionRecordByRecordId(recordId);
}
}

View File

@@ -0,0 +1,52 @@
package com.ruoyi.mill.service.impl;
import com.ruoyi.common.annotation.DataSource;
import com.ruoyi.common.enums.DataSourceType;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.mill.domain.EqpEquipmentPart;
import com.ruoyi.mill.mapper.EqpEquipmentPartMapper;
import com.ruoyi.mill.service.IEqpEquipmentPartService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
@DataSource(DataSourceType.KLP)
public class EqpEquipmentPartServiceImpl implements IEqpEquipmentPartService {
@Autowired
private EqpEquipmentPartMapper eqpEquipmentPartMapper;
@Override
public List<EqpEquipmentPart> selectEqpPartList(EqpEquipmentPart part) {
return eqpEquipmentPartMapper.selectEqpPartList(part);
}
@Override
public EqpEquipmentPart selectEqpPartByPartId(Long partId) {
return eqpEquipmentPartMapper.selectEqpPartByPartId(partId);
}
@Override
public int insertEqpPart(EqpEquipmentPart part) {
part.setCreateTime(DateUtils.getNowDate());
return eqpEquipmentPartMapper.insertEqpPart(part);
}
@Override
public int updateEqpPart(EqpEquipmentPart part) {
part.setUpdateTime(DateUtils.getNowDate());
return eqpEquipmentPartMapper.updateEqpPart(part);
}
@Override
public int deleteEqpPartByPartIds(Long[] partIds) {
return eqpEquipmentPartMapper.deleteEqpPartByPartIds(partIds);
}
@Override
public int deleteEqpPartByPartId(Long partId) {
return eqpEquipmentPartMapper.deleteEqpPartByPartId(partId);
}
}

View File

@@ -0,0 +1,22 @@
package com.ruoyi.mill.service.impl;
import com.ruoyi.common.annotation.DataSource;
import com.ruoyi.common.enums.DataSourceType;
import com.ruoyi.mill.domain.KlpCoilInfo;
import com.ruoyi.mill.mapper.KlpCoilMapper;
import com.ruoyi.mill.service.IKlpCoilService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
@DataSource(DataSourceType.KLP)
public class KlpCoilServiceImpl implements IKlpCoilService {
@Autowired
private KlpCoilMapper klpCoilMapper;
@Override
public KlpCoilInfo queryByCoilNo(String coilNo) {
return klpCoilMapper.selectByCoilNo(coilNo);
}
}

View File

@@ -0,0 +1,93 @@
package com.ruoyi.mill.service.impl;
import com.ruoyi.common.annotation.DataSource;
import com.ruoyi.common.enums.DataSourceType;
import com.ruoyi.mill.domain.MesRollGrind;
import com.ruoyi.mill.domain.MesRollInfo;
import com.ruoyi.mill.mapper.MesRollGrindMapper;
import com.ruoyi.mill.mapper.MesRollInfoMapper;
import com.ruoyi.mill.service.IMesRollGrindService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.Map;
@Service
@DataSource(DataSourceType.KLP)
public class MesRollGrindServiceImpl implements IMesRollGrindService {
@Autowired
private MesRollGrindMapper grindMapper;
@Autowired
private MesRollInfoMapper rollInfoMapper;
@Override
public List<MesRollGrind> selectMesRollGrindList(MesRollGrind grind) {
return grindMapper.selectMesRollGrindList(grind);
}
@Override
public List<MesRollGrind> selectMesRollGrindByRollId(Long rollId) {
return grindMapper.selectMesRollGrindByRollId(rollId);
}
@Override
public MesRollGrind selectMesRollGrindById(Long grindId) {
return grindMapper.selectMesRollGrindById(grindId);
}
@Override
@Transactional(rollbackFor = Exception.class)
public int insertMesRollGrind(MesRollGrind grind) {
if (grind.getGrindTime() == null) {
grind.setGrindTime(new Date());
}
if (grind.getDiaBefore() != null && grind.getDiaAfter() != null) {
grind.setGrindAmount(grind.getDiaBefore().subtract(grind.getDiaAfter()));
}
// 自动填写轧辊编号
if (grind.getRollNo() == null && grind.getRollId() != null) {
MesRollInfo info = rollInfoMapper.selectMesRollInfoById(grind.getRollId());
if (info != null) grind.setRollNo(info.getRollNo());
}
int result = grindMapper.insertMesRollGrind(grind);
// 同步更新轧辊当前直径 + 磨削次数+1
rollInfoMapper.incrementGrindCount(grind.getRollId(), grind.getDiaAfter());
return result;
}
@Override
@Transactional(rollbackFor = Exception.class)
public int updateMesRollGrind(MesRollGrind grind) {
if (grind.getDiaBefore() != null && grind.getDiaAfter() != null) {
grind.setGrindAmount(grind.getDiaBefore().subtract(grind.getDiaAfter()));
}
int result = grindMapper.updateMesRollGrind(grind);
// 以最新磨削记录的磨后径更新当前直径
if (result > 0 && grind.getDiaAfter() != null && grind.getRollId() != null) {
List<MesRollGrind> list = grindMapper.selectMesRollGrindByRollId(grind.getRollId());
if (!list.isEmpty()) {
BigDecimal latestDia = list.get(list.size() - 1).getDiaAfter();
if (latestDia != null) {
rollInfoMapper.updateCurrentDia(grind.getRollId(), latestDia);
}
}
}
return result;
}
@Override
public int deleteMesRollGrindById(Long grindId) {
return grindMapper.deleteMesRollGrindById(grindId);
}
@Override
public List<Map<String, Object>> selectMonthlyStats(Long rollId, int year) {
return grindMapper.selectMonthlyStats(rollId, year);
}
}

View File

@@ -0,0 +1,86 @@
package com.ruoyi.mill.service.impl;
import com.ruoyi.common.annotation.DataSource;
import com.ruoyi.common.enums.DataSourceType;
import com.ruoyi.mill.domain.MesRollInfo;
import com.ruoyi.mill.mapper.MesRollInfoMapper;
import com.ruoyi.mill.service.IMesRollInfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Service
@DataSource(DataSourceType.KLP)
public class MesRollInfoServiceImpl implements IMesRollInfoService {
@Autowired
private MesRollInfoMapper rollInfoMapper;
@Override
public List<MesRollInfo> selectMesRollInfoList(MesRollInfo rollInfo) {
return rollInfoMapper.selectMesRollInfoList(rollInfo);
}
@Override
public MesRollInfo selectMesRollInfoById(Long rollId) {
return rollInfoMapper.selectMesRollInfoById(rollId);
}
@Override
public int insertMesRollInfo(MesRollInfo rollInfo) {
if (rollInfo.getStatus() == null) {
rollInfo.setStatus("Offline");
}
if (rollInfo.getGrindCount() == null) {
rollInfo.setGrindCount(0);
}
// 双机架产线 lineId 固定为 5
rollInfo.setLineId(5L);
return rollInfoMapper.insertMesRollInfo(rollInfo);
}
@Override
public int updateMesRollInfo(MesRollInfo rollInfo) {
return rollInfoMapper.updateMesRollInfo(rollInfo);
}
@Override
public int deleteMesRollInfoByIds(Long[] rollIds) {
return rollInfoMapper.deleteMesRollInfoByIds(rollIds);
}
@Override
public Map<String, Object> selectStatusStats(Long lineId) {
List<Map<String, Object>> rows = rollInfoMapper.selectStatusStats(lineId);
Map<String, Object> result = new HashMap<>(8);
int total = 0;
for (Map<String, Object> row : rows) {
String status = (String) row.get("status");
Number cnt = (Number) row.get("cnt");
result.put(status, cnt.intValue());
total += cnt.intValue();
}
result.put("total", total);
return result;
}
@Override
public List<String> selectRollNoList(Long lineId, String rollType, String status) {
return rollInfoMapper.selectRollNoList(lineId, rollType, status);
}
@Override
public void scrapRoll(Long rollId) {
MesRollInfo current = rollInfoMapper.selectMesRollInfoById(rollId);
if (current == null || !"Offline".equals(current.getStatus())) {
throw new RuntimeException("只有离线状态的轧辊才可封闭");
}
MesRollInfo update = new MesRollInfo();
update.setRollId(rollId);
update.setStatus("Scrapped");
rollInfoMapper.updateMesRollInfo(update);
}
}

View File

@@ -0,0 +1,54 @@
package com.ruoyi.mill.service.impl;
import com.ruoyi.common.annotation.DataSource;
import com.ruoyi.common.enums.DataSourceType;
import com.ruoyi.mill.domain.QcInspectionItem;
import com.ruoyi.mill.mapper.QcInspectionItemMapper;
import com.ruoyi.mill.service.IQcInspectionItemService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
@DataSource(DataSourceType.KLP)
public class QcInspectionItemServiceImpl implements IQcInspectionItemService {
@Autowired
private QcInspectionItemMapper itemMapper;
@Override
public List<QcInspectionItem> selectQcInspectionItemList(QcInspectionItem item) {
return itemMapper.selectQcInspectionItemList(item);
}
@Override
public List<QcInspectionItem> selectQcInspectionItemByTaskId(Long taskId) {
return itemMapper.selectQcInspectionItemByTaskId(taskId);
}
@Override
public QcInspectionItem selectQcInspectionItemById(Long itemId) {
return itemMapper.selectQcInspectionItemById(itemId);
}
@Override
public int insertQcInspectionItem(QcInspectionItem item) {
return itemMapper.insertQcInspectionItem(item);
}
@Override
public int updateQcInspectionItem(QcInspectionItem item) {
return itemMapper.updateQcInspectionItem(item);
}
@Override
public int deleteQcInspectionItemById(Long itemId) {
return itemMapper.deleteQcInspectionItemById(itemId);
}
@Override
public int deleteQcInspectionItemByTaskId(Long taskId) {
return itemMapper.deleteQcInspectionItemByTaskId(taskId);
}
}

View File

@@ -0,0 +1,94 @@
package com.ruoyi.mill.service.impl;
import com.ruoyi.common.annotation.DataSource;
import com.ruoyi.common.enums.DataSourceType;
import com.ruoyi.mill.domain.QcInspectionTask;
import com.ruoyi.mill.mapper.QcInspectionTaskMapper;
import com.ruoyi.mill.service.IQcInspectionTaskService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
@Service
@DataSource(DataSourceType.KLP)
public class QcInspectionTaskServiceImpl implements IQcInspectionTaskService {
private static final List<Integer> DOUBLE_RACK_ACTION_TYPES = Arrays.asList(205, 504, 524);
@Autowired
private QcInspectionTaskMapper taskMapper;
@Override
public List<QcInspectionTask> selectQcInspectionTaskList(QcInspectionTask task) {
return taskMapper.selectQcInspectionTaskList(task);
}
@Override
public List<QcInspectionTask> selectQcInspectionTaskListByDoubleRack(QcInspectionTask task) {
List<Long> coilIds = getDoubleRackCoilIds();
if (coilIds.isEmpty()) {
return Collections.emptyList();
}
return taskMapper.selectQcInspectionTaskListByCoilIds(task, coilIds);
}
@Override
public QcInspectionTask selectQcInspectionTaskById(Long taskId) {
return taskMapper.selectQcInspectionTaskById(taskId);
}
@Override
public int insertQcInspectionTask(QcInspectionTask task) {
return taskMapper.insertQcInspectionTask(task);
}
@Override
public int updateQcInspectionTask(QcInspectionTask task) {
return taskMapper.updateQcInspectionTask(task);
}
@Override
public int deleteQcInspectionTaskById(Long taskId) {
return taskMapper.deleteQcInspectionTaskById(taskId);
}
@Override
public int deleteQcInspectionTaskByIds(Long[] taskIds) {
return taskMapper.deleteQcInspectionTaskByIds(taskIds);
}
@Override
public List<Map<String, Object>> selectDoubleRackCoilList() {
List<Long> coilIds = getDoubleRackCoilIds();
if (coilIds.isEmpty()) {
return Collections.emptyList();
}
return taskMapper.selectCoilInfoByIds(coilIds);
}
private List<Long> getDoubleRackCoilIds() {
List<String> processedList = taskMapper.selectDoubleRackProcessedCoilIds(DOUBLE_RACK_ACTION_TYPES);
Set<Long> coilIdSet = new HashSet<>();
for (String csv : processedList) {
if (csv != null && !csv.isEmpty()) {
for (String part : csv.split(",")) {
part = part.trim();
if (!part.isEmpty()) {
try {
coilIdSet.add(Long.parseLong(part));
} catch (NumberFormatException ignored) {
}
}
}
}
}
return coilIdSet.stream().collect(Collectors.toList());
}
}

View File

@@ -0,0 +1,88 @@
package com.ruoyi.mill.service.impl;
import com.ruoyi.common.annotation.DataSource;
import com.ruoyi.common.enums.DataSourceType;
import com.ruoyi.mill.domain.WmsCoilAbnormal;
import com.ruoyi.mill.mapper.QcInspectionTaskMapper;
import com.ruoyi.mill.mapper.WmsCoilAbnormalMapper;
import com.ruoyi.mill.service.IWmsCoilAbnormalService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
@Service
@DataSource(DataSourceType.KLP)
public class WmsCoilAbnormalServiceImpl implements IWmsCoilAbnormalService {
private static final List<Integer> DOUBLE_RACK_ACTION_TYPES = Arrays.asList(205, 504, 524);
@Autowired
private WmsCoilAbnormalMapper abnormalMapper;
@Autowired
private QcInspectionTaskMapper taskMapper;
@Override
public List<WmsCoilAbnormal> selectWmsCoilAbnormalList(WmsCoilAbnormal abnormal) {
return abnormalMapper.selectWmsCoilAbnormalList(abnormal);
}
@Override
public List<WmsCoilAbnormal> selectWmsCoilAbnormalListByDoubleRack(WmsCoilAbnormal abnormal) {
List<Long> coilIds = getDoubleRackCoilIds();
if (coilIds.isEmpty()) {
return Collections.emptyList();
}
return abnormalMapper.selectWmsCoilAbnormalListByCoilIds(abnormal, coilIds);
}
@Override
public WmsCoilAbnormal selectWmsCoilAbnormalById(Long abnormalId) {
return abnormalMapper.selectWmsCoilAbnormalById(abnormalId);
}
@Override
public int insertWmsCoilAbnormal(WmsCoilAbnormal abnormal) {
return abnormalMapper.insertWmsCoilAbnormal(abnormal);
}
@Override
public int updateWmsCoilAbnormal(WmsCoilAbnormal abnormal) {
return abnormalMapper.updateWmsCoilAbnormal(abnormal);
}
@Override
public int deleteWmsCoilAbnormalById(Long abnormalId) {
return abnormalMapper.deleteWmsCoilAbnormalById(abnormalId);
}
@Override
public int deleteWmsCoilAbnormalByIds(Long[] abnormalIds) {
return abnormalMapper.deleteWmsCoilAbnormalByIds(abnormalIds);
}
private List<Long> getDoubleRackCoilIds() {
List<String> processedList = taskMapper.selectDoubleRackProcessedCoilIds(DOUBLE_RACK_ACTION_TYPES);
Set<Long> coilIdSet = new HashSet<>();
for (String csv : processedList) {
if (csv != null && !csv.isEmpty()) {
for (String part : csv.split(",")) {
part = part.trim();
if (!part.isEmpty()) {
try {
coilIdSet.add(Long.parseLong(part));
} catch (NumberFormatException ignored) {
}
}
}
}
}
return coilIdSet.stream().collect(Collectors.toList());
}
}