From d950bfac44ca8dcdfe91de52fde0fe86e0829753 Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期日, 03 九月 2023 12:03:02 +0800 Subject: [PATCH] 发布表添加新的字段 --- src/main/java/com/moon/server/service/data/ShuJianService.java | 68 ++++++++++++++++++++++++++++----- 1 files changed, 57 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/moon/server/service/data/ShuJianService.java b/src/main/java/com/moon/server/service/data/ShuJianService.java index ae919da..3e61d66 100644 --- a/src/main/java/com/moon/server/service/data/ShuJianService.java +++ b/src/main/java/com/moon/server/service/data/ShuJianService.java @@ -3,6 +3,7 @@ import com.alibaba.fastjson.JSON; import com.moon.server.entity.all.StaticData; import com.moon.server.entity.ctrl.PubEntity; +import com.moon.server.entity.data.MetaPubEntity; import com.moon.server.entity.data.PublishEntity; import com.moon.server.entity.shujian.*; import com.moon.server.helper.HttpHelper; @@ -30,8 +31,6 @@ */ @Service public class ShuJianService { - private final static Log log = LogFactory.getLog(ShuJianService.class); - @Value("${shujian.ak}") private String ak; @@ -40,6 +39,8 @@ @Resource PublishService publishService; + + private final static Log log = LogFactory.getLog(ShuJianService.class); /** * 鍒嗛〉鏌ヨ鏁扮畝鐨勯鑹茶〃 @@ -58,22 +59,26 @@ /** * 鎻掑叆鏁扮畝鏈嶅姟 */ - public Integer insertSjService(PubEntity pubEntity, HttpServletRequest req, HttpServletResponse res) { - CreateLayerEntity layerEntity = createLayerEntity(pubEntity); + public Integer insertSjService(PubEntity pub) { + CreateLayerEntity layerEntity = createLayerEntity(pub); Integer layerId = postLayerEntity(layerEntity); if (null == layerId) { return 0; } - CreateServiceEntity serviceEntity = createServiceEntity(pubEntity); + CreateServiceEntity serviceEntity = createServiceEntity(pub); Integer serviceId = postServiceEntity(serviceEntity); if (null == serviceId) { return 0; } - PublishEntity publishEntity = createPublishEntity(pubEntity, layerId, serviceId); + PublishEntity publishEntity = createPublishEntity(pub, layerId, serviceId); + Integer id = publishService.insert(publishEntity); + if (null == id) { + return id; + } - return publishService.insert(publishEntity); + return insertMetaPub(pub, id); } /** @@ -158,22 +163,64 @@ * 鍒涘缓鍙戝竷瀹炰綋绫� */ public PublishEntity createPublishEntity(PubEntity pub, Integer layerId, Integer serviceId) { - String epsg = (StaticData.I104903 == pub.getEpsgCode() ? "ESRI:" : "EPSG:") + pub.getEpsgCode(); - PublishEntity entity = new PublishEntity(); entity.setType(pub.getType()); entity.setName(pub.getName()); entity.setMin(pub.getMin()); entity.setMax(pub.getMax()); - entity.setBak(epsg); + entity.setBak(getEpsg(pub)); entity.setCreateUser(pub.getUserId()); entity.setDirid(pub.getDircode()); entity.setDepid(pub.getDepcode()); entity.setStatus(3); entity.setLayerid(layerId); entity.setServiceid(serviceId); + entity.setJson(getColorTableJson(pub)); return entity; + } + + /** + * 鑾峰彇EPSG缂栫爜 + */ + public String getEpsg(PubEntity pub) { + if (StaticData.I104903 == pub.getEpsgCode()) { + return "ESRI:" + pub.getEpsgCode(); + } + + return "EPSG:" + pub.getEpsgCode(); + } + + /** + * 鑾峰彇棰滆壊琛ㄧ殑JSON瀛楃涓� + */ + public String getColorTableJson(PubEntity pub) { + if (null == pub.getColorTable() && null == pub.getGradientColorTable()) { + return null; + } + + if (null != pub.getGradientColorTable()) { + return JSON.toJSONString(pub.getGradientColorTable()); + } + + return JSON.toJSONString(pub.getColorTable()); + } + + /** + * 鎻掑叆鍏冩暟鎹彂甯冪被 + */ + private int insertMetaPub(PubEntity pub, Integer pubid) { + int count = 0; + for (Integer metaid : pub.getIds()) { + MetaPubEntity mp = new MetaPubEntity(); + mp.setMetaid(metaid); + mp.setPubid(pubid); + mp.setCreateUser(pub.getUserId()); + + count += publishService.insertMetaPub(mp); + } + + return count; } /** @@ -199,7 +246,6 @@ */ public Integer deletesSjServices(List<Integer> ids) { String strs = StringHelper.join(ids, ","); - List<PublishEntity> list = publishService.selectByIds(strs); if (null == list || list.isEmpty()) { return 0; -- Gitblit v1.9.3