From ed8c7a5effd0d423ce1118b680ecdca6fe732609 Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期三, 02 七月 2025 16:43:13 +0800 Subject: [PATCH] Merge branch 'master' of http://192.168.11.205:9000/r/P2022036_Service --- src/main/java/com/lf/server/service/data/PublishService.java | 147 +++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 137 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/lf/server/service/data/PublishService.java b/src/main/java/com/lf/server/service/data/PublishService.java index 906d5af..51febe1 100644 --- a/src/main/java/com/lf/server/service/data/PublishService.java +++ b/src/main/java/com/lf/server/service/data/PublishService.java @@ -7,20 +7,23 @@ import com.lf.server.entity.ctrl.RegisterEntity; import com.lf.server.entity.data.MetaEntity; import com.lf.server.entity.data.PublishEntity; +import com.lf.server.entity.sys.UserEntity; +import com.lf.server.helper.PathHelper; import com.lf.server.helper.RestHelper; import com.lf.server.helper.StringHelper; +import com.lf.server.helper.WebHelper; import com.lf.server.mapper.data.PublishMapper; +import com.lf.server.service.sys.TokenService; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; +import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; +import java.io.File; import java.lang.reflect.Field; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; /** * 鏁版嵁鍙戝竷 @@ -34,26 +37,34 @@ @Value("${sys.iisHost}") private String iisHost; - @Autowired + @Resource PublishMapper publishMapper; - @Autowired + @Resource FmeService fmeService; + + @Resource + PathHelper pathHelper; + + @Resource + TokenService tokenService; private final static Log log = LogFactory.getLog(PublishService.class); @Override - public Integer selectCount(String name) { + public Integer selectCount(String name, String dircode, String type) { name = StringHelper.getLikeUpperStr(name); + dircode = StringHelper.getRightLike(dircode); - return publishMapper.selectCount(name); + return publishMapper.selectCount(name, dircode, type); } @Override - public List<PublishEntity> selectByPage(String name, Integer limit, Integer offset) { + public List<PublishEntity> selectByPage(String name, String dircode, String type, Integer limit, Integer offset) { name = StringHelper.getLikeUpperStr(name); + dircode = StringHelper.getRightLike(dircode); - return publishMapper.selectByPage(name, limit, offset); + return publishMapper.selectByPage(name, dircode, type, limit, offset); } @Override @@ -72,6 +83,11 @@ } @Override + public List<String> selectCodesForDir(String dircode, Integer isDom) { + return publishMapper.selectCodesForDir(dircode, isDom); + } + + @Override public Integer insert(PublishEntity entity) { return publishMapper.insert(entity); } @@ -79,6 +95,11 @@ @Override public Integer inserts(List<PublishEntity> list) { return publishMapper.inserts(list); + } + + @Override + public Integer insertPubDown(Integer pubid, Integer downid, Integer createUser) { + return publishMapper.insertPubDown(pubid, downid, createUser); } @Override @@ -117,6 +138,27 @@ name = StringHelper.getLikeUpperStr(name); return publishMapper.selectMetasByPage(depcode, dircode, verid, types, name, limit, offset); + } + + public List<Integer> selectLasCs(PubEntity entity, String method, HttpServletRequest req) { + Map<String, Object> map = getMapData(entity); + + String str = RestHelper.postForRest(exportServer + method, map); + if (StringHelper.isEmpty(str)) { + return null; + } + + ResponseMsg<String> msg = JSON.parseObject(str, ResponseMsg.class); + if (msg == null || msg.getCode() != StaticData.TWO_HUNDRED) { + return null; + } + + String rs = msg.getResult(); + if (StringHelper.isEmpty(rs)) { + return null; + } + + return StringHelper.strToIntegers(rs); } /** @@ -177,6 +219,11 @@ } for (PublishEntity entity : list) { + // 閬垮厤閲嶅娉ㄥ唽 + if (null != entity.getUpdateTime()) { + continue; + } + String url = entity.getUrl().replace("{host}", iisHost); String type = getServerType(entity); @@ -199,8 +246,14 @@ switch (entity.getType()) { case "DOM": return "TMS鏈嶅姟"; + case "DEM": + return "涓夌淮鍦板舰鏈嶅姟"; case "mpt": return "涓夌淮鍦烘櫙鏈嶅姟"; + case "las": + case "laz": + case "cpt": + return "涓夌淮鐐逛簯鏈嶅姟"; default: return "涓夌淮妯″瀷鏈嶅姟"; } @@ -238,4 +291,78 @@ } } } + + /** + * 鍒犻櫎鍙戝竷鏂囦欢 + */ + public void deleteFiles(List<PublishEntity> list) { + String lfData = pathHelper.getConfig().getLfData(); + for (PublishEntity pub : list) { + if (null != pub.getUrl() && pub.getUrl().contains("/SG/")) { + continue; + } + + String path = lfData + pub.getPath().replace("\\tileset.json", ""); + File file = new File(path); + if (!file.exists() || !file.isDirectory()) { + continue; + } + + String cmd = String.format("cmd /c rd \"%s\" /s /q", path); + WebHelper.exec(cmd); + } + } + + /** + * 鍒犻櫎鍙戝竷鏂囦欢 + */ + public void deleteFiles(List<Integer> ids, HttpServletRequest req) { + PubEntity entity = new PubEntity(); + entity.setIds(ids); + entity.setDircode("00"); + + UserEntity ue = tokenService.getCurrentUser(req); + if (ue != null) { + entity.setUserId(ue.getId()); + entity.setToken(WebHelper.getToken(req)); + } + + long rows = postForPub(entity, "/Convert/DeleteFiles"); + } + + /** + * 鍙戦�佸彂甯冭姹� + */ + public long postForPub(PubEntity entity, String method) { + Map<String, Object> map = getMapData(entity); + + String str = RestHelper.postForRest(exportServer + method, map); + if (StringHelper.isEmpty(str)) { + return 0; + } + + ResponseMsg<String> msg = JSON.parseObject(str, ResponseMsg.class); + if (msg == null || msg.getCode() != StaticData.TWO_HUNDRED) { + return 0; + } + + return msg.getCount(); + } + + /** + * 娴嬭瘯鏌ヨ + */ + public String selectForTest(Integer seconds) { + String str = RestHelper.get(exportServer + "/TB/Wait?seconds=" + seconds); + if (StringHelper.isEmpty(str)) { + return null; + } + + ResponseMsg<String> msg = JSON.parseObject(str, ResponseMsg.class); + if (msg == null || msg.getCode() != StaticData.TWO_HUNDRED) { + return null; + } + + return msg.getResult(); + } } -- Gitblit v1.9.3