From 73b750200f25df08aa64124da49e7461f9de6653 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期五, 13 十二月 2024 15:09:49 +0800 Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/NTTravel --- ManagementNTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TOpenCityController.java | 114 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 109 insertions(+), 5 deletions(-) diff --git a/ManagementNTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TOpenCityController.java b/ManagementNTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TOpenCityController.java index 04e08e9..e6ea708 100644 --- a/ManagementNTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TOpenCityController.java +++ b/ManagementNTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TOpenCityController.java @@ -10,7 +10,9 @@ import com.stylefeng.guns.core.shiro.ShiroKit; import com.stylefeng.guns.core.util.DateUtil; import com.stylefeng.guns.core.util.SinataUtil; +import com.stylefeng.guns.modular.system.dao.TOpenCitySiteMapper; import com.stylefeng.guns.modular.system.model.TOpenCityBusiness; +import com.stylefeng.guns.modular.system.model.TOpenCitySite; import com.stylefeng.guns.modular.system.model.TRegion; import com.stylefeng.guns.modular.system.service.ITOpenCityBusinessService; import com.stylefeng.guns.modular.system.service.ITRegionService; @@ -26,10 +28,13 @@ import com.stylefeng.guns.modular.system.model.TOpenCity; import com.stylefeng.guns.modular.system.service.ITOpenCityService; +import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Map; +import java.util.regex.Matcher; +import java.util.regex.Pattern; /** * 城市管理控制器 @@ -51,7 +56,8 @@ @Autowired private ITOpenCityBusinessService tOpenCityBusinessService; - + @Autowired + private TOpenCitySiteMapper tOpenCitySiteMapper; /** * 跳转到城市管理首页 */ @@ -78,7 +84,6 @@ TOpenCity tOpenCity = tOpenCityService.selectById(tOpenCityId); model.addAttribute("item",tOpenCity); LogObjectHolder.me().set(tOpenCity); - //省 List<TRegion> provinceList = tRegionService.selectList(new EntityWrapper<TRegion>().eq("parent_id", 0)); model.addAttribute("provinceList",provinceList); @@ -91,6 +96,16 @@ //经营业务 List<Map<String,Object>> businessList = tOpenCityService.getBusinessByCityId(tOpenCityId); model.addAttribute("businessList",businessList); + // 机场/动车站点 + List<TOpenCitySite> siteList = tOpenCitySiteMapper.selectList(new EntityWrapper<TOpenCitySite>() + .eq("openCityId", tOpenCityId) + .ne("flag",3)); + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy.MM.dd"); + for (TOpenCitySite openCitySite : siteList) { + String format = simpleDateFormat.format(openCitySite.getInsertTime()); + openCitySite.setInsertTime1(format); + } + model.addAttribute("siteList",siteList); return PREFIX + "tOpenCity_edit.html"; } @@ -127,7 +142,10 @@ */ @RequestMapping(value = "/add") @ResponseBody - public Object add(TOpenCity tOpenCity,@RequestParam String businessTypeStr,Integer areaId,Integer cityId,Integer provinceId) { + public Object add(TOpenCity tOpenCity,@RequestParam String businessTypeStr, + String sites, + Integer areaId,Integer cityId, + Integer provinceId) { //获取code if (SinataUtil.isNotEmpty(areaId)){ TRegion area = tRegionService.selectById(areaId); @@ -163,6 +181,35 @@ //添加经营业务 testJSONStrToJSONArray(businessTypeStr,tOpenCity.getId()); + // 添加机场/动车站点 + JSONArray jsonArray = JSON.parseArray(sites); + int size = jsonArray.size(); + for (int i = 0; i < size; i++){ + JSONObject jsonObject = jsonArray.getJSONObject(i); + TOpenCitySite openCitySite = new TOpenCitySite(); + openCitySite.setOpenCityId(tOpenCity.getId()); + String string = jsonObject.getString("lonAndLat"); + // 去除转义符 + String unescaped = string.replaceAll("& #40;", "(").replaceAll("& #41;", ")"); + // 提取括号中的内容 + Pattern pattern = Pattern.compile("\\(([^)]+)\\)"); + Matcher matcher = pattern.matcher(unescaped); + if (matcher.find()) { + String lonAndLat = matcher.group(1); + System.out.println("括号中的内容: " + lonAndLat); + // 使用逗号分割字符串 + String[] parts = lonAndLat.split(","); + // 提取需要的部分 + String lon = parts[0]; + String lat = parts[1]; + openCitySite.setLon(lon); + openCitySite.setLat(lat); + } + openCitySite.setFlag(1); + openCitySite.setName(jsonObject.getString("name")); + openCitySite.setInsertTime(DateUtil.parse(jsonObject.getString("time")+" 00:00:00","yyyy-MM-dd HH:mm:ss")); + tOpenCitySiteMapper.insert(openCitySite); + } return SUCCESS_TIP; } @@ -188,7 +235,7 @@ businessType = 1; }else if ("出租车".equals(type)){ businessType = 2; - }else if ("直通车".equals(type)){ + }else if ("跨城".equals(type)){ businessType = 3; }else if ("跨城小件物流".equals(type)){ businessType = 4; @@ -196,6 +243,8 @@ businessType = 5; }else if ("包车".equals(type)){ businessType = 6; + }else if ("接送机".equals(type)){ + businessType = 7; } business.setBusinessType(businessType); business.setSort(jsonObject.getInteger("sort")); @@ -224,7 +273,7 @@ */ @RequestMapping(value = "/update") @ResponseBody - public Object update(TOpenCity tOpenCity,@RequestParam String businessTypeStr,Integer areaId,Integer cityId,Integer provinceId) { + public Object update(TOpenCity tOpenCity,@RequestParam String businessTypeStr,Integer areaId,Integer cityId,Integer provinceId,String sites) { if (SinataUtil.isNotEmpty(areaId)){ TRegion area = tRegionService.selectById(areaId); tOpenCity.setCode(area.getCode()); @@ -279,6 +328,61 @@ tOpenCityBusinessService.update(business,new EntityWrapper<TOpenCityBusiness>().eq("openCityId",tOpenCity.getId())); //添加经营业务 testJSONStrToJSONArray(businessTypeStr,tOpenCity.getId()); +// TOpenCitySite openCitySite = new TOpenCitySite(); +// // 删除站点 +// tOpenCitySiteMapper.update(openCitySite,new EntityWrapper<TOpenCitySite>().eq("openCityId",tOpenCity.getId())); + List<TOpenCitySite> openCityId = tOpenCitySiteMapper.selectList(new EntityWrapper<TOpenCitySite>() + .eq("openCityId", tOpenCity.getId())); + for (TOpenCitySite openCitySite : openCityId) { + openCitySite.setFlag(3); + tOpenCitySiteMapper.updateById(openCitySite); + } + // 添加站点 + // 添加机场/动车站点 + JSONArray jsonArray = JSON.parseArray(sites); + int size = jsonArray.size(); + for (int i = 0; i < size; i++){ + JSONObject jsonObject = jsonArray.getJSONObject(i); + String string = jsonObject.getString("lonAndLat"); + // 去除转义符 + String unescaped = string.replaceAll("& #40;", "(").replaceAll("& #41;", ")"); + // 提取括号中的内容 + Pattern pattern = Pattern.compile("\\(([^)]+)\\)"); + Matcher matcher = pattern.matcher(unescaped); + String lon = ""; + String lat = ""; + if (matcher.find()) { + String lonAndLat = matcher.group(1); + System.out.println("括号中的内容: " + lonAndLat); + // 使用逗号分割字符串 + String[] parts = lonAndLat.split(","); + // 提取需要的部分 + lon = parts[0]; + lat = parts[1]; + } + if (SinataUtil.isNotEmpty(jsonObject.getInteger("busId")) && jsonObject.getInteger("busId") != 0){ + // 修改 + TOpenCitySite openCitySite1 = tOpenCitySiteMapper.selectById(jsonObject.getInteger("busId")); + openCitySite1.setLon(lon); + openCitySite1.setLat(lat); + openCitySite1.setName(jsonObject.getString("name")); + openCitySite1.setFlag(2); + openCitySite1.setType(jsonObject.getInteger("siteType")); + tOpenCitySiteMapper.updateById(openCitySite1); + }else{ + // 新增 + TOpenCitySite openCitySite3 = new TOpenCitySite(); + openCitySite3.setOpenCityId(tOpenCity.getId()); + openCitySite3.setLon(lon); + openCitySite3.setLat(lat); + openCitySite3.setFlag(1); + openCitySite3.setName(jsonObject.getString("name")); + openCitySite3.setType(jsonObject.getInteger("siteType")); + openCitySite3.setInsertTime(DateUtil.parse(jsonObject.getString("time")+" 00:00:00","yyyy-MM-dd HH:mm:ss")); + tOpenCitySiteMapper.insert(openCitySite3); + } + + } return SUCCESS_TIP; } -- Gitblit v1.7.1