From e500875b24cb44301b869fdc102646e8bf4d4842 Mon Sep 17 00:00:00 2001
From: zhangherong <571457620@qq.com>
Date: 星期一, 07 四月 2025 14:05:44 +0800
Subject: [PATCH] art: 设备管理-周保-查询,列表修改

---
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamWeekMaintenanceOrderMapper.java            |   14 +++-
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamWeekMaintenanceOrderController.java    |   13 +--
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamWeekMaintenanceOrderServiceImpl.java |   64 +++++++++++++++++++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamWeekMaintenanceOrderMapper.xml         |    7 ++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamWeekMaintenanceOrder.java                  |    7 ++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamWeekMaintenanceOrderService.java         |   11 +++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamWeekMaintenanceQuery.java                 |   23 +++++++
 7 files changed, 127 insertions(+), 12 deletions(-)

diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamWeekMaintenanceOrderController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamWeekMaintenanceOrderController.java
index 536ae5f..da13f7c 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamWeekMaintenanceOrderController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamWeekMaintenanceOrderController.java
@@ -1,7 +1,6 @@
 package org.jeecg.modules.eam.controller;
 
 import cn.hutool.core.collection.CollectionUtil;
-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;
@@ -10,9 +9,9 @@
 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.constant.BusinessCodeConst;
 import org.jeecg.modules.eam.entity.EamWeekMaintenanceOrder;
+import org.jeecg.modules.eam.request.EamWeekMaintenanceQuery;
 import org.jeecg.modules.eam.request.EamWeekMaintenanceRequest;
 import org.jeecg.modules.eam.service.IEamWeekMaintenanceOrderService;
 import org.jeecg.modules.system.service.ISysBusinessCodeRuleService;
@@ -41,22 +40,21 @@
     /**
      * 鍒嗛〉鍒楄〃鏌ヨ
      *
-     * @param eamWeekMaintenanceOrder
+     * @param query
      * @param pageNo
      * @param pageSize
      * @param req
      * @return
      */
-    @AutoLog(value = "鍛ㄤ繚宸ュ崟-鍒嗛〉鍒楄〃鏌ヨ")
     @ApiOperation(value = "鍛ㄤ繚宸ュ崟-鍒嗛〉鍒楄〃鏌ヨ", notes = "鍛ㄤ繚宸ュ崟-鍒嗛〉鍒楄〃鏌ヨ")
     @GetMapping(value = "/list")
-    public Result<?> queryPageList(EamWeekMaintenanceOrder eamWeekMaintenanceOrder,
+    public Result<?> queryPageList(EamWeekMaintenanceQuery query,
                                    @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
                                    @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
                                    HttpServletRequest req) {
-        QueryWrapper<EamWeekMaintenanceOrder> queryWrapper = QueryGenerator.initQueryWrapper(eamWeekMaintenanceOrder, req.getParameterMap());
+//        QueryWrapper<EamWeekMaintenanceOrder> queryWrapper = QueryGenerator.initQueryWrapper(eamWeekMaintenanceOrder, req.getParameterMap());
         Page<EamWeekMaintenanceOrder> page = new Page<EamWeekMaintenanceOrder>(pageNo, pageSize);
-        IPage<EamWeekMaintenanceOrder> pageList = eamWeekMaintenanceOrderService.page(page, queryWrapper);
+        IPage<EamWeekMaintenanceOrder> pageList = eamWeekMaintenanceOrderService.queryPageList(page, query);
         return Result.OK(pageList);
     }
 
@@ -133,7 +131,6 @@
      * @param id
      * @return
      */
-    @AutoLog(value = "鍛ㄤ繚宸ュ崟-閫氳繃id鏌ヨ")
     @ApiOperation(value = "鍛ㄤ繚宸ュ崟-閫氳繃id鏌ヨ", notes = "鍛ㄤ繚宸ュ崟-閫氳繃id鏌ヨ")
     @GetMapping(value = "/queryById")
     public Result<?> queryById(@RequestParam(name = "id", required = true) String id) {
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamWeekMaintenanceOrder.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamWeekMaintenanceOrder.java
index d0752ca..56c964e 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamWeekMaintenanceOrder.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamWeekMaintenanceOrder.java
@@ -53,7 +53,7 @@
 	private String orderNum;
 	/**璁惧ID*/
     @ApiModelProperty(value = "璁惧ID")
-	@Dict(dicCode = "eam_equipment, equipment_code, id")
+//	@Dict(dicCode = "eam_equipment, equipment_code, id")
 	private String equipmentId;
 	/**鏍囧噯ID*/
     @ApiModelProperty(value = "鏍囧噯ID")
@@ -101,4 +101,9 @@
 	/**澶囨敞*/
     @ApiModelProperty(value = "澶囨敞")
 	private String remark;
+
+
+	//鍒楄〃灞曠ず
+	private String equipmentCode;
+	private String equipmentName;
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamWeekMaintenanceOrderMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamWeekMaintenanceOrderMapper.java
index dd6a97f..f6f73de 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamWeekMaintenanceOrderMapper.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamWeekMaintenanceOrderMapper.java
@@ -1,10 +1,12 @@
 package org.jeecg.modules.eam.mapper;
 
-import java.util.List;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Constants;
 
 import org.apache.ibatis.annotations.Param;
 import org.jeecg.modules.eam.entity.EamWeekMaintenanceOrder;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 
 /**
  * @Description: 鍛ㄤ繚宸ュ崟
@@ -13,5 +15,11 @@
  * @Version: V1.0
  */
 public interface EamWeekMaintenanceOrderMapper extends BaseMapper<EamWeekMaintenanceOrder> {
-
+    /**
+     * 鍒嗛〉鏌ヨ
+     * @param page
+     * @param queryWrapper
+     * @return
+     */
+    IPage<EamWeekMaintenanceOrder> queryPageList(IPage<EamWeekMaintenanceOrder> page, @Param(Constants.WRAPPER) Wrapper<EamWeekMaintenanceOrder> queryWrapper);
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamWeekMaintenanceOrderMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamWeekMaintenanceOrderMapper.xml
index 5ef1488..f07c0c8 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamWeekMaintenanceOrderMapper.xml
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamWeekMaintenanceOrderMapper.xml
@@ -2,4 +2,11 @@
 <!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.EamWeekMaintenanceOrderMapper">
 
+    <select id="queryPageList" resultType="org.jeecg.modules.eam.entity.EamWeekMaintenanceOrder">
+        select wmo.*, e.equipment_code, e.equipment_name
+        from eam_week_maintenance_order wmo
+        inner join eam_equipment e
+        on wmo.equipment_id = e.id
+        ${ew.customSqlSegment}
+    </select>
 </mapper>
\ No newline at end of file
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamWeekMaintenanceQuery.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamWeekMaintenanceQuery.java
new file mode 100644
index 0000000..aeef9cf
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamWeekMaintenanceQuery.java
@@ -0,0 +1,23 @@
+package org.jeecg.modules.eam.request;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.util.Date;
+
+@Data
+public class EamWeekMaintenanceQuery {
+    private String orderNum;
+    private String equipmentId;
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    private Date maintenanceDateBegin;
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    private Date maintenanceDateEnd;
+    private String maintenanceStatus;
+
+    private String column;
+    private String order;
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamWeekMaintenanceOrderService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamWeekMaintenanceOrderService.java
index 497cb38..9210ebc 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamWeekMaintenanceOrderService.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamWeekMaintenanceOrderService.java
@@ -1,7 +1,10 @@
 package org.jeecg.modules.eam.service;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import org.jeecg.modules.eam.entity.EamWeekMaintenanceOrder;
 import com.baomidou.mybatisplus.extension.service.IService;
+import org.jeecg.modules.eam.request.EamWeekMaintenanceQuery;
 import org.jeecg.modules.eam.request.EamWeekMaintenanceRequest;
 
 /**
@@ -18,4 +21,12 @@
      * @return
      */
     boolean addWeekMaintenance(EamWeekMaintenanceRequest request);
+
+    /**
+     * 鍒嗛〉鏌ヨ
+     * @param page
+     * @param query
+     * @return
+     */
+    IPage<EamWeekMaintenanceOrder> queryPageList(Page<EamWeekMaintenanceOrder> page, EamWeekMaintenanceQuery query);
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamWeekMaintenanceOrderServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamWeekMaintenanceOrderServiceImpl.java
index d220660..4cc12f2 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamWeekMaintenanceOrderServiceImpl.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamWeekMaintenanceOrderServiceImpl.java
@@ -1,12 +1,22 @@
 package org.jeecg.modules.eam.service.impl;
 
 import cn.hutool.core.collection.CollectionUtil;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.shiro.SecurityUtils;
 import org.jeecg.common.constant.CommonConstant;
+import org.jeecg.common.constant.DataBaseConstant;
+import org.jeecg.common.system.vo.LoginUser;
+import org.jeecg.common.util.oConvertUtils;
 import org.jeecg.modules.eam.constant.MaintenanceStatusEnum;
 import org.jeecg.modules.eam.constant.OrderCreationMethodEnum;
+import org.jeecg.modules.eam.entity.EamEquipment;
 import org.jeecg.modules.eam.entity.EamWeekMaintenanceOrder;
 import org.jeecg.modules.eam.mapper.EamWeekMaintenanceOrderMapper;
+import org.jeecg.modules.eam.request.EamWeekMaintenanceQuery;
 import org.jeecg.modules.eam.request.EamWeekMaintenanceRequest;
 import org.jeecg.modules.eam.service.IEamWeekMaintenanceOrderDetailService;
 import org.jeecg.modules.eam.service.IEamWeekMaintenanceOrderService;
@@ -15,6 +25,9 @@
 import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
+import java.util.Arrays;
+import java.util.Date;
+import java.util.List;
 
 /**
  * @Description: 鍛ㄤ繚宸ュ崟
@@ -57,4 +70,55 @@
         }
         return true;
     }
+
+    @Override
+    public IPage<EamWeekMaintenanceOrder> queryPageList(Page<EamWeekMaintenanceOrder> page, EamWeekMaintenanceQuery query) {
+        QueryWrapper<EamWeekMaintenanceOrder> queryWrapper = new QueryWrapper<>();
+        //鐢ㄦ埛鏁版嵁鏉冮檺
+        LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+        if (sysUser == null) {
+            return page;
+        }
+        if (StringUtils.isNotBlank(sysUser.getEquipmentIds())) {
+            //閫夋嫨浜嗚澶囷紝鏍规嵁璁惧id杩囨护璁惧
+            List<String> equipArr = Arrays.asList(sysUser.getEquipmentIds().split(","));
+            queryWrapper.in("e.equipment_code", equipArr);
+        } else {
+            //娌℃湁閫夋嫨璁惧锛屾牴鎹溅闂磋繃婊よ澶�
+            queryWrapper.exists("select 1 from mdc_user_production t where t.user_id={0} and t.pro_id=e.org_id ", sysUser.getId());
+        }
+        //鏌ヨ鏉′欢杩囨护
+        if (query != null) {
+            if (StringUtils.isNotBlank(query.getEquipmentId())) {
+                queryWrapper.eq("wmo.equipment_id", query.getEquipmentId());
+            }
+            if (StringUtils.isNotBlank(query.getOrderNum())) {
+                queryWrapper.like("wmo.order_num", query.getOrderNum());
+            }
+            if (StringUtils.isNotBlank(query.getMaintenanceStatus())) {
+                queryWrapper.eq("wmo.maintenance_status", query.getMaintenanceStatus());
+            }
+            if (query.getMaintenanceDateBegin() != null && query.getMaintenanceDateEnd() != null) {
+                queryWrapper.between("wmo.maintenance_date", query.getMaintenanceDateBegin(), query.getMaintenanceDateEnd());
+            }
+            //鎺掑簭
+            if (StringUtils.isNotBlank(query.getColumn()) && StringUtils.isNotBlank(query.getOrder())) {
+                String column = query.getColumn();
+                if (column.endsWith(CommonConstant.DICT_TEXT_SUFFIX)) {
+                    column = column.substring(0, column.lastIndexOf(CommonConstant.DICT_TEXT_SUFFIX));
+                }
+                if (DataBaseConstant.SQL_ASC.equalsIgnoreCase(query.getOrder())) {
+                    queryWrapper.orderByAsc("wmo." + oConvertUtils.camelToUnderline(column));
+                } else {
+                    queryWrapper.orderByDesc("wmo." + oConvertUtils.camelToUnderline(column));
+                }
+            } else {
+                queryWrapper.orderByDesc("wmo.create_time");
+            }
+        } else {
+            queryWrapper.orderByDesc("wmo.create_time");
+        }
+
+        return eamWeekMaintenanceOrderMapper.queryPageList(page, queryWrapper);
+    }
 }

--
Gitblit v1.9.3