package com.cxfws.gkjcxx.service.impl; import java.util.ArrayList; import java.util.List; import javax.jws.WebMethod; import javax.jws.WebResult; import javax.jws.WebService; import javax.persistence.criteria.CriteriaBuilder; import javax.persistence.criteria.CriteriaQuery; import javax.persistence.criteria.Predicate; import javax.persistence.criteria.Root; import net.sf.json.JSONArray; import net.sf.json.JSONObject; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Page; import org.springframework.data.jpa.domain.Specification; import org.springframework.stereotype.Service; import com.cxfws.gkjcxx.service.IAxxxService; import com.xt.jygl.common.BaseWebCtl; import com.xt.jygl.gkjcxx.ax.dao.AxDao; import com.xt.jygl.gkjcxx.ax.entity.AxEntity; import com.xt.jygl.gkjcxx.ax.vo.AxVo; import com.xtframe.sec.common.BaseEntity; import com.xtframe.sec.common.QueryService; import com.xtframe.sec.common.SimplePageRequest; import com.xtframe.util.StringUtils; import cache.CacheSearchCondition; /** * 岸线信息查询 */ @Service("axWebService") @WebService(targetNamespace = "http://service.web.jsjty.com/", portName = "axWebServicePort", serviceName = "axWebService") public class AxxxService extends BaseWebCtl implements IAxxxService{ @Autowired private QueryService query; @Autowired private AxDao dao; /** * 根据条件查询岸线信息 */ @Override @WebMethod(operationName = "findAx", action = "http://service.web.jsjty.com/findAx") @WebResult(name = "result", targetNamespace = "http://service.web.jsjty.com/") public String findAx(int pages,int rows, final String szdid, final String szgkid, final String szgqid, final String axmc, final String lyztid, final String ssjyr) { if (!this.checkUser()){ return BaseWebCtl.NOLOGIN; } SimplePageRequest page = new SimplePageRequest(pages, rows); Specification spec = new Specification() { // 查询条件 @Override public Predicate toPredicate(Root root, CriteriaQuery query, CriteriaBuilder cb) { List list = new ArrayList(); if (StringUtils.isNotEmpty(axmc)) { list.add(cb.like(root.get("axmc").as(String.class), "%" + axmc + "%")); } if (StringUtils.isNotEmpty(szdid)) { list.add(cb.like(root.get("szd").get("id").as(String.class), "%" + szdid + "%")); } if (StringUtils.isNotEmpty(szgkid)) { list.add(cb.like(root.get("szgk").get("id").as(String.class), "%" + szgkid + "%")); } if (StringUtils.isNotEmpty(szgqid)) { list.add(cb.like(root.get("szgq").get("id").as(String.class), "%" + szgqid + "%")); } if (StringUtils.isNotEmpty(ssjyr)) { list.add(cb.like(root.get("ssjyr").get("gkjyr").as(String.class), "%" + ssjyr + "%")); } if (StringUtils.isNotEmpty(lyztid)) { list.add(cb.like(root.get("lyzt").get("id").as(String.class), "%" + lyztid + "%")); } 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[] {})); } }; if (page.getPage() < 1) { // Object axpage = CacheSearchCondition.cacheSCmapVal(cacheSCmap, "axpage"); // if (StringUtils.isEmpty(axpage) || !org.apache.commons.lang.StringUtils.isNumeric(String.valueOf(axpage))) { // axpage = "1"; // } page.setPage(1); } page.setSort("id"); page.setOrder("desc"); Page list = query.findAll(spec, toPageRequest(page), AxEntity.class); //List axlist = query.findAll(spec, AxEntity.class); List voList = new ArrayList(); for (AxEntity entity : list) { AxVo vo = new AxVo(); if (null != entity) { BeanUtils.copyProperties(entity, vo); vo.setSzdzw(entity.getSzd() != null ? entity.getSzd().getText() : ""); vo.setSzgqzw(entity.getSzgq() != null ? entity.getSzgq().getGqmc() : ""); vo.setSzgkzw(entity.getSzgk() != null ? entity.getSzgk().getGkmc() : ""); vo.setSsjyrzw(entity.getSsjyr() != null ? entity.getSsjyr().getGkjyr() : ""); vo.setAxlxzw(entity.getAxlx() != null ? entity.getAxlx().getText() : ""); vo.setAxgnzw(entity.getAxgn() != null ? entity.getAxgn().getText() : ""); vo.setLyztzw(entity.getLyzt() != null ? entity.getLyzt().getText() : ""); vo.setNbazw(entity.getNba() != null?entity.getNba().getText() : ""); vo.setSzd(entity.getSzd() != null ? entity.getSzd().getId() : ""); vo.setSzgq(entity.getSzgq() != null ? entity.getSzgq().getId() : ""); vo.setSzgk(entity.getSzgk() != null ? entity.getSzgk().getId() : ""); vo.setSsjyr(entity.getSsjyr() != null ? entity.getSsjyr().getId() : ""); vo.setAxlx(entity.getAxlx() != null ? entity.getAxlx().getId() : ""); vo.setAxgn(entity.getAxgn() != null ? entity.getAxgn().getId() : ""); vo.setLyzt(entity.getLyzt() != null ? entity.getLyzt().getId() : ""); vo.setNba(entity.getNba() != null?entity.getNba().getId() : ""); voList.add(vo); } } return JSONArray.fromObject(voList).toString(); } /** * 根据id查询岸线信息 */ @Override public String findOne(String id) { AxEntity ax = dao.findOne(id); JSONArray jsons=JSONArray.fromObject(ax); return jsons.toString(); } }