src/main/java/org/springblade/modules/lang/controller/LandController.java
@@ -225,6 +225,61 @@ } /** * 地块详情页面修改地块面积 */ @PostMapping("/updateLandAr") @ApiOperationSupport(order = 5) @ApiOperation(value = "修改", notes = "传入land") public R updateLandAr(@Valid @RequestBody Land land) { String range = land.getLandRange(); //坐标转换 if (null != land.getLandRange() && !land.getLandRange().equals("")) { //替换逗号为空格 String sNull = land.getLandRange().replaceAll(",", " "); //替换分号为逗号 String replaceAll = sNull.replaceAll(";", ","); land.setLandRange("'POLYGON((" + replaceAll + "))'"); } List<Point2D.Double> points = new ArrayList<Point2D.Double>(); double v1; String landRange = range; String[] s1 = landRange.split(";"); for (String ss : s1) { String[] temp = ss.split(","); Point2D.Double point = new Point2D.Double(Double.parseDouble(temp[0]), Double.parseDouble(temp[1])); points.add(point); } PolyginArea tp = new PolyginArea(); double area = tp.getAreaByxy(points); Integer landUnit = land.getLandUnit(); //(0: 亩 1:分 2:平方米 if (landUnit == 0) { double v = area * 0.0015; v1 = (double) Math.round(v * 100) / 100; } else if (landUnit == 1) { double v = area * 0.015; v1 = (double) Math.round(v * 100) / 100; } else { v1 = (double) Math.round(area * 100) / 100; } //图片转换上传 if (null != land.getUrl() && !land.getUrl().equals("")) { try { //上传 String url = ossEndpoint.uploadBase64String(land.getUrl()); //回填url land.setUrl(url); } catch (Exception e) { e.printStackTrace(); } } land.setLandArea(String.valueOf(v1)); return R.status(landService.updateLandById(land)); } /** * 新增或修改 地块表 */ @PostMapping("/submit") @@ -256,6 +311,7 @@ /** * 地块列表(不分页) * * @param land * @return */ @@ -327,8 +383,7 @@ map.put("zarea", (double) Math.round(num * 100) / 100); map.put("sarea", (double) Math.round(snum * 100) / 100); map.put("num", size); } else { } else { map.put("rate", 0.0); map.put("zarea", 0.0); map.put("sarea", 0.0); @@ -339,6 +394,7 @@ /** * 大屏地块统计接口 * * @param land 农场 * @return */ src/main/java/org/springblade/modules/lang/mapper/LandMapper.java
@@ -63,6 +63,7 @@ * @return */ int updateLandById(@Param("land") Land land); int updateLandAr(@Param("land") Land land); List selectLandList(String userid); src/main/java/org/springblade/modules/lang/mapper/LandMapper.xml
@@ -17,6 +17,7 @@ <select id="selectLandPage" resultMap="landResultMap"> SELECT l.land_name, l.land_unit, l.id, l.land_area , ST_ASTEXT(land_range) as land_range, @@ -139,6 +140,16 @@ where id = #{land.id} </update> <update id="updateLandAr"> update sys_land set user_id = #{land.userId}, land_area = #{land.landArea}, <if test="land.landRange!=null and land.landRange!=''"> land_range = ST_GeomFromText(${land.landRange}), </if> url = #{land.url}, where id = #{land.id} </update> <select id="selectLandList" resultType="java.util.HashMap"> select id, land_name as landName from sys_land src/main/java/org/springblade/modules/lang/service/ILandService.java
@@ -61,6 +61,7 @@ * @return */ boolean updateLandById(Land land); boolean updateLandAr(Land land); /** * 地块列表 src/main/java/org/springblade/modules/lang/service/impl/LandServiceImpl.java
@@ -66,6 +66,15 @@ } @Override public boolean updateLandAr(Land land) { int i =baseMapper.updateLandAr(land); if (i > 0) { return true; } return false; } @Override public List selectLandList(String userid) { return baseMapper.selectLandList(userid); } src/main/java/org/springblade/modules/process/mapper/ProcessMapper.xml
@@ -22,8 +22,10 @@ <select id="selectProcessPage" resultMap="processResultMap"> SELECT p.*, m.machining_type as processName, SELECT p.strain_id, p.land_id, SUM(p.process_num) as process_num, m.machining_type AS processName, m.machining_tp AS tpurl FROM sys_process p LEFT JOIN sys_machining m ON m.id = p.process_id @@ -32,6 +34,7 @@ <if test="process.farmId!=null and process.farmId!=''"> and sl.farm_id = #{process.farmId} </if> GROUP BY p.strain_id,m.machining_type,m.machining_tp,p.land_id </select> </mapper>