From 614c7108ecc658bd23c4847ba91607f472e39ab2 Mon Sep 17 00:00:00 2001
From: zhangherong <571457620@qq.com>
Date: 星期四, 20 三月 2025 14:52:09 +0800
Subject: [PATCH] art: 设备管理-设备台账列表

---
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamEquipmentExtendService.java             |   14 +
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamEquipment.java                            |  177 +++++++++++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamEquipmentService.java                   |   19 +
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java              |  155 +++++++++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentHistoryLogController.java    |   26 ++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamEquipmentExtendMapper.java                |   17 +
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamEquipmentExtendMapper.xml             |    5 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentExtendServiceImpl.java     |   19 +
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamEquipmentMapper.java                      |   14 +
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentServiceImpl.java           |   55 ++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/constant/AssetStatusEnum.java                       |   12 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamEquipmentMapper.xml                   |    5 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/constant/EquipmentMaintenanceStatus.java            |   10 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamEquipmentHistoryLogService.java         |   14 +
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamEquipmentHistoryLog.java                  |   63 ++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamEquipmentHistoryLogMapper.xml         |    5 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentHistoryLogServiceImpl.java |   19 +
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/constant/EquipmentRepairStatus.java                 |   13 +
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamEquipmentExtend.java                      |   64 ++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamEquipmentHistoryLogMapper.java            |   17 +
 20 files changed, 723 insertions(+), 0 deletions(-)

diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/constant/AssetStatusEnum.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/constant/AssetStatusEnum.java
new file mode 100644
index 0000000..9757f93
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/constant/AssetStatusEnum.java
@@ -0,0 +1,12 @@
+package org.jeecg.modules.eam.constant;
+
+/**
+ * 璧勪骇鐘舵��
+ */
+public enum AssetStatusEnum {
+    NORMAL, //姝e父
+    LEAN_OUT, //鍊熷嚭
+    SEAL_UP, //灏佸瓨
+    DEALT, //杞
+    SCRAP; //鎶ュ簾
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/constant/EquipmentMaintenanceStatus.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/constant/EquipmentMaintenanceStatus.java
new file mode 100644
index 0000000..c767511
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/constant/EquipmentMaintenanceStatus.java
@@ -0,0 +1,10 @@
+package org.jeecg.modules.eam.constant;
+
+/**
+ * 淇濆吇鐘舵��
+ */
+public enum EquipmentMaintenanceStatus {
+    NORMAL,
+    UNDER_MAINTENANCE,
+    WAIT_CONFIRM,;
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/constant/EquipmentRepairStatus.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/constant/EquipmentRepairStatus.java
new file mode 100644
index 0000000..eb9be4f
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/constant/EquipmentRepairStatus.java
@@ -0,0 +1,13 @@
+package org.jeecg.modules.eam.constant;
+
+/**
+ * 缁翠慨鐘舵��
+ */
+public enum EquipmentRepairStatus {
+    NORMAL,
+    WAIT_REPAIR,
+    UNDER_REPAIR,
+    WAIT_CONFIRM,
+    MAJOR_REPAIR,
+    PARTIAL_REPAIR,;
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java
new file mode 100644
index 0000000..fdb9c2a
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java
@@ -0,0 +1,155 @@
+package org.jeecg.modules.eam.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.aspect.annotation.AutoLog;
+import org.jeecg.common.system.base.controller.JeecgController;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.modules.eam.entity.EamEquipment;
+import org.jeecg.modules.eam.service.IEamEquipmentService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.servlet.ModelAndView;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.util.Arrays;
+
+/**
+ * @Description: 璁惧鍙拌处
+ * @Author: jeecg-boot
+ * @Date: 2025-03-19
+ * @Version: V1.0
+ */
+@Slf4j
+@Api(tags = "璁惧鍙拌处")
+@RestController
+@RequestMapping("/eam/equipment")
+public class EamEquipmentController extends JeecgController<EamEquipment, IEamEquipmentService> {
+    @Autowired
+    private IEamEquipmentService eamEquipmentService;
+
+    /**
+     * 鍒嗛〉鍒楄〃鏌ヨ
+     *
+     * @param eamEquipment
+     * @param pageNo
+     * @param pageSize
+     * @param req
+     * @return
+     */
+    @AutoLog(value = "璁惧鍙拌处-鍒嗛〉鍒楄〃鏌ヨ")
+    @ApiOperation(value = "璁惧鍙拌处-鍒嗛〉鍒楄〃鏌ヨ", notes = "璁惧鍙拌处-鍒嗛〉鍒楄〃鏌ヨ")
+    @GetMapping(value = "/list")
+    public Result<?> queryPageList(EamEquipment eamEquipment,
+                                   @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
+                                   @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
+                                   HttpServletRequest req) {
+        QueryWrapper<EamEquipment> queryWrapper = QueryGenerator.initQueryWrapper(eamEquipment, req.getParameterMap());
+        Page<EamEquipment> page = new Page<EamEquipment>(pageNo, pageSize);
+        IPage<EamEquipment> pageList = eamEquipmentService.page(page, queryWrapper);
+        return Result.OK(pageList);
+    }
+
+    /**
+     * 娣诲姞
+     *
+     * @param eamEquipment
+     * @return
+     */
+    @AutoLog(value = "璁惧鍙拌处-娣诲姞")
+    @ApiOperation(value = "璁惧鍙拌处-娣诲姞", notes = "璁惧鍙拌处-娣诲姞")
+    @PostMapping(value = "/add")
+    public Result<?> add(@RequestBody EamEquipment eamEquipment) {
+        boolean b = eamEquipmentService.saveEquipment(eamEquipment);
+        if (!b) {
+            Result.OK("娣诲姞澶辫触锛�");
+        }
+        return Result.OK("娣诲姞鎴愬姛锛�");
+    }
+
+    /**
+     * 缂栬緫
+     *
+     * @param eamEquipment
+     * @return
+     */
+    @AutoLog(value = "璁惧鍙拌处-缂栬緫")
+    @ApiOperation(value = "璁惧鍙拌处-缂栬緫", notes = "璁惧鍙拌处-缂栬緫")
+    @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST})
+    public Result<?> edit(@RequestBody EamEquipment eamEquipment) {
+        eamEquipmentService.updateById(eamEquipment);
+        return Result.OK("缂栬緫鎴愬姛!");
+    }
+
+    /**
+     * 閫氳繃id鍒犻櫎
+     *
+     * @param id
+     * @return
+     */
+    @AutoLog(value = "璁惧鍙拌处-閫氳繃id鍒犻櫎")
+    @ApiOperation(value = "璁惧鍙拌处-閫氳繃id鍒犻櫎", notes = "璁惧鍙拌处-閫氳繃id鍒犻櫎")
+    @DeleteMapping(value = "/delete")
+    public Result<?> delete(@RequestParam(name = "id", required = true) String id) {
+        eamEquipmentService.removeById(id);
+        return Result.OK("鍒犻櫎鎴愬姛!");
+    }
+
+    /**
+     * 鎵归噺鍒犻櫎
+     *
+     * @param ids
+     * @return
+     */
+    @AutoLog(value = "璁惧鍙拌处-鎵归噺鍒犻櫎")
+    @ApiOperation(value = "璁惧鍙拌处-鎵归噺鍒犻櫎", notes = "璁惧鍙拌处-鎵归噺鍒犻櫎")
+    @DeleteMapping(value = "/deleteBatch")
+    public Result<?> deleteBatch(@RequestParam(name = "ids", required = true) String ids) {
+        this.eamEquipmentService.removeByIds(Arrays.asList(ids.split(",")));
+        return Result.OK("鎵归噺鍒犻櫎鎴愬姛锛�");
+    }
+
+    /**
+     * 閫氳繃id鏌ヨ
+     *
+     * @param id
+     * @return
+     */
+    @AutoLog(value = "璁惧鍙拌处-閫氳繃id鏌ヨ")
+    @ApiOperation(value = "璁惧鍙拌处-閫氳繃id鏌ヨ", notes = "璁惧鍙拌处-閫氳繃id鏌ヨ")
+    @GetMapping(value = "/queryById")
+    public Result<?> queryById(@RequestParam(name = "id", required = true) String id) {
+        EamEquipment eamEquipment = eamEquipmentService.getById(id);
+        return Result.OK(eamEquipment);
+    }
+
+    /**
+     * 瀵煎嚭excel
+     *
+     * @param request
+     * @param eamEquipment
+     */
+    @RequestMapping(value = "/exportXls")
+    public ModelAndView exportXls(HttpServletRequest request, EamEquipment eamEquipment) {
+        return super.exportXls(request, eamEquipment, EamEquipment.class, "璁惧鍙拌处");
+    }
+
+    /**
+     * 閫氳繃excel瀵煎叆鏁版嵁
+     *
+     * @param request
+     * @param response
+     * @return
+     */
+    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
+        return super.importExcel(request, response, EamEquipment.class);
+    }
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentHistoryLogController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentHistoryLogController.java
new file mode 100644
index 0000000..1298c93
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentHistoryLogController.java
@@ -0,0 +1,26 @@
+package org.jeecg.modules.eam.controller;
+
+import io.swagger.annotations.Api;
+import lombok.extern.slf4j.Slf4j;
+import org.jeecg.common.system.base.controller.JeecgController;
+import org.jeecg.modules.eam.entity.EamEquipmentHistoryLog;
+import org.jeecg.modules.eam.service.IEamEquipmentHistoryLogService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+ /**
+ * @Description: 璁惧灞ュ巻
+ * @Author: jeecg-boot
+ * @Date:   2025-03-19
+ * @Version: V1.0
+ */
+@Slf4j
+@Api(tags="璁惧灞ュ巻")
+@RestController
+@RequestMapping("/eam/equipmentHistoryLog")
+public class EamEquipmentHistoryLogController extends JeecgController<EamEquipmentHistoryLog, IEamEquipmentHistoryLogService> {
+	@Autowired
+	private IEamEquipmentHistoryLogService eamEquipmentHistoryLogService;
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamEquipment.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamEquipment.java
new file mode 100644
index 0000000..7807ceb
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamEquipment.java
@@ -0,0 +1,177 @@
+package org.jeecg.modules.eam.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import org.jeecg.common.aspect.annotation.Dict;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+/**
+ * @Description: 璁惧鍙拌处
+ * @Author: jeecg-boot
+ * @Date:   2025-03-19
+ * @Version: V1.0
+ */
+@Data
+@TableName("eam_equipment")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@ApiModel(value="eam_equipment瀵硅薄", description="璁惧鍙拌处")
+public class EamEquipment implements Serializable {
+    
+	/**涓婚敭*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "涓婚敭")
+	private java.lang.String id;
+	/**鍒涘缓浜�*/
+    @ApiModelProperty(value = "鍒涘缓浜�")
+	private java.lang.String createBy;
+	/**鍒涘缓鏃堕棿*/
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+	@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss ")
+	private java.util.Date createTime;
+	/**鏇存柊浜�*/
+    @ApiModelProperty(value = "鏇存柊浜�")
+	private java.lang.String updateBy;
+	/**鏇存柊鏃堕棿*/
+    @ApiModelProperty(value = "鏇存柊鏃堕棿")
+	@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss ")
+	private java.util.Date updateTime;
+	/**鍒犻櫎鏍囪*/
+    @ApiModelProperty(value = "鍒犻櫎鏍囪")
+	private java.lang.Integer delFlag;
+	/**璁惧缁熶竴缂栧彿*/
+	@Excel(name = "璁惧缂栧彿", width = 15)
+    @ApiModelProperty(value = "璁惧缂栧彿")
+	private java.lang.String equipmentCode;
+	/**璁惧鍚嶇О*/
+	@Excel(name = "璁惧鍚嶇О", width = 15)
+    @ApiModelProperty(value = "璁惧鍚嶇О")
+	private java.lang.String equipmentName;
+	/**鍏抽敭璁惧鏍囪瘑*/
+	@Excel(name = "鍏抽敭璁惧鏍囪瘑", width = 15)
+	@ApiModelProperty(value = "鍏抽敭璁惧鏍囪瘑")
+	private java.lang.String equipmentImportance;
+	/**鎶�鏈姸鎬�*/
+	@Excel(name = "璁惧鐘舵��", width = 15, dicCode = "technology_status")
+	@ApiModelProperty(value = "鎶�鏈姸鎬�")
+	@Dict(dicCode = "technology_status")
+	private java.lang.String technologyStatus;
+	/**鎿嶄綔绯荤粺*/
+	@Excel(name = "鎿嶄綔绯荤粺", width = 15)
+	@ApiModelProperty(value = "鎿嶄綔绯荤粺")
+	private java.lang.String operationSystem;
+	/**浣跨敤閮ㄩ棬*/
+	@Excel(name = "浣跨敤閮ㄩ棬", width = 15)
+	@ApiModelProperty(value = "浣跨敤閮ㄩ棬")
+	private java.lang.String orgId;
+	/**璁惧绠$悊鍛�*/
+	@Excel(name = "璁惧绠$悊鍛�", width = 15)
+	@ApiModelProperty(value = "璁惧绠$悊鍛�")
+	private java.lang.String equipmentManager;
+	/**璁惧鍒嗙被*/
+	@Excel(name = "璁惧鍒嗙被", width = 15, dicCode = "equipment_category")
+	@ApiModelProperty(value = "璁惧鍒嗙被")
+	@Dict(dicCode = "equipment_category")
+	private java.lang.String equipmentCategory;
+	/**璁惧鍨嬪彿*/
+	@Excel(name = "璁惧鍨嬪彿", width = 15)
+    @ApiModelProperty(value = "璁惧鍨嬪彿")
+	private java.lang.String equipmentModel;
+	/**璁惧瑙勬牸*/
+	@Excel(name = "璁惧瑙勬牸", width = 15)
+    @ApiModelProperty(value = "璁惧瑙勬牸")
+	private java.lang.String equipmentSpecification;
+	/**涓昏酱杩炴帴灏哄*/
+	@Excel(name = "涓昏酱杩炴帴灏哄", width = 15)
+	@ApiModelProperty(value = "涓昏酱杩炴帴灏哄")
+	private java.lang.String spindleConnectDimension;
+	/**鎬诲姛鐜�*/
+	@Excel(name = "鎬诲姛鐜�", width = 15)
+	@ApiModelProperty(value = "鎬诲姛鐜�")
+	private java.lang.String equipmentPower;
+	/**瀹夎浣嶇疆*/
+	@Excel(name = "瀹夎浣嶇疆", width = 15)
+	@ApiModelProperty(value = "瀹夎浣嶇疆")
+	private java.lang.String installationPosition;
+	/**璧勪骇鐘舵��*/
+	@Excel(name = "璧勪骇鐘舵��", width = 15, dicCode = "asset_status")
+    @ApiModelProperty(value = "璧勪骇鐘舵��")
+	@Dict(dicCode = "asset_status")
+	private java.lang.String assetStatus;
+	/**绔嬮」鍗″彿*/
+	@Excel(name = "绔嬮」鍗″彿", width = 15)
+	@ApiModelProperty(value = "绔嬮」鍗″彿")
+	private java.lang.String cardNumber;
+	/**鍑哄巶缂栧彿*/
+	@Excel(name = "鍑哄巶缂栧彿", width = 15)
+	@ApiModelProperty(value = "鍑哄巶缂栧彿")
+	private java.lang.String factoryNumber;
+	/**鏈哄簥鍘傚*/
+	@Excel(name = "鏈哄簥鍘傚", width = 15)
+	@ApiModelProperty(value = "鏈哄簥鍘傚")
+	private java.lang.String manufacturingEnterprise;
+	/**鏉ユ簮鍥藉*/
+	@Excel(name = "鏉ユ簮鍥藉", width = 15)
+	@ApiModelProperty(value = "鏉ユ簮鍥藉")
+	private java.lang.String originCountry;
+	/**鍑哄巶鏃ユ湡*/
+	@ApiModelProperty(value = "鍑哄巶鏃ユ湡")
+	@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+	@DateTimeFormat(pattern = "yyyy-MM-dd")
+	private java.util.Date leaveFactoryDate;
+	/**楠屾敹鏃ユ湡*/
+	@ApiModelProperty(value = "楠屾敹鏃ユ湡")
+	@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+	@DateTimeFormat(pattern = "yyyy-MM-dd")
+	private java.util.Date acceptanceCheckDate;
+	/**璐ㄤ繚寮�濮嬫棩鏈�*/
+	@ApiModelProperty(value = "璐ㄤ繚寮�濮嬫棩鏈�")
+	@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+	@DateTimeFormat(pattern = "yyyy-MM-dd")
+	private java.util.Date warrantyStartDate;
+	/**璐ㄤ繚缁撴潫鏃ユ湡*/
+	@ApiModelProperty(value = "璐ㄤ繚缁撴潫鏃ユ湡")
+	@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+	@DateTimeFormat(pattern = "yyyy-MM-dd")
+	private java.util.Date warrantyEndDate;
+	/**鏄惁瀹炴柦MDC*/
+	@Excel(name = "鏄惁瀹炴柦MDC", width = 15)
+	@ApiModelProperty(value = "鏄惁瀹炴柦MDC")
+	private java.lang.String mdcFlag;
+	/*=====================涓婇潰鏄矁鍏嬫ā鏉垮瓧娈�======================*/
+	/**鐗圭璁惧;鏄惁涓虹壒绉嶈澶�*/
+    @ApiModelProperty(value = "鏄惁鐗圭璁惧")
+	private java.lang.String specialEquipment;
+	/**璁惧鍥剧墖*/
+    @ApiModelProperty(value = "璁惧鍥剧墖")
+	private java.lang.String equipmentImage;
+	/**閲嶉噺*/
+    @ApiModelProperty(value = "閲嶉噺")
+	private java.lang.String equipmentWeight;
+	/**鏄惁鏈夊伐鑹哄弬鏁�*/
+    @ApiModelProperty(value = "鏄惁鏈夊伐鑹哄弬鏁�")
+	private java.lang.String processParametersFlag;
+	/**鏄惁鏈夌簿搴﹀弬鏁�*/
+    @ApiModelProperty(value = "鏄惁鏈夌簿搴﹀弬鏁�")
+	private java.lang.String precisionParametersFlag;
+	/**璁惧绔彛*/
+    @ApiModelProperty(value = "璁惧绔彛")
+	private java.lang.String equipmentPort;
+	/**鍧愭爣鏁伴噺*/
+    @ApiModelProperty(value = "鍧愭爣鏁伴噺")
+	private java.lang.Integer coordinateNum;
+	/**澶囨敞*/
+    @ApiModelProperty(value = "澶囨敞")
+	private java.lang.String remark;
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamEquipmentExtend.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamEquipmentExtend.java
new file mode 100644
index 0000000..f7f741b
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamEquipmentExtend.java
@@ -0,0 +1,64 @@
+package org.jeecg.modules.eam.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import org.jeecgframework.poi.excel.annotation.Excel;
+
+import java.io.Serializable;
+import java.util.Date;
+/**
+ * @Description: 璁惧鍙拌处鎵╁睍琛�
+ * @Author: jeecg-boot
+ * @Date:   2025-03-19
+ * @Version: V1.0
+ */
+@Data
+@TableName("eam_equipment_extend")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@ApiModel(value="eam_equipment_extend瀵硅薄", description="璁惧鍙拌处鎵╁睍琛�")
+public class EamEquipmentExtend implements Serializable {
+    
+	/**涓婚敭*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "涓婚敭")
+	private java.lang.String id;
+	/**鍒涘缓浜�*/
+    @ApiModelProperty(value = "鍒涘缓浜�")
+	private java.lang.String createBy;
+	/**鍒涘缓鏃堕棿*/
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+	private java.util.Date createTime;
+	/**鏇存柊浜�*/
+    @ApiModelProperty(value = "鏇存柊浜�")
+	private java.lang.String updateBy;
+	/**鏇存柊鏃堕棿*/
+    @ApiModelProperty(value = "鏇存柊鏃堕棿")
+	private java.util.Date updateTime;
+	/**淇濆吇鐘舵��*/
+	@Excel(name = "淇濆吇鐘舵��", width = 15)
+    @ApiModelProperty(value = "淇濆吇鐘舵��")
+	private java.lang.String maintenanceStatus;
+	/**缁翠慨鐘舵��*/
+	@Excel(name = "缁翠慨鐘舵��", width = 15)
+    @ApiModelProperty(value = "缁翠慨鐘舵��")
+	private java.lang.String repairStatus;
+	/**鏈�鏂颁簩淇濇棩鏈�*/
+    @ApiModelProperty(value = "鏈�鏂颁簩淇濇棩鏈�")
+	private java.util.Date latestSecondMaintenance;
+	/**涓嬫浜屼繚鏃ユ湡*/
+    @ApiModelProperty(value = "涓嬫浜屼繚鏃ユ湡")
+	private java.util.Date nextSecondMaintenance;
+	/**鏈�鏂颁笁淇濇棩鏈�*/
+    @ApiModelProperty(value = "鏈�鏂颁笁淇濇棩鏈�")
+	private java.util.Date latestThirdMaintenance;
+	/**涓嬫涓変繚鏃ユ湡*/
+    @ApiModelProperty(value = "涓嬫涓変繚鏃ユ湡")
+	private java.util.Date nextThirdMaintenance;
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamEquipmentHistoryLog.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamEquipmentHistoryLog.java
new file mode 100644
index 0000000..80f98c5
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamEquipmentHistoryLog.java
@@ -0,0 +1,63 @@
+package org.jeecg.modules.eam.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import org.jeecgframework.poi.excel.annotation.Excel;
+
+import java.io.Serializable;
+import java.util.Date;
+/**
+ * @Description: 璁惧灞ュ巻
+ * @Author: jeecg-boot
+ * @Date:   2025-03-19
+ * @Version: V1.0
+ */
+@Data
+@TableName("eam_equipment_history_log")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@ApiModel(value="eam_equipment_history_log瀵硅薄", description="璁惧灞ュ巻")
+public class EamEquipmentHistoryLog implements Serializable {
+    
+	/**涓婚敭*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "涓婚敭")
+	private java.lang.String id;
+	/**鍒涘缓浜�*/
+	@Excel(name = "鍒涘缓浜�", width = 15)
+    @ApiModelProperty(value = "鍒涘缓浜�")
+	private java.lang.String createBy;
+	/**鍒涘缓鏃堕棿*/
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+	private java.util.Date createTime;
+	/**璁惧ID*/
+	@Excel(name = "璁惧ID", width = 15)
+    @ApiModelProperty(value = "璁惧ID")
+	private java.lang.String equipmentId;
+	/**鎿嶄綔鏍囩*/
+	@Excel(name = "鎿嶄綔鏍囩", width = 15)
+    @ApiModelProperty(value = "鎿嶄綔鏍囩")
+	private java.lang.String operationTag;
+	/**鎿嶄綔浜�*/
+	@Excel(name = "鎿嶄綔浜�", width = 15)
+    @ApiModelProperty(value = "鎿嶄綔浜�")
+	private java.lang.String operator;
+	/**鎿嶄綔鎻忚堪*/
+	@Excel(name = "鎿嶄綔鎻忚堪", width = 15)
+    @ApiModelProperty(value = "鎿嶄綔鎻忚堪")
+	private java.lang.String description;
+	/**涓氬姟涓昏〃*/
+	@Excel(name = "涓氬姟涓昏〃", width = 15)
+    @ApiModelProperty(value = "涓氬姟涓昏〃")
+	private java.lang.String businessTable;
+	/**涓氬姟id*/
+	@Excel(name = "涓氬姟id", width = 15)
+    @ApiModelProperty(value = "涓氬姟id")
+	private java.lang.String businessId;
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamEquipmentExtendMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamEquipmentExtendMapper.java
new file mode 100644
index 0000000..52eb8a9
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamEquipmentExtendMapper.java
@@ -0,0 +1,17 @@
+package org.jeecg.modules.eam.mapper;
+
+import java.util.List;
+
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.eam.entity.EamEquipmentExtend;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * @Description: 璁惧鍙拌处鎵╁睍琛�
+ * @Author: jeecg-boot
+ * @Date:   2025-03-19
+ * @Version: V1.0
+ */
+public interface EamEquipmentExtendMapper extends BaseMapper<EamEquipmentExtend> {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamEquipmentHistoryLogMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamEquipmentHistoryLogMapper.java
new file mode 100644
index 0000000..873a046
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamEquipmentHistoryLogMapper.java
@@ -0,0 +1,17 @@
+package org.jeecg.modules.eam.mapper;
+
+import java.util.List;
+
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.eam.entity.EamEquipmentHistoryLog;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * @Description: 璁惧灞ュ巻
+ * @Author: jeecg-boot
+ * @Date:   2025-03-19
+ * @Version: V1.0
+ */
+public interface EamEquipmentHistoryLogMapper extends BaseMapper<EamEquipmentHistoryLog> {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamEquipmentMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamEquipmentMapper.java
new file mode 100644
index 0000000..012f4ab
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamEquipmentMapper.java
@@ -0,0 +1,14 @@
+package org.jeecg.modules.eam.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.jeecg.modules.eam.entity.EamEquipment;
+
+/**
+ * @Description: 璁惧鍙拌处
+ * @Author: jeecg-boot
+ * @Date:   2025-03-19
+ * @Version: V1.0
+ */
+public interface EamEquipmentMapper extends BaseMapper<EamEquipment> {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamEquipmentExtendMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamEquipmentExtendMapper.xml
new file mode 100644
index 0000000..8d5f86d
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamEquipmentExtendMapper.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.eam.mapper.EamEquipmentExtendMapper">
+
+</mapper>
\ No newline at end of file
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamEquipmentHistoryLogMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamEquipmentHistoryLogMapper.xml
new file mode 100644
index 0000000..13e274b
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamEquipmentHistoryLogMapper.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.eam.mapper.EamEquipmentHistoryLogMapper">
+
+</mapper>
\ No newline at end of file
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamEquipmentMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamEquipmentMapper.xml
new file mode 100644
index 0000000..1db6f05
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamEquipmentMapper.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.eam.mapper.EamEquipmentMapper">
+
+</mapper>
\ No newline at end of file
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamEquipmentExtendService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamEquipmentExtendService.java
new file mode 100644
index 0000000..f24e398
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamEquipmentExtendService.java
@@ -0,0 +1,14 @@
+package org.jeecg.modules.eam.service;
+
+import org.jeecg.modules.eam.entity.EamEquipmentExtend;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * @Description: 璁惧鍙拌处鎵╁睍琛�
+ * @Author: jeecg-boot
+ * @Date:   2025-03-19
+ * @Version: V1.0
+ */
+public interface IEamEquipmentExtendService extends IService<EamEquipmentExtend> {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamEquipmentHistoryLogService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamEquipmentHistoryLogService.java
new file mode 100644
index 0000000..49f7c6c
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamEquipmentHistoryLogService.java
@@ -0,0 +1,14 @@
+package org.jeecg.modules.eam.service;
+
+import org.jeecg.modules.eam.entity.EamEquipmentHistoryLog;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * @Description: 璁惧灞ュ巻
+ * @Author: jeecg-boot
+ * @Date:   2025-03-19
+ * @Version: V1.0
+ */
+public interface IEamEquipmentHistoryLogService extends IService<EamEquipmentHistoryLog> {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamEquipmentService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamEquipmentService.java
new file mode 100644
index 0000000..754a233
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamEquipmentService.java
@@ -0,0 +1,19 @@
+package org.jeecg.modules.eam.service;
+
+import org.jeecg.modules.eam.entity.EamEquipment;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * @Description: 璁惧鍙拌处
+ * @Author: jeecg-boot
+ * @Date:   2025-03-19
+ * @Version: V1.0
+ */
+public interface IEamEquipmentService extends IService<EamEquipment> {
+
+    /**
+     * 鍙拌处璁惧娣诲姞
+     * @param eamEquipment
+     */
+    boolean saveEquipment(EamEquipment eamEquipment);
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentExtendServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentExtendServiceImpl.java
new file mode 100644
index 0000000..eceed0f
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentExtendServiceImpl.java
@@ -0,0 +1,19 @@
+package org.jeecg.modules.eam.service.impl;
+
+import org.jeecg.modules.eam.entity.EamEquipmentExtend;
+import org.jeecg.modules.eam.mapper.EamEquipmentExtendMapper;
+import org.jeecg.modules.eam.service.IEamEquipmentExtendService;
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+/**
+ * @Description: 璁惧鍙拌处鎵╁睍琛�
+ * @Author: jeecg-boot
+ * @Date:   2025-03-19
+ * @Version: V1.0
+ */
+@Service
+public class EamEquipmentExtendServiceImpl extends ServiceImpl<EamEquipmentExtendMapper, EamEquipmentExtend> implements IEamEquipmentExtendService {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentHistoryLogServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentHistoryLogServiceImpl.java
new file mode 100644
index 0000000..879f0b6
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentHistoryLogServiceImpl.java
@@ -0,0 +1,19 @@
+package org.jeecg.modules.eam.service.impl;
+
+import org.jeecg.modules.eam.entity.EamEquipmentHistoryLog;
+import org.jeecg.modules.eam.mapper.EamEquipmentHistoryLogMapper;
+import org.jeecg.modules.eam.service.IEamEquipmentHistoryLogService;
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+/**
+ * @Description: 璁惧灞ュ巻
+ * @Author: jeecg-boot
+ * @Date:   2025-03-19
+ * @Version: V1.0
+ */
+@Service
+public class EamEquipmentHistoryLogServiceImpl extends ServiceImpl<EamEquipmentHistoryLogMapper, EamEquipmentHistoryLog> implements IEamEquipmentHistoryLogService {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentServiceImpl.java
new file mode 100644
index 0000000..77338b0
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentServiceImpl.java
@@ -0,0 +1,55 @@
+package org.jeecg.modules.eam.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.jeecg.common.constant.CommonConstant;
+import org.jeecg.modules.eam.constant.AssetStatusEnum;
+import org.jeecg.modules.eam.constant.EquipmentMaintenanceStatus;
+import org.jeecg.modules.eam.constant.EquipmentRepairStatus;
+import org.jeecg.modules.eam.entity.EamEquipment;
+import org.jeecg.modules.eam.entity.EamEquipmentExtend;
+import org.jeecg.modules.eam.mapper.EamEquipmentMapper;
+import org.jeecg.modules.eam.service.IEamEquipmentExtendService;
+import org.jeecg.modules.eam.service.IEamEquipmentService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import javax.annotation.Resource;
+
+/**
+ * @Description: 璁惧鍙拌处
+ * @Author: jeecg-boot
+ * @Date:   2025-03-19
+ * @Version: V1.0
+ */
+@Service
+public class EamEquipmentServiceImpl extends ServiceImpl<EamEquipmentMapper, EamEquipment> implements IEamEquipmentService {
+
+    @Resource
+    private EamEquipmentMapper eamEquipmentMapper;
+    @Autowired
+    private IEamEquipmentExtendService equipmentExtendService;
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public boolean saveEquipment(EamEquipment eamEquipment) {
+        if (eamEquipment == null) {
+            return false;
+        }
+        //璧勪骇鐘舵�侀粯璁� 姝e父
+        eamEquipment.setAssetStatus(AssetStatusEnum.NORMAL.name());
+        eamEquipment.setDelFlag(CommonConstant.DEL_FLAG_0);
+        eamEquipmentMapper.insert(eamEquipment);
+
+        //鎵╁睍琛ㄦ暟鎹悓姝ユ坊鍔�
+        EamEquipmentExtend eamEquipmentExtend = new EamEquipmentExtend();
+        eamEquipmentExtend.setId(eamEquipment.getId());
+        eamEquipmentExtend.setMaintenanceStatus(EquipmentMaintenanceStatus.NORMAL.name());
+        eamEquipmentExtend.setRepairStatus(EquipmentRepairStatus.NORMAL.name());
+
+        equipmentExtendService.save(eamEquipmentExtend);
+
+        //鎻掑叆璁惧灞ュ巻 TODO
+        return true;
+    }
+}

--
Gitblit v1.9.3