zhangherong
2025-07-07 c8f004b42c0edc9cc6c6faec58770f32992b2b7d
art:技术状态鉴定规范-基础代码
已添加14个文件
已修改1个文件
833 ■■■■■ 文件已修改
db/430设备管理数据库设计.pdma.json 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/TechnicalStatusEvaluationStandardEnum.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationStandardController.java 160 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationStandardDetailController.java 129 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusEvaluationStandard.java 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusEvaluationStandardDetail.java 73 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusEvaluationStandardDetailMapper.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusEvaluationStandardMapper.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusEvaluationStandardDetailMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusEvaluationStandardMapper.xml 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamTechnicalStatusEvaluationStandardRequest.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusEvaluationStandardDetailService.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusEvaluationStandardService.java 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusEvaluationStandardDetailServiceImpl.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusEvaluationStandardServiceImpl.java 186 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
db/430É豸¹ÜÀíÊý¾Ý¿âÉè¼Æ.pdma.json
@@ -4,7 +4,7 @@
  "avatar": "",
  "version": "4.9.2",
  "createdTime": "2025-3-10 16:38:19",
  "updatedTime": "2025-7-7 15:35:51",
  "updatedTime": "2025-7-7 21:00:24",
  "dbConns": [],
  "profile": {
    "default": {
@@ -632,7 +632,7 @@
      "#DDE5FF"
    ],
    "DDLToggleCase": "L",
    "menuWidth": "472px"
    "menuWidth": "371px"
  },
  "entities": [
    {
@@ -23721,6 +23721,24 @@
          "id": "2C88A464-AC97-4512-94EE-CCD08ED27A64"
        },
        {
          "defKey": "standard_version",
          "defName": "版本",
          "comment": "V1,V2+",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
          "id": "1ACB9237-2E42-44F0-AC09-BBB51D55A83D"
        },
        {
          "defKey": "remark",
          "defName": "备注",
          "comment": "",
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/TechnicalStatusEvaluationStandardEnum.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
package org.jeecg.modules.eam.constant;
public enum TechnicalStatusEvaluationStandardEnum {
    WAIT_SUBMIT, //待提交
    ENABLE, //启用
    DISABLE, //禁用
    ;
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationStandardController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,160 @@
package org.jeecg.modules.eam.controller;
import cn.hutool.core.collection.CollectionUtil;
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.modules.eam.constant.BusinessCodeConst;
import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationStandard;
import org.jeecg.modules.eam.request.EamTechnicalStatusEvaluationStandardRequest;
import org.jeecg.modules.eam.service.IEamTechnicalStatusEvaluationStandardService;
import org.jeecg.modules.system.service.ISysBusinessCodeRuleService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.Arrays;
/**
 * @Description: æŠ€æœ¯çŠ¶æ€é‰´å®šè§„èŒƒ
 * @Author: jeecg-boot
 * @Date: 2025-07-07
 * @Version: V1.0
 */
@Slf4j
@Api(tags = "技术状态鉴定规范")
@RestController
@RequestMapping("/eam/eamTechnicalStatusEvaluationStandard")
public class EamTechnicalStatusEvaluationStandardController extends JeecgController<EamTechnicalStatusEvaluationStandard, IEamTechnicalStatusEvaluationStandardService> {
    @Autowired
    private IEamTechnicalStatusEvaluationStandardService eamTechnicalStatusEvaluationStandardService;
    @Autowired
    private ISysBusinessCodeRuleService businessCodeRuleService;
    /**
     * åˆ†é¡µåˆ—表查询
     *
     * @param eamTechnicalStatusEvaluationStandard
     * @param pageNo
     * @param pageSize
     * @return
     */
    @ApiOperation(value = "技术状态鉴定规范-分页列表查询", notes = "技术状态鉴定规范-分页列表查询")
    @GetMapping(value = "/list")
    public Result<?> queryPageList(EamTechnicalStatusEvaluationStandard eamTechnicalStatusEvaluationStandard,
                                   @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
                                   @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) {
        Page<EamTechnicalStatusEvaluationStandard> page = new Page<>(pageNo, pageSize);
        IPage<EamTechnicalStatusEvaluationStandard> pageList = eamTechnicalStatusEvaluationStandardService.queryPageList(page, eamTechnicalStatusEvaluationStandard);
        return Result.OK(pageList);
    }
    /**
     * æ·»åŠ 
     *
     * @param request
     * @return
     */
    @AutoLog(value = "技术状态鉴定规范-添加")
    @ApiOperation(value = "技术状态鉴定规范-添加", notes = "技术状态鉴定规范-添加")
    @PostMapping(value = "/add")
    public Result<?> add(@RequestBody EamTechnicalStatusEvaluationStandardRequest request) {
        if (request == null) {
            return Result.error("添加的对象不能为空!");
        }
        if (CollectionUtil.isEmpty(request.getTableDetailList())) {
            return Result.error("检查项不能为空!");
        }
        String codeSeq = businessCodeRuleService.generateBusinessCodeSeq(BusinessCodeConst.MAINTENANCE_STANDARD_CODE_RULE);
        request.setStandardCode(codeSeq);
        boolean b = eamTechnicalStatusEvaluationStandardService.addEamTechnicalStatusEvaluationStandard(request);
        if (!b) {
            return Result.error("添加失败!");
        }
        return Result.OK("添加成功!");
    }
    /**
     * ç¼–辑
     *
     * @param request
     * @return
     */
    @AutoLog(value = "技术状态鉴定规范-编辑")
    @ApiOperation(value = "技术状态鉴定规范-编辑", notes = "技术状态鉴定规范-编辑")
    @PutMapping(value = "/edit")
    public Result<?> edit(@RequestBody EamTechnicalStatusEvaluationStandardRequest request) {
        if (request == null) {
            return Result.error("添加的对象不能为空!");
        }
        if (CollectionUtil.isEmpty(request.getTableDetailList())) {
            return Result.error("检查项不能为空!");
        }
        boolean b = eamTechnicalStatusEvaluationStandardService.editEamTechnicalStatusEvaluationStandard(request);
        if (!b) {
            return Result.error("编辑失败!");
        }
        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) {
        eamTechnicalStatusEvaluationStandardService.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.eamTechnicalStatusEvaluationStandardService.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) {
        EamTechnicalStatusEvaluationStandard eamTechnicalStatusEvaluationStandard = eamTechnicalStatusEvaluationStandardService.getById(id);
        return Result.OK(eamTechnicalStatusEvaluationStandard);
    }
    /**
     * é€šè¿‡excel导入数据
     *
     * @param request
     * @param response
     * @return
     */
    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
        return super.importExcel(request, response, EamTechnicalStatusEvaluationStandard.class);
    }
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationStandardDetailController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,129 @@
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.EamTechnicalStatusEvaluationStandardDetail;
import org.jeecg.modules.eam.service.IEamTechnicalStatusEvaluationStandardDetailService;
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-07-07
 * @Version: V1.0
 */
@Slf4j
@Api(tags = "技术状态鉴定规范明细")
@RestController
@RequestMapping("/eam/eamTechnicalStatusEvaluationStandardDetail")
public class EamTechnicalStatusEvaluationStandardDetailController extends JeecgController<EamTechnicalStatusEvaluationStandardDetail, IEamTechnicalStatusEvaluationStandardDetailService> {
    @Autowired
    private IEamTechnicalStatusEvaluationStandardDetailService eamTechnicalStatusEvaluationStandardDetailService;
    /**
     * åˆ†é¡µåˆ—表查询
     *
     * @param eamTechnicalStatusEvaluationStandardDetail
     * @param pageNo
     * @param pageSize
     * @param req
     * @return
     */
    @AutoLog(value = "技术状态鉴定规范明细-分页列表查询")
    @ApiOperation(value = "技术状态鉴定规范明细-分页列表查询", notes = "技术状态鉴定规范明细-分页列表查询")
    @GetMapping(value = "/list")
    public Result<?> queryPageList(EamTechnicalStatusEvaluationStandardDetail eamTechnicalStatusEvaluationStandardDetail,
                                   @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
                                   @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
                                   HttpServletRequest req) {
        QueryWrapper<EamTechnicalStatusEvaluationStandardDetail> queryWrapper = QueryGenerator.initQueryWrapper(eamTechnicalStatusEvaluationStandardDetail, req.getParameterMap());
        Page<EamTechnicalStatusEvaluationStandardDetail> page = new Page<EamTechnicalStatusEvaluationStandardDetail>(pageNo, pageSize);
        IPage<EamTechnicalStatusEvaluationStandardDetail> pageList = eamTechnicalStatusEvaluationStandardDetailService.page(page, queryWrapper);
        return Result.OK(pageList);
    }
    /**
     * æ·»åŠ 
     *
     * @param eamTechnicalStatusEvaluationStandardDetail
     * @return
     */
    @AutoLog(value = "技术状态鉴定规范明细-添加")
    @ApiOperation(value = "技术状态鉴定规范明细-添加", notes = "技术状态鉴定规范明细-添加")
    @PostMapping(value = "/add")
    public Result<?> add(@RequestBody EamTechnicalStatusEvaluationStandardDetail eamTechnicalStatusEvaluationStandardDetail) {
        eamTechnicalStatusEvaluationStandardDetailService.save(eamTechnicalStatusEvaluationStandardDetail);
        return Result.OK("添加成功!");
    }
    /**
     * ç¼–辑
     *
     * @param eamTechnicalStatusEvaluationStandardDetail
     * @return
     */
    @AutoLog(value = "技术状态鉴定规范明细-编辑")
    @ApiOperation(value = "技术状态鉴定规范明细-编辑", notes = "技术状态鉴定规范明细-编辑")
    @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST})
    public Result<?> edit(@RequestBody EamTechnicalStatusEvaluationStandardDetail eamTechnicalStatusEvaluationStandardDetail) {
        eamTechnicalStatusEvaluationStandardDetailService.updateById(eamTechnicalStatusEvaluationStandardDetail);
        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) {
        eamTechnicalStatusEvaluationStandardDetailService.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.eamTechnicalStatusEvaluationStandardDetailService.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) {
        EamTechnicalStatusEvaluationStandardDetail eamTechnicalStatusEvaluationStandardDetail = eamTechnicalStatusEvaluationStandardDetailService.getById(id);
        return Result.OK(eamTechnicalStatusEvaluationStandardDetail);
    }
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusEvaluationStandard.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,78 @@
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.util.Date;
/**
 * @Description: æŠ€æœ¯çŠ¶æ€é‰´å®šè§„èŒƒ
 * @Author: jeecg-boot
 * @Date:   2025-07-07
 * @Version: V1.0
 */
@Data
@TableName("eam_technical_status_evaluation_standard")
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="eam_technical_status_evaluation_standard对象", description="技术状态鉴定规范")
public class EamTechnicalStatusEvaluationStandard {
    /**主键*/
    @TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private String id;
    /**创建人*/
    @ApiModelProperty(value = "创建人")
    private String createBy;
    /**创建时间*/
    @ApiModelProperty(value = "创建时间")
    private Date createTime;
    /**更新人*/
    @ApiModelProperty(value = "更新人")
    private String updateBy;
    /**更新时间*/
    @ApiModelProperty(value = "更新时间")
    private Date updateTime;
    /**删除标记*/
    @ApiModelProperty(value = "删除标记")
    private Integer delFlag;
    /**规范名称*/
    @ApiModelProperty(value = "规范名称")
    private String standardName;
    /**规范编码*/
    @ApiModelProperty(value = "规范编码")
    private String standardCode;
    /**鉴定周期*/
    @ApiModelProperty(value = "鉴定周期")
    private Integer evaluationPeriod;
    /**设备ID*/
    @ApiModelProperty(value = "设备ID")
    private String equipmentId;
    /**规范状态;待提交、启用、作废*/
    @ApiModelProperty(value = "规范状态;待提交、启用、作废")
    private String standardStatus;
    /**是否有安全装置检查;是否*/
    @ApiModelProperty(value = "是否有安全装置检查;是否")
    private String hasSafetyEquipmentCheck;
    /**是否有设备精度检查;是否*/
    @ApiModelProperty(value = "是否有设备精度检查;是否")
    private String hasPrecisionCheck;
    /**是否有其他检查;是否*/
    @ApiModelProperty(value = "是否有其他检查;是否")
    private String hasOtherCheck;
    /**版本 V1,V2+*/
    @ApiModelProperty(value = "版本 V1,V2")
    private String standardVersion;
    /**备注*/
    @Excel(name = "备注", width = 15)
    @ApiModelProperty(value = "备注")
    private String remark;
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusEvaluationStandardDetail.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,73 @@
package org.jeecg.modules.eam.entity;
import java.io.Serializable;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
/**
 * @Description: æŠ€æœ¯çŠ¶æ€é‰´å®šè§„èŒƒæ˜Žç»†
 * @Author: jeecg-boot
 * @Date:   2025-07-07
 * @Version: V1.0
 */
@Data
@TableName("eam_technical_status_evaluation_standard_detail")
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="eam_technical_status_evaluation_standard_detail对象", description="技术状态鉴定规范明细")
public class EamTechnicalStatusEvaluationStandardDetail {
    /**主键*/
    @TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private String id;
    /**创建人*/
    @Excel(name = "创建人", width = 15)
    @ApiModelProperty(value = "创建人")
    private String createBy;
    /**创建时间*/
    @ApiModelProperty(value = "创建时间")
    private Date createTime;
    /**更新人*/
    @Excel(name = "更新人", width = 15)
    @ApiModelProperty(value = "更新人")
    private String updateBy;
    /**更新时间*/
    @ApiModelProperty(value = "更新时间")
    private Date updateTime;
    /**规范ID*/
    @Excel(name = "规范ID", width = 15)
    @ApiModelProperty(value = "规范ID")
    private String standardId;
    /**检查分类;精度检查、安全装置检查、其他检查*/
    @Excel(name = "检查分类;精度检查、安全装置检查、其他检查", width = 15)
    @ApiModelProperty(value = "检查分类;精度检查、安全装置检查、其他检查")
    private String checkCategory;
    /**项目序号*/
    @Excel(name = "项目序号", width = 15)
    @ApiModelProperty(value = "项目序号")
    private Integer itemCode;
    /**检查项目*/
    @Excel(name = "检查项目", width = 15)
    @ApiModelProperty(value = "检查项目")
    private String itemName;
    /**允差值;精度检查展示*/
    @Excel(name = "允差值;精度检查展示", width = 15)
    @ApiModelProperty(value = "允差值;精度检查展示")
    private String toleranceValue;
    /**检查子项目;精度检查展示,可以为空*/
    @Excel(name = "检查子项目;精度检查展示,可以为空", width = 15)
    @ApiModelProperty(value = "检查子项目;精度检查展示,可以为空")
    private String subItemName;
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusEvaluationStandardDetailMapper.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.EamTechnicalStatusEvaluationStandardDetail;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * @Description: æŠ€æœ¯çŠ¶æ€é‰´å®šè§„èŒƒæ˜Žç»†
 * @Author: jeecg-boot
 * @Date:   2025-07-07
 * @Version: V1.0
 */
public interface EamTechnicalStatusEvaluationStandardDetailMapper extends BaseMapper<EamTechnicalStatusEvaluationStandardDetail> {
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusEvaluationStandardMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,24 @@
package org.jeecg.modules.eam.mapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationStandard;
/**
 * @Description: æŠ€æœ¯çŠ¶æ€é‰´å®šè§„èŒƒ
 * @Author: jeecg-boot
 * @Date:   2025-07-07
 * @Version: V1.0
 */
public interface EamTechnicalStatusEvaluationStandardMapper extends BaseMapper<EamTechnicalStatusEvaluationStandard> {
    /**
     * åˆ†é¡µæŸ¥è¯¢
     * @param page
     * @param queryWrapper
     * @return
     */
    IPage<EamTechnicalStatusEvaluationStandard> queryPageList(Page<EamTechnicalStatusEvaluationStandard> page, QueryWrapper<EamTechnicalStatusEvaluationStandard> queryWrapper);
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusEvaluationStandardDetailMapper.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.EamTechnicalStatusEvaluationStandardDetailMapper">
</mapper>
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusEvaluationStandardMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,11 @@
<?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.EamTechnicalStatusEvaluationStandardMapper">
    <select id="queryPageList" resultType="org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationStandard">
        select ems.*, e.equipment_code, e.equipment_name, e.equipment_model
        from eam_technical_status_evaluation_standard ems
        inner join eam_equipment e
        on ems.equipment_id = e.id
        ${ew.customSqlSegment}
    </select>
</mapper>
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamTechnicalStatusEvaluationStandardRequest.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,41 @@
package org.jeecg.modules.eam.request;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationStandardDetail;
import java.io.Serializable;
import java.util.List;
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="eam_technical_status_evaluation_standard对象", description="技术状态鉴定规范")
public class EamTechnicalStatusEvaluationStandardRequest implements Serializable {
    /**主键*/
    @ApiModelProperty(value = "主键")
    private String id;
    /**规范编码*/
    @ApiModelProperty(value = "规范编码")
    private String standardCode;
    /**规范名称*/
    @ApiModelProperty(value = "规范名称")
    private String standardName;
    /**鉴定周期;单位:å¹´*/
    @ApiModelProperty(value = "鉴定周期;单位:å¹´")
    private Integer evaluationPeriod;
    /**设备ID*/
    @ApiModelProperty(value = "设备ID")
    private String equipmentId;
    /**列表 æ£€æŸ¥é¡¹æ˜Žç»†*/
    @ApiModelProperty(value = "列表 æ£€æŸ¥é¡¹æ˜Žç»†")
    private List<EamTechnicalStatusEvaluationStandardDetail> tableDetailList;
    /**删除 æ£€æŸ¥é¡¹æ˜Žç»†*/
    @ApiModelProperty(value = "删除 æ£€æŸ¥é¡¹æ˜Žç»†")
    private List<EamTechnicalStatusEvaluationStandardDetail> removeDetailList;
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusEvaluationStandardDetailService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,14 @@
package org.jeecg.modules.eam.service;
import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationStandardDetail;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * @Description: æŠ€æœ¯çŠ¶æ€é‰´å®šè§„èŒƒæ˜Žç»†
 * @Author: jeecg-boot
 * @Date:   2025-07-07
 * @Version: V1.0
 */
public interface IEamTechnicalStatusEvaluationStandardDetailService extends IService<EamTechnicalStatusEvaluationStandardDetail> {
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusEvaluationStandardService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,46 @@
package org.jeecg.modules.eam.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationStandard;
import org.jeecg.modules.eam.request.EamTechnicalStatusEvaluationStandardRequest;
/**
 * @Description: æŠ€æœ¯çŠ¶æ€é‰´å®šè§„èŒƒ
 * @Author: jeecg-boot
 * @Date:   2025-07-07
 * @Version: V1.0
 */
public interface IEamTechnicalStatusEvaluationStandardService extends IService<EamTechnicalStatusEvaluationStandard> {
    /**
     *
     * @param page
     * @param eamTechnicalStatusEvaluationStandard
     * @return
     */
    IPage<EamTechnicalStatusEvaluationStandard> queryPageList(Page<EamTechnicalStatusEvaluationStandard> page, EamTechnicalStatusEvaluationStandard eamTechnicalStatusEvaluationStandard);
    /**
     * æ–°å¢ž
     * @param request
     * @return
     */
    boolean addEamTechnicalStatusEvaluationStandard(EamTechnicalStatusEvaluationStandardRequest request);
    /**
     * é‡å¤æ ¡éªŒ
     * @param equipmentId
     * @param id
     * @return
     */
    EamTechnicalStatusEvaluationStandard checkDuplicate(String equipmentId, String id);
    /**
     * ç¼–辑
     * @param request
     * @return
     */
    boolean editEamTechnicalStatusEvaluationStandard(EamTechnicalStatusEvaluationStandardRequest request);
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusEvaluationStandardDetailServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
package org.jeecg.modules.eam.service.impl;
import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationStandardDetail;
import org.jeecg.modules.eam.mapper.EamTechnicalStatusEvaluationStandardDetailMapper;
import org.jeecg.modules.eam.service.IEamTechnicalStatusEvaluationStandardDetailService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
 * @Description: æŠ€æœ¯çŠ¶æ€é‰´å®šè§„èŒƒæ˜Žç»†
 * @Author: jeecg-boot
 * @Date:   2025-07-07
 * @Version: V1.0
 */
@Service
public class EamTechnicalStatusEvaluationStandardDetailServiceImpl extends ServiceImpl<EamTechnicalStatusEvaluationStandardDetailMapper, EamTechnicalStatusEvaluationStandardDetail> implements IEamTechnicalStatusEvaluationStandardDetailService {
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusEvaluationStandardServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,186 @@
package org.jeecg.modules.eam.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.jeecg.common.constant.CommonConstant;
import org.jeecg.common.exception.JeecgBootException;
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.common.util.SimpleVersionGenerateUtil;
import org.jeecg.modules.eam.base.entity.BaseFactory;
import org.jeecg.modules.eam.base.entity.BaseFactoryUser;
import org.jeecg.modules.eam.base.service.IBaseFactoryService;
import org.jeecg.modules.eam.base.service.IBaseFactoryUserService;
import org.jeecg.modules.eam.constant.MaintenanceStandardStatusEnum;
import org.jeecg.modules.eam.constant.TechnicalStatusEvaluationStandardEnum;
import org.jeecg.modules.eam.entity.EamMaintenanceStandard;
import org.jeecg.modules.eam.entity.EamMaintenanceStandardDetail;
import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationStandard;
import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationStandardDetail;
import org.jeecg.modules.eam.mapper.EamTechnicalStatusEvaluationStandardMapper;
import org.jeecg.modules.eam.request.EamTechnicalStatusEvaluationStandardRequest;
import org.jeecg.modules.eam.service.IEamTechnicalStatusEvaluationStandardDetailService;
import org.jeecg.modules.eam.service.IEamTechnicalStatusEvaluationStandardService;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
/**
 * @Description: æŠ€æœ¯çŠ¶æ€é‰´å®šè§„èŒƒ
 * @Author: jeecg-boot
 * @Date: 2025-07-07
 * @Version: V1.0
 */
@Service
public class EamTechnicalStatusEvaluationStandardServiceImpl extends ServiceImpl<EamTechnicalStatusEvaluationStandardMapper, EamTechnicalStatusEvaluationStandard> implements IEamTechnicalStatusEvaluationStandardService {
    @Autowired
    private IBaseFactoryUserService baseFactoryUserService;
    @Autowired
    private IBaseFactoryService baseFactoryService;
    @Autowired
    private IEamTechnicalStatusEvaluationStandardDetailService standardDetailService;
    @Override
    public IPage<EamTechnicalStatusEvaluationStandard> queryPageList(Page<EamTechnicalStatusEvaluationStandard> page, EamTechnicalStatusEvaluationStandard query) {
        QueryWrapper<EamTechnicalStatusEvaluationStandard> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("ems.del_flag", CommonConstant.DEL_FLAG_0);
        //用户数据权限
        LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
        if (sysUser == null) {
            return page;
        }
        if (StringUtils.isNotBlank(sysUser.getEamEquipmentIds())) {
            //选择了设备,根据设备id过滤设备
            List<String> equipArr = Arrays.asList(sysUser.getEamEquipmentIds().split(","));
            queryWrapper.in("e.equipment_code", equipArr);
        } else {
            //没有选择设备,根据中心过滤设备
            List<BaseFactoryUser> baseFactoryUserList = baseFactoryUserService.
                    list(new LambdaQueryWrapper<BaseFactoryUser>().eq(BaseFactoryUser::getUserId, sysUser.getId()));
            if (!CollectionUtils.isEmpty(baseFactoryUserList)) {
                List<String> factoryIds = baseFactoryUserList.stream().map(BaseFactoryUser::getFactoryId).collect(Collectors.toList());
                List<String> factoryCode = baseFactoryService.listByIds(factoryIds).stream().map(BaseFactory::getFactoryCode).collect(Collectors.toList());
                queryWrapper.in("e.factory_code", factoryCode);
            } else {
                return page;
            }
        }
        if (query != null) {
            //编码 æ¨¡ç³ŠæŸ¥è¯¢
            if (StringUtils.isNotBlank(query.getStandardCode())) {
                queryWrapper.like("ems.standard_code", query.getStandardCode());
            }
            //名称 æ¨¡ç³ŠæŸ¥è¯¢
            if (StringUtils.isNotBlank(query.getStandardName())) {
                queryWrapper.like("ems.standard_name", query.getStandardName());
            }
            //设备
            if (StringUtils.isNotBlank(query.getEquipmentId())) {
                queryWrapper.eq("ems.equipment_id", query.getEquipmentId());
            }
            //保养分类
            if (StringUtils.isNotBlank(query.getStandardStatus())) {
                queryWrapper.eq("ems.standard_status", query.getStandardStatus());
            }
        }
        queryWrapper.orderByDesc("ems.create_time");
        return this.getBaseMapper().queryPageList(page, queryWrapper);
    }
    @Override
    @Transactional(rollbackFor = Exception.class)
    public boolean addEamTechnicalStatusEvaluationStandard(EamTechnicalStatusEvaluationStandardRequest request) {
        EamTechnicalStatusEvaluationStandard entity = new EamTechnicalStatusEvaluationStandard();
        BeanUtils.copyProperties(request, entity);
        entity.setStandardStatus(TechnicalStatusEvaluationStandardEnum.WAIT_SUBMIT.name());
        //版本递增
        entity.setStandardVersion(SimpleVersionGenerateUtil.getInitVersion());
        //设备处理
        entity.setEquipmentId(request.getEquipmentId());
        //删除标记
        entity.setDelFlag(CommonConstant.DEL_FLAG_0);
        //重复性校验
        EamTechnicalStatusEvaluationStandard exist = checkDuplicate(entity.getEquipmentId(), null);
        if(exist != null){
            throw new JeecgBootException("规范已存在,不能重复添加!");
        }
        this.getBaseMapper().insert(entity);
        //处理明细数据
        if(CollectionUtil.isNotEmpty(request.getTableDetailList())) {
            request.getTableDetailList().forEach(tableDetail -> {
                tableDetail.setStandardId(entity.getId());
            });
            standardDetailService.saveBatch(request.getTableDetailList());
        }
        return true;
    }
    @Override
    public EamTechnicalStatusEvaluationStandard checkDuplicate(String equipmentId, String id) {
        LambdaQueryWrapper<EamTechnicalStatusEvaluationStandard> queryWrapper = new LambdaQueryWrapper<>();
        queryWrapper.eq(EamTechnicalStatusEvaluationStandard::getEquipmentId, equipmentId);
        queryWrapper.eq(EamTechnicalStatusEvaluationStandard::getDelFlag, CommonConstant.DEL_FLAG_0);
        //待提交、启用状态
        queryWrapper.in(EamTechnicalStatusEvaluationStandard::getStandardStatus, Arrays.asList(TechnicalStatusEvaluationStandardEnum.ENABLE.name(), TechnicalStatusEvaluationStandardEnum.WAIT_SUBMIT.name()));
        queryWrapper.orderByDesc(EamTechnicalStatusEvaluationStandard::getStandardVersion);
        if(StringUtils.isNotBlank(id)){
            queryWrapper.ne(EamTechnicalStatusEvaluationStandard::getId, id);
        }
        List<EamTechnicalStatusEvaluationStandard> list = this.getBaseMapper().selectList(queryWrapper);
        if(CollectionUtil.isEmpty(list)) {
            return null;
        }
        return list.get(0);
    }
    @Override
    @Transactional(rollbackFor = Exception.class)
    public boolean editEamTechnicalStatusEvaluationStandard(EamTechnicalStatusEvaluationStandardRequest request) {
        EamTechnicalStatusEvaluationStandard entity = this.getBaseMapper().selectById(request.getId());
        if(entity == null){
            throw new JeecgBootException("编辑的数据已删除,请刷新重试!");
        }
        entity.setStandardName(request.getStandardName());
        entity.setEvaluationPeriod(request.getEvaluationPeriod());
        this.getBaseMapper().updateById(entity);
        //处理详情
        if(CollectionUtil.isNotEmpty(request.getTableDetailList())) {
            List<EamTechnicalStatusEvaluationStandardDetail> addList = new ArrayList<>();
            List<EamTechnicalStatusEvaluationStandardDetail> updateList = new ArrayList<>();
            request.getTableDetailList().forEach(tableDetail -> {
                tableDetail.setStandardId(entity.getId());
                if(tableDetail.getId() == null){
                    addList.add(tableDetail);
                }else {
                    updateList.add(tableDetail);
                }
            });
            if(CollectionUtil.isNotEmpty(addList)){
                standardDetailService.saveBatch(addList);
            }
            if(CollectionUtil.isNotEmpty(updateList)){
                standardDetailService.updateBatchById(updateList);
            }
        }
        if(CollectionUtil.isNotEmpty(request.getRemoveDetailList())) {
            List<String> ids = request.getRemoveDetailList().stream().map(EamTechnicalStatusEvaluationStandardDetail::getId).collect(Collectors.toList());
            standardDetailService.removeBatchByIds(ids);
        }
        return true;
    }
}