Pārlūkot izejas kodu

1. 调整数据到处的查询条件

sugb 9 mēneši atpakaļ
vecāks
revīzija
26adfa8f36

+ 42 - 5
jeecg-boot-module-zrzyqc/src/main/java/org/jeecg/modules/zrzyqc/qcsb/controller/QcSsgqzysytdqkController.java

@@ -3,12 +3,16 @@ package org.jeecg.modules.zrzyqc.qcsb.controller;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.enums.SqlMethod;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.toolkit.SqlHelper;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang.StringUtils;
+import org.apache.ibatis.mapping.BoundSql;
+import org.apache.ibatis.mapping.MappedStatement;
 import org.apache.shiro.SecurityUtils;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.aspect.annotation.AutoLog;
@@ -22,6 +26,7 @@ import org.jeecg.modules.zrzyqc.qcsb.Untils.Zh;
 import org.jeecg.modules.zrzyqc.qcsb.entity.QcSsgqzysytdqk;
 import org.jeecg.modules.zrzyqc.qcsb.entity.QcSsgqzysytdqk1;
 import org.jeecg.modules.zrzyqc.qcsb.entity.QcSsgqzysytdqkzc;
+import org.jeecg.modules.zrzyqc.qcsb.mapper.QcSsgqzysytdqkMapper;
 import org.jeecg.modules.zrzyqc.qcsb.service.IQcSsgqzysytdqk1Service;
 import org.jeecg.modules.zrzyqc.qcsb.service.IQcSsgqzysytdqkService;
 import org.jeecg.modules.zrzyqc.qcsb.service.IQcSsgqzysytdqkzcService;
@@ -41,13 +46,14 @@ 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 javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
+import org.apache.ibatis.session.SqlSessionFactory;
 import java.io.File;
 import java.io.FileInputStream;
 import java.io.FileOutputStream;
 import java.io.IOException;
+import java.lang.reflect.Field;
 import java.text.SimpleDateFormat;
 import java.util.*;
 import java.util.concurrent.TimeUnit;
@@ -80,7 +86,8 @@ public class QcSsgqzysytdqkController extends JeecgController<QcSsgqzysytdqk, IQ
     private IQcQyxxService qcQyxxService;
     @Autowired
     private ISysBaseAPI sysBaseAPI;
-
+    @Autowired
+    private SqlSessionFactory sqlSessionFactory;
 
     /**
      * 分页列表查询
@@ -919,18 +926,33 @@ public class QcSsgqzysytdqkController extends JeecgController<QcSsgqzysytdqk, IQ
     public ModelAndView exportXls(HttpServletRequest request, QcSsgqzysytdqk qcSsgqzysytdqk,String year) {
 
         // Step.1 组装查询条件
-        QueryWrapper<QcSsgqzysytdqk> queryWrapper = QueryGenerator.initQueryWrapper(qcSsgqzysytdqk, request.getParameterMap());
         LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+        QueryWrapper<QcSsgqzysytdqk> queryWrapper = QueryGenerator.initQueryWrapper(qcSsgqzysytdqk, request.getParameterMap());
 
-        queryWrapper.likeRight("sys_org_code", "A04");
+        // 使用反射遍历对象的字段,并为每个字段添加like条件
+        Class<?> clazz = QcSsgqzysytdqk.class;
+        Field[] fields = clazz.getDeclaredFields();
+        for (Field field : fields) {
+            field.setAccessible(true);
+            try {
+                Object value = field.get(qcSsgqzysytdqk);
+                if (value != null && !value.equals("")) {
+                    queryWrapper.eq(field.getName(), value.toString());
+                }
+            } catch (IllegalAccessException e) {
+                e.printStackTrace();
+            }
+        }
         if (year!=null){
             queryWrapper.apply("TO_CHAR(create_time, 'YYYY') LIKE {0}", year + "%");
         }
+        queryWrapper.likeRight("sys_org_code", "A04");
+
         // Step.2 获取导出数据
         List<QcSsgqzysytdqk> pageList = service.list(queryWrapper);
         List<QcSsgqzysytdqk> exportList = null;
 
-        // 过滤选中数据
+        // 过滤选中数据,如果是选择则只导出选中的数据
         String selections = request.getParameter("selections");
         if (oConvertUtils.isNotEmpty(selections)) {
             List<String> selectionList = Arrays.asList(selections.split(","));
@@ -938,6 +960,7 @@ public class QcSsgqzysytdqkController extends JeecgController<QcSsgqzysytdqk, IQ
         } else {
             exportList = pageList;
         }
+        //行政区划
         for (QcSsgqzysytdqk ssqydk : exportList) {
             ssqydk.setXq(ssqydk.getXzqh().substring(0, 4));
         }
@@ -1012,6 +1035,20 @@ public class QcSsgqzysytdqkController extends JeecgController<QcSsgqzysytdqk, IQ
         QueryWrapper<QcSsgqzysytdqk1> queryWrapper = QueryGenerator.initQueryWrapper(qcSsgqzysytdqk, request.getParameterMap());
         LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
 
+        // 使用反射遍历对象的字段,并为每个字段添加eq条件
+        Class<?> clazz = QcSsgqzysytdqk1.class;
+        Field[] fields = clazz.getDeclaredFields();
+        for (Field field : fields) {
+            field.setAccessible(true);
+            try {
+                Object value = field.get(qcSsgqzysytdqk);
+                if (value != null && !value.equals("")) {
+                    queryWrapper.eq(field.getName(), value.toString());
+                }
+            } catch (IllegalAccessException e) {
+                e.printStackTrace();
+            }
+        }
         // Step.2 获取导出数据
         queryWrapper.likeRight("sys_org_code", "A03");
         queryWrapper.gt("sfsb", 0);

+ 0 - 2
jeecg-boot-module-zrzyqc/src/main/java/org/jeecg/modules/zrzyqc/qcsb/entity/QcSsgqzysytdqk.java

@@ -31,8 +31,6 @@ import lombok.experimental.Accessors;
 @EqualsAndHashCode(callSuper = false)
 @ApiModel(value = "qc_ssgqzysytdqk对象", description = "省属国企占有使用土地情况调查")
 public class QcSsgqzysytdqk implements Serializable {
-    private static final long serialVersionUID = 1L;
-
     /**
      * 主键
      */