Переглянути джерело

git-svn-id: https://192.168.57.71/svn/jsgkj@1806 931142cf-59ea-a443-aa0e-51397b428577

ld_xuhx 8 роки тому
батько
коміт
6828d333a0

+ 185 - 138
gkjsjy/trunk/src/com/xt/jygl/gkjygl/cghzyxxgl/dcsb/ctl/DcsbCtl.java

@@ -372,161 +372,208 @@ public class DcsbCtl extends BaseWebCtl {
 	//导出
 	@RequestMapping(value="/exportExcelAll")
 	@ResponseBody
-	public String exportExcelAll(HttpServletResponse response,SimplePageRequest page, Model model, final String gkjyr, final String szdid, final String szgkid, final String szgqid, final String zypmc, final String bh, final String hwzl, final String shzt, final String menuid, final Date zysjq, final String dydlid, final Date zysjz, final HttpServletRequest request) throws JsonProcessingException {
+	public String exportExcelAll(HttpServletResponse response,SimplePageRequest page, Model model, final String gkjyr, final String szdid, final String szgkid, final String szgqid, final String zypmc, final String bh, final String hwzl, final String shzt, final String menuid, final Date zysjq_start,final Date zysjq_end, final String dydlid, final Date zysjz_start, final Date zysjz_end,final HttpServletRequest request) throws JsonProcessingException {
 		final Map<String, Object> cacheSCmap = CacheSearchCondition.cacheSCmap(request, "dcsb");
 		// 查询条件
-				Specification<DcsbEntity> spec = new Specification<DcsbEntity>() {
-					@Override
-					public Predicate toPredicate(Root<DcsbEntity> root, CriteriaQuery<?> query, CriteriaBuilder cb) {
-						List<Predicate> list = new ArrayList<Predicate>();
-						if (StringUtils.isNotEmpty(gkjyr)) {
-							list.add(cb.like(root.get("ssjyr").get("gkjyr").as(String.class), "%" + gkjyr + "%"));
-						} else if (isGET(request)) {
-							String v = (String) CacheSearchCondition.cacheSCmapVal(cacheSCmap, "gkjyr");
-							if (StringUtils.isNotEmpty(v)) {
-								list.add(cb.like(root.get("ssjyr").get("gkjyr").as(String.class), "%" + v + "%"));
-							}
-						}
+		Specification<DcsbEntity> spec = new Specification<DcsbEntity>() {
+			@Override
+			public Predicate toPredicate(Root<DcsbEntity> root, CriteriaQuery<?> query, CriteriaBuilder cb) {
+				List<Predicate> list = new ArrayList<Predicate>();
+				if (StringUtils.isNotEmpty(gkjyr)) {
+					list.add(cb.like(root.get("ssjyr").get("gkjyr").as(String.class), "%" + gkjyr + "%"));
+				} else if (isGET(request)) {
+					String v = (String) CacheSearchCondition.cacheSCmapVal(cacheSCmap, "gkjyr");
+					if (StringUtils.isNotEmpty(v)) {
+						list.add(cb.like(root.get("ssjyr").get("gkjyr").as(String.class), "%" + v + "%"));
+					}
+				}
 
-						if (StringUtils.isNotEmpty(szdid)) {
-							list.add(cb.like(root.get("szd").get("id").as(String.class), "%" + szdid + "%"));
-						} else if (isGET(request)) {
-							String v = (String) CacheSearchCondition.cacheSCmapVal(cacheSCmap, "szdid");
-							if (StringUtils.isNotEmpty(v)) {
-								list.add(cb.like(root.get("szd").get("id").as(String.class), "%" + v + "%"));
-							}
-						}
+				if (StringUtils.isNotEmpty(szdid)) {
+					list.add(cb.like(root.get("szd").get("id").as(String.class), "%" + szdid + "%"));
+				} else if (isGET(request)) {
+					String v = (String) CacheSearchCondition.cacheSCmapVal(cacheSCmap, "szdid");
+					if (StringUtils.isNotEmpty(v)) {
+						list.add(cb.like(root.get("szd").get("id").as(String.class), "%" + v + "%"));
+					}
+				}
 
-						if (StringUtils.isNotEmpty(szgkid)) {
-							list.add(cb.like(root.get("szgk").get("id").as(String.class), "%" + szgkid + "%"));
-						} else if (isGET(request)) {
-							String v = (String) CacheSearchCondition.cacheSCmapVal(cacheSCmap, "szgkid");
-							if (StringUtils.isNotEmpty(v)) {
-								list.add(cb.like(root.get("szgk").get("id").as(String.class), "%" + v + "%"));
-							}
-						}
+				if (StringUtils.isNotEmpty(szgkid)) {
+					list.add(cb.like(root.get("szgk").get("id").as(String.class), "%" + szgkid + "%"));
+				} else if (isGET(request)) {
+					String v = (String) CacheSearchCondition.cacheSCmapVal(cacheSCmap, "szgkid");
+					if (StringUtils.isNotEmpty(v)) {
+						list.add(cb.like(root.get("szgk").get("id").as(String.class), "%" + v + "%"));
+					}
+				}
 
-						if (StringUtils.isNotEmpty(szgqid)) {
-							list.add(cb.like(root.get("szgq").get("id").as(String.class), "%" + szgqid + "%"));
-						} else if (isGET(request)) {
-							String v = (String) CacheSearchCondition.cacheSCmapVal(cacheSCmap, "szgqid");
-							if (StringUtils.isNotEmpty(v)) {
-								list.add(cb.like(root.get("szgq").get("id").as(String.class), "%" + v + "%"));
-							}
-						}
+				if (StringUtils.isNotEmpty(szgqid)) {
+					list.add(cb.like(root.get("szgq").get("id").as(String.class), "%" + szgqid + "%"));
+				} else if (isGET(request)) {
+					String v = (String) CacheSearchCondition.cacheSCmapVal(cacheSCmap, "szgqid");
+					if (StringUtils.isNotEmpty(v)) {
+						list.add(cb.like(root.get("szgq").get("id").as(String.class), "%" + v + "%"));
+					}
+				}
 
-						if (StringUtils.isNotEmpty(zypmc)) {
-							list.add(cb.like(root.get("zypmc").as(String.class), "%" + zypmc + "%"));
-						} else if (isGET(request)) {
-							String v = (String) CacheSearchCondition.cacheSCmapVal(cacheSCmap, "zypmc");
-							if (StringUtils.isNotEmpty(v)) {
-								list.add(cb.like(root.get("zypmc").as(String.class), "%" + v + "%"));
-							}
-						}
+				if (StringUtils.isNotEmpty(zypmc)) {
+					list.add(cb.like(root.get("zypmc").as(String.class), "%" + zypmc + "%"));
+				} else if (isGET(request)) {
+					String v = (String) CacheSearchCondition.cacheSCmapVal(cacheSCmap, "zypmc");
+					if (StringUtils.isNotEmpty(v)) {
+						list.add(cb.like(root.get("zypmc").as(String.class), "%" + v + "%"));
+					}
+				}
 
-						if (StringUtils.isNotEmpty(dydlid)) {
-							list.add(cb.equal(root.get("hwzl").get("id").as(String.class), dydlid));
-						} else if (isGET(request)) {
+				if (StringUtils.isNotEmpty(dydlid)) {
+					list.add(cb.equal(root.get("hwzl").get("id").as(String.class), dydlid));
+				} else if (isGET(request)) {
 
-							CacheSearchCondition.predicateList(list, cacheSCmap, root, cb, "id", "hwzl", "dydlid");
-						}
+					CacheSearchCondition.predicateList(list, cacheSCmap, root, cb, "id", "hwzl", "dydlid");
+				}
 
-						if (StringUtils.isNotEmpty(shzt)) {
-							list.add(cb.like(root.get("shzt").as(String.class), "%" + shzt + "%"));
-						} else if (isGET(request)) {
-							String v = (String) CacheSearchCondition.cacheSCmapVal(cacheSCmap, "shzt");
-							if (StringUtils.isNotEmpty(v)) {
-								list.add(cb.like(root.get("shzt").as(String.class), "%" + v + "%"));
-							}
-						}
+				if (StringUtils.isNotEmpty(shzt)) {
+					list.add(cb.like(root.get("shzt").as(String.class), "%" + shzt + "%"));
+				} else if (isGET(request)) {
+					String v = (String) CacheSearchCondition.cacheSCmapVal(cacheSCmap, "shzt");
+					if (StringUtils.isNotEmpty(v)) {
+						list.add(cb.like(root.get("shzt").as(String.class), "%" + v + "%"));
+					}
+				}
 
-						if (null != zysjq && !"".equals(zysjq)) {
-							list.add(cb.greaterThanOrEqualTo(root.get("zysjq").as(Date.class), zysjq));
-							/*
-							 * if (StringUtils.isNotEmpty(new
-							 * SimpleDateFormat("yyyy-MM-dd").format(zysjq))) { } else
-							 * if (isGET(request)) { String v = (String)
-							 * CacheSearchCondition.cacheSCmapVal(cacheSCmap, "zysjq");
-							 * if (StringUtils.isNotEmpty(new
-							 * SimpleDateFormat("yyyy-MM-dd").format(v))) {
-							 * list.add(cb.equal(root.get("zysjq").as(Date.class), v));
-							 * } }
-							 */
-						} else {
-							String v = (String) CacheSearchCondition.cacheSCmapVal(cacheSCmap, "zysjq");
-							if (!StringUtils.isEmpty(v)) {
-								try {
-									Date d = new SimpleDateFormat("yyyy-MM-dd").parse(v);
-									list.add(cb.greaterThanOrEqualTo(root.get("zysjq").as(Date.class), d));
-								} catch (ParseException e) {
-									// TODO Auto-generated catch block
-									e.printStackTrace();
-								}
-							}
+				if (null != zysjq_start && !"".equals(zysjq_start)) {
+					list.add(cb.greaterThanOrEqualTo(root.get("zysjq").as(Date.class), zysjq_start));
+					/*
+					 * if (StringUtils.isNotEmpty(new
+					 * SimpleDateFormat("yyyy-MM-dd").format(zysjq))) { } else
+					 * if (isGET(request)) { String v = (String)
+					 * CacheSearchCondition.cacheSCmapVal(cacheSCmap, "zysjq");
+					 * if (StringUtils.isNotEmpty(new
+					 * SimpleDateFormat("yyyy-MM-dd").format(v))) {
+					 * list.add(cb.equal(root.get("zysjq").as(Date.class), v));
+					 * } }
+					 */
+				} else {
+					String v = (String) CacheSearchCondition.cacheSCmapVal(cacheSCmap, "zysjq_start");
+					if (!StringUtils.isEmpty(v)) {
+						try {
+							Date d = new SimpleDateFormat("yyyy-MM-dd").parse(v);
+							list.add(cb.greaterThanOrEqualTo(root.get("zysjq").as(Date.class), d));
+						} catch (ParseException e) {
+							// TODO Auto-generated catch block
+							e.printStackTrace();
 						}
-						if (null != zysjz && !"".equals(zysjz)) {
-							list.add(cb.lessThanOrEqualTo(root.get("zysjz").as(Date.class), zysjz));
-							/*
-							 * if (StringUtils.isNotEmpty(new
-							 * SimpleDateFormat("yyyy-MM-dd").format(zysjz))) { } else
-							 * if (isGET(request)) { String v = (String)
-							 * CacheSearchCondition.cacheSCmapVal(cacheSCmap, "zysjz");
-							 * if (StringUtils.isNotEmpty(v)) {
-							 * list.add(cb.lessThanOrEqualTo
-							 * (root.get("zysjz").as(Date.class), new
-							 * SimpleDateFormat("yyyy-MM-dd").parse(v))); } }
-							 */
-						} else {
-							String v = (String) CacheSearchCondition.cacheSCmapVal(cacheSCmap, "zysjz");
-							if (!StringUtils.isEmpty(v)) {
-								try {
-									Date d = new SimpleDateFormat("yyyy-MM-dd").parse(v);
-									list.add(cb.lessThanOrEqualTo(root.get("zysjz").as(Date.class), d));
-								} catch (ParseException e) {
-									e.printStackTrace();
-								}
-							}
+					}
+				}
+				if (null != zysjq_end && !"".equals(zysjq_end)) {
+					list.add(cb.lessThanOrEqualTo(root.get("zysjq").as(Date.class), zysjq_end));
+					/*
+					 * if (StringUtils.isNotEmpty(new
+					 * SimpleDateFormat("yyyy-MM-dd").format(zysjz))) { } else
+					 * if (isGET(request)) { String v = (String)
+					 * CacheSearchCondition.cacheSCmapVal(cacheSCmap, "zysjz");
+					 * if (StringUtils.isNotEmpty(v)) {
+					 * list.add(cb.lessThanOrEqualTo
+					 * (root.get("zysjz").as(Date.class), new
+					 * SimpleDateFormat("yyyy-MM-dd").parse(v))); } }
+					 */
+				} else {
+					String v = (String) CacheSearchCondition.cacheSCmapVal(cacheSCmap, "zysjq_end");
+					if (!StringUtils.isEmpty(v)) {
+						try {
+							Date d = new SimpleDateFormat("yyyy-MM-dd").parse(v);
+							list.add(cb.lessThanOrEqualTo(root.get("zysjz").as(Date.class), d));
+						} catch (ParseException e) {
+							e.printStackTrace();
 						}
-						// 经营人只能查看自己企业下的数据,非经营人只能查看自己所在地的数据
-						if (isJyr()) {
-							list.add(cb.like(root.get("ssjyr").get("id").as(String.class), "%" + getSsjyr().getId() + "%"));
-						} else {
-							In<String> in = cb.in(root.get("szgq").get("id").as(String.class));
-							@SuppressWarnings("unchecked")
-							List<String> gqlist = (List<String>) Utils.getSession().getAttribute("gqList");
-							if (gqlist != null && gqlist.size() > 0) {
-								for (int i = 0; i < gqlist.size(); i++) {
-									in.value(gqlist.get(i));
-								}
-								list.add(in);
-							}
-							list.add(cb.notEqual(root.get("recordStatus").as(Integer.class), BaseEntity.RECORD_STATE_VALID));
+					}
+				}
+				
+				if (null != zysjz_start && !"".equals(zysjz_start)) {
+					list.add(cb.greaterThanOrEqualTo(root.get("zysjz").as(Date.class), zysjz_start));
+					/*
+					 * if (StringUtils.isNotEmpty(new
+					 * SimpleDateFormat("yyyy-MM-dd").format(zysjq))) { } else
+					 * if (isGET(request)) { String v = (String)
+					 * CacheSearchCondition.cacheSCmapVal(cacheSCmap, "zysjq");
+					 * if (StringUtils.isNotEmpty(new
+					 * SimpleDateFormat("yyyy-MM-dd").format(v))) {
+					 * list.add(cb.equal(root.get("zysjq").as(Date.class), v));
+					 * } }
+					 */
+				} else {
+					String v = (String) CacheSearchCondition.cacheSCmapVal(cacheSCmap, "zysjz_start");
+					if (!StringUtils.isEmpty(v)) {
+						try {
+							Date d = new SimpleDateFormat("yyyy-MM-dd").parse(v);
+							list.add(cb.greaterThanOrEqualTo(root.get("zysjq").as(Date.class), d));
+						} catch (ParseException e) {
+							// TODO Auto-generated catch block
+							e.printStackTrace();
 						}
-						list.add(cb.notEqual(root.get("recordStatus").as(Integer.class), BaseEntity.RECORD_STATE_DELETE));
-						list.add(cb.notEqual(root.get("recordStatus").as(Integer.class), BaseEntity.RECORE_STATE_COPY));
-						return cb.and(list.toArray(new Predicate[] {}));
 					}
-				};
-				String user1 = (String) Utils.getSession().getAttribute("userpre");
-				String user2 = SecUtils.getCurrUser().getId();
-				if (user2 != null) {
-					if (!user2.equals(user1)) {
-						SearchCondition.dcsbpage = 1;
-						SearchCondition.dcsbjyr = "";
-						SearchCondition.dcsbszd = "";
-						SearchCondition.dcsbszgk = "";
-						SearchCondition.dcsbszgq = "";
-						SearchCondition.dcsbzypmc = "";
-						SearchCondition.dcsbhwzl = "";
-						SearchCondition.dcsbshzt = "";
-						SearchCondition.dcsbzysjq = null;
-						SearchCondition.dcsbzysjz = null;
+				}
+				if (null != zysjz_end && !"".equals(zysjz_end)) {
+					list.add(cb.lessThanOrEqualTo(root.get("zysjz").as(Date.class), zysjz_end));
+					/*
+					 * if (StringUtils.isNotEmpty(new
+					 * SimpleDateFormat("yyyy-MM-dd").format(zysjz))) { } else
+					 * if (isGET(request)) { String v = (String)
+					 * CacheSearchCondition.cacheSCmapVal(cacheSCmap, "zysjz");
+					 * if (StringUtils.isNotEmpty(v)) {
+					 * list.add(cb.lessThanOrEqualTo
+					 * (root.get("zysjz").as(Date.class), new
+					 * SimpleDateFormat("yyyy-MM-dd").parse(v))); } }
+					 */
+				} else {
+					String v = (String) CacheSearchCondition.cacheSCmapVal(cacheSCmap, "zysjz_end");
+					if (!StringUtils.isEmpty(v)) {
+						try {
+							Date d = new SimpleDateFormat("yyyy-MM-dd").parse(v);
+							list.add(cb.lessThanOrEqualTo(root.get("zysjz").as(Date.class), d));
+						} catch (ParseException e) {
+							e.printStackTrace();
+						}
 					}
 				}
-				Utils.getSession().setAttribute("userpre", user2);
+				// 经营人只能查看自己企业下的数据,非经营人只能查看自己所在地的数据
+				if (isJyr()) {
+					list.add(cb.like(root.get("ssjyr").get("id").as(String.class), "%" + getSsjyr().getId() + "%"));
+				} else {
+					In<String> in = cb.in(root.get("szgq").get("id").as(String.class));
+					@SuppressWarnings("unchecked")
+					List<String> gqlist = (List<String>) Utils.getSession().getAttribute("gqList");
+					if (gqlist != null && gqlist.size() > 0) {
+						for (int i = 0; i < gqlist.size(); i++) {
+							in.value(gqlist.get(i));
+						}
+						list.add(in);
+					}
+					list.add(cb.notEqual(root.get("recordStatus").as(Integer.class), BaseEntity.RECORD_STATE_VALID));
+				}
+				list.add(cb.notEqual(root.get("recordStatus").as(Integer.class), BaseEntity.RECORD_STATE_DELETE));
+				list.add(cb.notEqual(root.get("recordStatus").as(Integer.class), BaseEntity.RECORE_STATE_COPY));
+				return cb.and(list.toArray(new Predicate[] {}));
+			}
+		};
+		String user1 = (String) Utils.getSession().getAttribute("userpre");
+		String user2 = SecUtils.getCurrUser().getId();
+		if (user2 != null) {
+			if (!user2.equals(user1)) {
+				SearchCondition.dcsbpage = 1;
+				SearchCondition.dcsbjyr = "";
+				SearchCondition.dcsbszd = "";
+				SearchCondition.dcsbszgk = "";
+				SearchCondition.dcsbszgq = "";
+				SearchCondition.dcsbzypmc = "";
+				SearchCondition.dcsbhwzl = "";
+				SearchCondition.dcsbshzt = "";
+				SearchCondition.dcsbzysjq = null;
+				SearchCondition.dcsbzysjz = null;
+			}
+		}
+		Utils.getSession().setAttribute("userpre", user2);
 
-				
-				List<DcsbEntity> list = query.findAll(spec,DcsbEntity.class);
+		List<DcsbEntity> list = query.findAll(spec,DcsbEntity.class);
 				List<DcsbVo> voList = new ArrayList<DcsbVo>();
 				for (DcsbEntity entity : list) {
 					DcsbVo vo = new DcsbVo();