123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273 |
- 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 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.common.Constants;
- import com.xt.jygl.common.GlobalData;
- import com.xt.jygl.gkjcxx.ax.client.AxWebService;
- import com.xt.jygl.gkjcxx.ax.dao.AxDao;
- import com.xt.jygl.gkjcxx.ax.entity.AxEntity;
- import com.xt.jygl.gkjcxx.ax.service.AxService;
- import com.xt.jygl.gkjcxx.ax.vo.AxVo;
- import com.xt.jygl.gkjcxx.gk.entity.GkEntity;
- import com.xt.jygl.gkjcxx.gq.entity.GqEntity;
- import com.xt.jygl.gkjcxx.gq.service.GqService;
- import com.xt.jygl.gkjygl.gkjyr.jyrjbxx.entity.GkjyrEntity;
- import com.xtframe.core.base.ctl.WebJsonResult;
- import com.xtframe.sec.code.entity.CodeEntity;
- import com.xtframe.sec.common.BaseEntity;
- import com.xtframe.sec.common.QueryService;
- import com.xtframe.sec.common.SimplePageRequest;
- import com.xtframe.util.StringUtils;
- import net.sf.json.JSONArray;
- /**
- * 岸线信息查询
- */
- @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;
- @Autowired
- private AxService axService;
- @Autowired
- private GqService gqService;
- /**
- * 根据条件查询岸线信息
- */
- @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<AxEntity> spec = new Specification<AxEntity>() {
- // 查询条件
- @Override
- public Predicate toPredicate(Root<AxEntity> root, CriteriaQuery<?> query, CriteriaBuilder cb) {
- List<Predicate> list = new ArrayList<Predicate>();
- 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<AxEntity> list = query.findAll(spec, toPageRequest(page), AxEntity.class);
- //List<AxEntity> axlist = query.findAll(spec, AxEntity.class);
- List<AxVo> voList = new ArrayList<AxVo>();
- 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();
- }
- @Override
- public String save(AxEntity code, String szdid, String szgkid, String szgqid, String ssjyrid, String axlxid, String axgnid, String lyztid, String nbaid) {
- // how:如果是新增直接保存,如果更新,先取出数据库中记录,然后更新页面传过来的字段
- // why:这样的话一些在前台无需显示的字段保证不会丢失,同时一个个字段设置有助于bug排查
- WebJsonResult wr = success();
- if (!this.checkUser()){
- wr.setSuccess(false);
- wr.setMessage(BaseWebCtl.NOLOGIN);
- return Object2JsonStr(wr);
- }
- // 必填字段的后台验证
- if (StringUtils.isEmpty(szdid)) {
- wr.setSuccess(false);
- wr.setMessage("请选择所在地");
- return Object2JsonStr(wr);
- }
- if (StringUtils.isEmpty(szgkid)) {
- wr.setSuccess(false);
- wr.setMessage("请选择所在港口");
- return Object2JsonStr(wr);
- }
- if (StringUtils.isEmpty(szgqid)) {
- wr.setSuccess(false);
- wr.setMessage("请选择所在港区");
- return Object2JsonStr(wr);
- }
- if (StringUtils.isEmpty(ssjyrid)) {
- wr.setSuccess(false);
- wr.setMessage("请选择所属经营人");
- return Object2JsonStr(wr);
- }
- AxEntity axEntity = new AxEntity();
- try {
- if (!StringUtils.isEmpty(code.getId())) {
- // 修改
- axEntity = axService.findOne(code.getId());
- axEntity.setTbzt(Constants.NO);
- }
- axEntity.setAxcd(code.getAxcd());
- axEntity.setAxmc(code.getAxmc());
- GkEntity szgk = new GkEntity();
- szgk.setId(szgkid);
- axEntity.setSzgk(szgk);
- GqEntity szgq = new GqEntity();
- szgq.setId(szgqid);
- axEntity.setSzgq(szgq);
- GkjyrEntity ssjyr = new GkjyrEntity();
- ssjyr.setId(ssjyrid);
- axEntity.setSsjyr(ssjyr);
- // 非必填字段的验证,如为空则不验证,不为空则验证
- if (!StringUtils.isEmpty(axlxid)) {
- CodeEntity axlx = new CodeEntity(axlxid);
- axEntity.setAxlx(axlx);
- }
- if (!StringUtils.isEmpty(axgnid)) {
- CodeEntity axgn = new CodeEntity(axgnid);
- axEntity.setAxgn(axgn);
- }
- if (!StringUtils.isEmpty(lyztid)) {
- CodeEntity lyzt = new CodeEntity(lyztid);
- axEntity.setLyzt(lyzt);
- }
- if (!StringUtils.isEmpty(nbaid)) {
- CodeEntity nba = new CodeEntity(nbaid);
- axEntity.setNba(nba);
- }
- axEntity.setZyid(code.getZyid());
- axEntity.setJzrq(code.getJzrq());
- axEntity.setAxcd(code.getAxcd());
- axEntity.setQdzb(code.getQdzb());
- axEntity.setZdzb(code.getZdzb());
- axEntity.setAxpb(code.getAxpb());
- axEntity.setBz(code.getBz());
- axEntity.setWaterarea(code.getWaterarea());
- axEntity.setLandarea(code.getLandarea());
- axEntity.setLinelength(code.getLinelength());
- axEntity.setQdzby(code.getQdzby());
- axEntity.setZdzby(code.getZdzby());
- axEntity.setAxwzms(code.getAxwzms());
- GqEntity gq = gqService.findOne(szgqid);
- axEntity.setSsgkglbm(gq != null ? gq.getSsgkglbm() : null);
- CodeEntity szd = new CodeEntity(szdid);
- axEntity.setSzd(szd);
- axService.save(axEntity);
-
- } catch (Exception e) {
- wr.setSuccess(false);
- wr.setMessage("操作失败!");
- e.printStackTrace();
- }
- return Object2JsonStr(wr);
- }
- @Override
- public String delete(String id) {
- WebJsonResult wr = success();
- if (!this.checkUser()){
- wr.setSuccess(false);
- wr.setMessage(BaseWebCtl.NOLOGIN);
- return Object2JsonStr(wr);
- }
- try {
- // 逻辑删除
- axService.logicDelete(id);
- // 如果是市级删除,省级也删除
- AxEntity ax = axService.findOne(id);
- try {
- if (GlobalData.DEPLOY_MODE.equals(Constants.DEPLOY_MODE_CITY) && needWS()) {
- AxWebService webService = axService.getWebService(null);
- webService.delete(id);
- ax.setTbzt(Constants.NO);
- axService.save(ax);
- }
- } catch (Exception e) {
- ax.setTbzt(Constants.NO);
- axService.save(ax);
- }
- } catch (Exception e) {
- wr.setSuccess(false);
- wr.setMessage("操作失败!");
- e.printStackTrace();
- }
- return Object2JsonStr(wr);
- }
- }
|