zhangherong
2025-05-22 abe2c2fbea21d63678bc21bd77f3102a2b535973
art: 设备管理-三保-列表、新增修改,增加精度参数明细项
已修改9个文件
342 ■■■■ 文件已修改
db/数据库产品化设计.pdma.json 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentPrecisionParametersController.java 43 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamPrecisionCheckDetailController.java 202 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamPrecisionCheckDetail.java 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamThirdMaintenanceRequest.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamEquipmentPrecisionParametersService.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentPrecisionParametersServiceImpl.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamPrecisionCheckDetailServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamThirdMaintenanceOrderServiceImpl.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
db/Êý¾Ý¿â²úÆ·»¯Éè¼Æ.pdma.json
@@ -9136,7 +9136,25 @@
          "id": "A0BDDC8D-57C6-4021-966A-BA5098035FDE"
        },
        {
          "defKey": "equipment_precision_id",
          "defKey": "equipment_id",
          "defName": "设备ID",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "16120F75-6AA7-4483-868D-F07F511BB081",
          "id": "1BB5AD12-4251-4DEE-82C5-4BB725C69714"
        },
        {
          "defKey": "parameter_id",
          "defName": "精度参数id",
          "comment": "",
          "type": "",
@@ -9154,6 +9172,24 @@
          "id": "AC662F40-C243-4072-BD4D-8CBB465C2B41"
        },
        {
          "defKey": "parameter_value",
          "defName": "允差值(mm)",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
          "id": "51EB67FF-6C51-4E31-A599-7C79AA38BF12"
        },
        {
          "defKey": "actual_value",
          "defName": "实测值",
          "comment": "",
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentPrecisionParametersController.java
@@ -1,22 +1,30 @@
package org.jeecg.modules.eam.controller;
import cn.hutool.core.collection.CollectionUtil;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.parser.Feature;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.fasterxml.jackson.databind.ObjectMapper;
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.util.TranslateDictTextUtils;
import org.jeecg.modules.eam.entity.EamEquipmentPrecisionParameters;
import org.jeecg.modules.eam.service.IEamEquipmentPrecisionParametersService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
 /**
/**
 * @Description: è®¾å¤‡ç²¾åº¦å‚æ•°
 * @Author: jeecg-boot
 * @Date:   2025-04-27
@@ -29,6 +37,10 @@
public class EamEquipmentPrecisionParametersController extends JeecgController<EamEquipmentPrecisionParameters, IEamEquipmentPrecisionParametersService> {
    @Autowired
    private IEamEquipmentPrecisionParametersService eamEquipmentPrecisionParametersService;
    @Autowired
    private ObjectMapper objectMapper;
    @Autowired
    private TranslateDictTextUtils translateDictTextUtils;
    
    /**
     * åˆ†é¡µåˆ—表查询
@@ -113,4 +125,33 @@
        this.eamEquipmentPrecisionParametersService.removeByIds(Arrays.asList(ids.split(",")));
        return Result.OK("批量删除成功!");
    }
     /**
      * åˆ—表查询
      *
      * @param equipmentId è®¾å¤‡ID
      * @return
      */
     @ApiOperation(value="设备精度参数-列表查询", notes="设备精度参数-列表查询")
     @GetMapping(value = "/queryList")
     public Result<?> queryList(@RequestParam(name="equipmentId") String equipmentId) {
         List<EamEquipmentPrecisionParameters> list = eamEquipmentPrecisionParametersService.queryList(equipmentId);
         if(CollectionUtil.isEmpty(list)) {
             return Result.OK(Collections.emptyList());
         }
         List<JSONObject> items = new ArrayList<>();
         try {
             for(EamEquipmentPrecisionParameters vo : list) {
                 String json = objectMapper.writeValueAsString(vo);
                 JSONObject item = JSONObject.parseObject(json, Feature.OrderedField);
                 translateDictTextUtils.translateField("parameterId", vo.getParameterId(), item, "eam_precision_parameters,parameter_name,id");
                 translateDictTextUtils.translateField("parameterCode", vo.getParameterId(), item, "eam_precision_parameters,parameter_code,id");
                 items.add(item);
             }
             return Result.OK(items);
         }catch (Exception e) {
             return Result.error("数据转译失败!");
         }
     }
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamPrecisionCheckDetailController.java
@@ -1,41 +1,29 @@
package org.jeecg.modules.eam.controller;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.jeecg.common.util.oConvertUtils;
import org.jeecg.modules.eam.entity.EamPrecisionCheckDetail;
import org.jeecg.modules.eam.service.IEamPrecisionCheckDetailService;
import java.util.Date;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.system.base.controller.JeecgController;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import com.alibaba.fastjson.JSON;
import cn.hutool.core.collection.CollectionUtil;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.parser.Feature;
import com.fasterxml.jackson.databind.ObjectMapper;
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.system.base.controller.JeecgController;
import org.jeecg.common.util.TranslateDictTextUtils;
import org.jeecg.modules.eam.entity.EamEquipmentPrecisionParameters;
import org.jeecg.modules.eam.entity.EamPrecisionCheckDetail;
import org.jeecg.modules.eam.service.IEamPrecisionCheckDetailService;
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;
 /**
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
/**
 * @Description: è®¾å¤‡ç²¾åº¦æ£€æµ‹æ˜Žç»†
 * @Author: jeecg-boot
 * @Date:   2025-05-13
@@ -44,124 +32,40 @@
@Slf4j
@Api(tags="设备精度检测明细")
@RestController
@RequestMapping("/eam/eamPrecisionCheckDetail")
@RequestMapping("/eam/precisionCheckDetail")
public class EamPrecisionCheckDetailController extends JeecgController<EamPrecisionCheckDetail, IEamPrecisionCheckDetailService> {
    @Autowired
    private IEamPrecisionCheckDetailService eamPrecisionCheckDetailService;
    /**
     * åˆ†é¡µåˆ—表查询
     *
     * @param eamPrecisionCheckDetail
     * @param pageNo
     * @param pageSize
     * @param req
     * @return
     */
    @AutoLog(value = "设备精度检测明细-分页列表查询")
    @ApiOperation(value="设备精度检测明细-分页列表查询", notes="设备精度检测明细-分页列表查询")
    @GetMapping(value = "/list")
    public Result<?> queryPageList(EamPrecisionCheckDetail eamPrecisionCheckDetail,
                                   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                                   HttpServletRequest req) {
        QueryWrapper<EamPrecisionCheckDetail> queryWrapper = QueryGenerator.initQueryWrapper(eamPrecisionCheckDetail, req.getParameterMap());
        Page<EamPrecisionCheckDetail> page = new Page<EamPrecisionCheckDetail>(pageNo, pageSize);
        IPage<EamPrecisionCheckDetail> pageList = eamPrecisionCheckDetailService.page(page, queryWrapper);
        return Result.OK(pageList);
    }
    /**
     * æ·»åŠ 
     *
     * @param eamPrecisionCheckDetail
     * @return
     */
    @AutoLog(value = "设备精度检测明细-添加")
    @ApiOperation(value="设备精度检测明细-添加", notes="设备精度检测明细-添加")
    @PostMapping(value = "/add")
    public Result<?> add(@RequestBody EamPrecisionCheckDetail eamPrecisionCheckDetail) {
        eamPrecisionCheckDetailService.save(eamPrecisionCheckDetail);
        return Result.OK("添加成功!");
    }
    /**
     * ç¼–辑
     *
     * @param eamPrecisionCheckDetail
     * @return
     */
    @AutoLog(value = "设备精度检测明细-编辑")
    @ApiOperation(value="设备精度检测明细-编辑", notes="设备精度检测明细-编辑")
    @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
    public Result<?> edit(@RequestBody EamPrecisionCheckDetail eamPrecisionCheckDetail) {
        eamPrecisionCheckDetailService.updateById(eamPrecisionCheckDetail);
        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) {
        eamPrecisionCheckDetailService.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.eamPrecisionCheckDetailService.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) {
        EamPrecisionCheckDetail eamPrecisionCheckDetail = eamPrecisionCheckDetailService.getById(id);
        return Result.OK(eamPrecisionCheckDetail);
    }
    @Autowired
    private ObjectMapper objectMapper;
    @Autowired
    private TranslateDictTextUtils translateDictTextUtils;
  /**
   * å¯¼å‡ºexcel
   *
   * @param request
   * @param eamPrecisionCheckDetail
   */
  @RequestMapping(value = "/exportXls")
  public ModelAndView exportXls(HttpServletRequest request, EamPrecisionCheckDetail eamPrecisionCheckDetail) {
      return super.exportXls(request, eamPrecisionCheckDetail, EamPrecisionCheckDetail.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, EamPrecisionCheckDetail.class);
  }
    /**
     * åˆ—表查询
     *
     * @param orderId å·¥å•ID
     * @return
     */
    @ApiOperation(value="设备精度参数-列表查询", notes="设备精度参数-列表查询")
    @GetMapping(value = "/queryList")
    public Result<?> queryList(@RequestParam(name="orderId") String orderId) {
        List<EamPrecisionCheckDetail> list = eamPrecisionCheckDetailService.getByOrderId(orderId);
        if(CollectionUtil.isEmpty(list)) {
            return Result.OK(Collections.emptyList());
        }
        List<JSONObject> items = new ArrayList<>();
        try {
            for(EamPrecisionCheckDetail vo : list) {
                String json = objectMapper.writeValueAsString(vo);
                JSONObject item = JSONObject.parseObject(json, Feature.OrderedField);
                translateDictTextUtils.translateField("parameterId", vo.getParameterId(), item, "eam_precision_parameters,parameter_name,id");
                translateDictTextUtils.translateField("parameterCode", vo.getParameterId(), item, "eam_precision_parameters,parameter_code,id");
                items.add(item);
            }
            return Result.OK(items);
        }catch (Exception e) {
            return Result.error("数据转译失败!");
        }
    }
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamPrecisionCheckDetail.java
@@ -57,10 +57,20 @@
    @ApiModelProperty(value = "工单ID")
    private String orderId;
    /**
     * è®¾å¤‡å‚æ•°id
     * è®¾å¤‡ID
     */
    @ApiModelProperty(value = "设备参数id")
    private String equipmentPrecisionId;
    @ApiModelProperty(value = "设备ID")
    private String equipmentId;
    /**
     * å‚æ•°id
     */
    @ApiModelProperty(value = "参数id")
    private String parameterId;
    /**
     * å…å·®å€¼(mm)
     */
    @ApiModelProperty(value = "允差值(mm)")
    private String parameterValue;
    /**
     * å®žæµ‹å€¼
     */
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamThirdMaintenanceRequest.java
@@ -7,6 +7,7 @@
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.api.vo.FileUploadResult;
import org.jeecg.modules.eam.entity.EamPrecisionCheckDetail;
import org.jeecg.modules.eam.entity.EamThirdMaintenanceOrderDetail;
import org.jeecg.modules.flowable.domain.vo.FlowTaskVo;
import org.springframework.format.annotation.DateTimeFormat;
@@ -60,6 +61,14 @@
    @ApiModelProperty(value = "删除 ä¿å…»é¡¹æ˜Žç»†")
    private List<EamThirdMaintenanceOrderDetail> removeDetailList;
    /**列表 ç²¾åº¦å‚数明细*/
    @ApiModelProperty(value = "列表 ç²¾åº¦å‚数明细")
    private List<EamPrecisionCheckDetail> precisionDetailList;
    /**删除 ç²¾åº¦å‚数明细*/
    @ApiModelProperty(value = "删除 ç²¾åº¦å‚数明细")
    private List<EamPrecisionCheckDetail> removePrecisionDetailList;
    //确认操作
    /**确认意见*/
    @ApiModelProperty(value = "确认意见")
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamEquipmentPrecisionParametersService.java
@@ -5,6 +5,8 @@
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.eam.entity.EamEquipmentPrecisionParameters;
import java.util.List;
/**
 * @Description: è®¾å¤‡ç²¾åº¦å‚æ•°
 * @Author: jeecg-boot
@@ -27,4 +29,11 @@
     * @return
     */
    IPage<EamEquipmentPrecisionParameters> queryPageList(String equipmentId, Page<EamEquipmentPrecisionParameters> page);
    /**
     * åˆ—表查询
     * @param equipmentId
     * @return
     */
    List<EamEquipmentPrecisionParameters> queryList(String equipmentId);
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentPrecisionParametersServiceImpl.java
@@ -11,6 +11,8 @@
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Collections;
import java.util.List;
/**
 * @Description: è®¾å¤‡ç²¾åº¦å‚æ•°
@@ -39,4 +41,12 @@
        queryWrapper.orderByDesc("wmo.create_time");
        return eamEquipmentPrecisionParametersMapper.queryPageList(page, queryWrapper);
    }
    @Override
    public List<EamEquipmentPrecisionParameters> queryList(String equipmentId) {
        LambdaQueryWrapper<EamEquipmentPrecisionParameters> queryWrapper = new LambdaQueryWrapper<>();
        queryWrapper.eq(EamEquipmentPrecisionParameters::getEquipmentId, equipmentId);
        queryWrapper.orderByDesc(EamEquipmentPrecisionParameters::getCreateTime);
        return eamEquipmentPrecisionParametersMapper.selectList(queryWrapper);
    }
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamPrecisionCheckDetailServiceImpl.java
@@ -8,7 +8,6 @@
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Collections;
import java.util.List;
/**
@@ -25,7 +24,9 @@
    @Override
    public List<EamPrecisionCheckDetail> getByOrderId(String orderId) {
        return Collections.emptyList();
        LambdaQueryWrapper<EamPrecisionCheckDetail> queryWrapper = new LambdaQueryWrapper<>();
        queryWrapper.eq(EamPrecisionCheckDetail::getOrderId, orderId);
        return eamPrecisionCheckDetailMapper.selectList(queryWrapper);
    }
    @Override
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamThirdMaintenanceOrderServiceImpl.java
@@ -156,8 +156,14 @@
            });
            thirdMaintenanceOrderDetailService.saveBatch(request.getTableDetailList());
        }
        //处理精度参数 TODO
        //处理精度参数
        if (CollectionUtil.isNotEmpty(request.getPrecisionDetailList())) {
            request.getPrecisionDetailList().forEach(tableDetail -> {
                tableDetail.setId(null);
                tableDetail.setOrderId(order.getId());
            });
            precisionCheckDetailService.saveBatch(request.getPrecisionDetailList());
        }
        //判断是否存在保养人 å¦‚果存在则启动流程
        if (StringUtils.isNotBlank(order.getOperator())) {
            //启动流程 TODO