|
@@ -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);
|