Răsfoiți Sursa

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

ld_liqk 8 ani în urmă
părinte
comite
2aedc11a0a

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

@@ -21,6 +21,7 @@ import org.activiti.engine.ActivitiException;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;
+import org.springframework.data.domain.Sort;
 import org.springframework.data.jpa.domain.Specification;
 import org.springframework.stereotype.Controller;
 import org.springframework.ui.Model;
@@ -107,7 +108,7 @@ public class DcsbCtl extends BaseWebCtl {
 	 */
 	@RequestMapping(value = "/main")
 	// @RequiresPermissions("dcsb:main")
-	public String main(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 {
+	public String main(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>() {
@@ -222,7 +223,7 @@ public class DcsbCtl extends BaseWebCtl {
 						}
 					}
 				}
-				
+
 				if (null != zysjz_start && !"".equals(zysjz_start)) {
 					list.add(cb.greaterThanOrEqualTo(root.get("zysjz").as(Date.class), zysjz_start));
 					/*
@@ -370,10 +371,11 @@ public class DcsbCtl extends BaseWebCtl {
 		putPageInfo(model, page, list);
 		return "gkjygl/cghzyxxgl/dcsb/dcsbmain";
 	}
-	//导出
-	@RequestMapping(value="/exportExcelAll")
+
+	// 导出
+	@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_start,final Date zysjq_end, final String dydlid, final Date zysjz_start, final Date zysjz_end,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>() {
@@ -488,7 +490,7 @@ public class DcsbCtl extends BaseWebCtl {
 						}
 					}
 				}
-				
+
 				if (null != zysjz_start && !"".equals(zysjz_start)) {
 					list.add(cb.greaterThanOrEqualTo(root.get("zysjz").as(Date.class), zysjz_start));
 					/*
@@ -574,50 +576,51 @@ public class DcsbCtl extends BaseWebCtl {
 		}
 		Utils.getSession().setAttribute("userpre", user2);
 
-	
-		List<DcsbEntity> list = query.findAll(spec,DcsbEntity.class);
-				List<DcsbVo> voList = new ArrayList<DcsbVo>();
-				for (DcsbEntity entity : list) {
-					DcsbVo vo = new DcsbVo();
-					if (entity != null) {
-						BeanUtils.copyProperties(entity, vo);
-						vo.setSsjyr(entity.getSsjyr() != null ? entity.getSsjyr().getGkjyr() : "");
-						vo.setSzgk(entity.getSzgk() != null ? entity.getSzgk().getGkmc() : "");
-						vo.setSzgq(entity.getSzgq() != null ? entity.getSzgq().getGqmc() : "");
-						if (entity.getShzt() != null) {
-							vo.setShztzw(securityMgr.codeService().findOne(entity.getShzt()).getText());
-						}
-						if (entity.getHwzl() != null) {
-							vo.setHwzlzw(securityMgr.codeService().findOne(entity.getHwzl().getId()).getText());
-						}
-						if ((dcsbService.getTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), entity.getId().toString()) != null) || dcsbService.getCandidateTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), entity.getId().toString()) != null) {
-							List<TaskInfoEntity> lists = taskInfoService.findByBusIdAndBusKeyAndRecordStatus(entity.getId(), DcsbEntity.PROCESS_DEFINITION_KEY);
-							if (lists != null & lists.size() > 0) {
-								TaskInfoEntity taskinfo = lists.get(0);
-								if ("申请".equals(taskinfo.getCurrName())) {
-									vo.setTaskState("TH");
-								} else {
-									vo.setTaskState(Constants.IS_MY_TASK);
-
-								}
-							}
+		Sort sort = new Sort(Sort.Direction.DESC, "bgsj");
+
+		List<DcsbEntity> list = query.findAll(spec, sort, DcsbEntity.class);
+		List<DcsbVo> voList = new ArrayList<DcsbVo>();
+		for (DcsbEntity entity : list) {
+			DcsbVo vo = new DcsbVo();
+			if (entity != null) {
+				BeanUtils.copyProperties(entity, vo);
+				vo.setSsjyr(entity.getSsjyr() != null ? entity.getSsjyr().getGkjyr() : "");
+				vo.setSzgk(entity.getSzgk() != null ? entity.getSzgk().getGkmc() : "");
+				vo.setSzgq(entity.getSzgq() != null ? entity.getSzgq().getGqmc() : "");
+				if (entity.getShzt() != null) {
+					vo.setShztzw(securityMgr.codeService().findOne(entity.getShzt()).getText());
+				}
+				if (entity.getHwzl() != null) {
+					vo.setHwzlzw(securityMgr.codeService().findOne(entity.getHwzl().getId()).getText());
+				}
+				if ((dcsbService.getTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), entity.getId().toString()) != null) || dcsbService.getCandidateTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), entity.getId().toString()) != null) {
+					List<TaskInfoEntity> lists = taskInfoService.findByBusIdAndBusKeyAndRecordStatus(entity.getId(), DcsbEntity.PROCESS_DEFINITION_KEY);
+					if (lists != null & lists.size() > 0) {
+						TaskInfoEntity taskinfo = lists.get(0);
+						if ("申请".equals(taskinfo.getCurrName())) {
+							vo.setTaskState("TH");
+						} else {
+							vo.setTaskState(Constants.IS_MY_TASK);
 
 						}
-						voList.add(vo);
 					}
+
 				}
-				response.setContentType("application/binary;charset=iso-8859-1");
+				voList.add(vo);
+			}
+		}
+		response.setContentType("application/binary;charset=iso-8859-1");
 		try {
-				ServletOutputStream outputStream = response.getOutputStream();
-				String fileName = new String(("港口单船作业申报").getBytes(), "iso-8859-1");
-				response.setHeader("Content-disposition", "attachment; filename=" + fileName + ".xlsx");// 组装附件名称和格式
-				dcsbService.exportExcelAll(voList, outputStream);
-			} catch (IOException e) {
-					e.printStackTrace();
-			}			
+			ServletOutputStream outputStream = response.getOutputStream();
+			String fileName = new String(("港口单船作业申报").getBytes(), "iso-8859-1");
+			response.setHeader("Content-disposition", "attachment; filename=" + fileName + ".xlsx");// 组装附件名称和格式
+			dcsbService.exportExcelAll(voList, outputStream);
+		} catch (IOException e) {
+			e.printStackTrace();
+		}
 		return null;
 	}
-	
+
 	// 货物种类
 	@RequestMapping(value = "/selectHwzl")
 	@ResponseBody
@@ -737,7 +740,7 @@ public class DcsbCtl extends BaseWebCtl {
 
 	// 修改
 	@RequestMapping(value = "/edit")
-    @RequiresPermissions("dcsb:edit")
+	@RequiresPermissions("dcsb:edit")
 	public String edit(Model model, String id, String flag, String path, String type) {
 		model.addAttribute("flag", flag);
 		model.addAttribute("path", path);
@@ -754,7 +757,7 @@ public class DcsbCtl extends BaseWebCtl {
 
 		return "gkjygl/cghzyxxgl/dcsb/dcsbedit";
 	}
-	
+
 	// 保存
 	@RequestMapping(value = "/save")
 	@ResponseBody

+ 11 - 1
gkjsjy/trunk/src/com/xtframe/sec/common/QueryService.java

@@ -7,13 +7,14 @@ import javax.persistence.Query;
 
 import org.springframework.data.domain.Page;
 import org.springframework.data.domain.Pageable;
+import org.springframework.data.domain.Sort;
 import org.springframework.data.jpa.domain.Specification;
 
 /**
  * 综合查询接口
  * 
  * @author 袁晓冬
- *
+ * 
  */
 public interface QueryService {
 	/**
@@ -36,6 +37,15 @@ public interface QueryService {
 	public <T> List<T> findAll(Specification<T> spec, Class<T> domainClass);
 
 	/**
+	 * 根据条件检索
+	 * 
+	 * @param spec
+	 * @param domainClass
+	 * @return
+	 */
+	public <T> List<T> findAll(Specification<T> spec, Sort sort, Class<T> domainClass);
+
+	/**
 	 * 执行原生sql查询,与dao的同名方法一致
 	 * 
 	 * @param sqlString

+ 4 - 0
gkjsjy/trunk/src/com/xtframe/sec/support/QueryServiceImpl.java

@@ -36,6 +36,10 @@ public class QueryServiceImpl extends BaseSecurityService implements QueryServic
 		return getQuery(spec, (Sort) null, domainClass).getResultList();
 	}
 
+	public <T> List<T> findAll(Specification<T> spec, Sort sort, Class<T> domainClass) {
+		return getQuery(spec, sort, domainClass).getResultList();
+	}
+
 	protected <T> Page<T> readPage(TypedQuery<T> query, Pageable pageable, Specification<T> spec, Class<T> domainClass) {
 
 		query.setFirstResult(pageable.getOffset());