diff --git a/src/main/java/com/bonus/digitalSignage/basic/service/impl/TbTowerServiceImpl.java b/src/main/java/com/bonus/digitalSignage/basic/service/impl/TbTowerServiceImpl.java
index 5fdce1e..8696461 100644
--- a/src/main/java/com/bonus/digitalSignage/basic/service/impl/TbTowerServiceImpl.java
+++ b/src/main/java/com/bonus/digitalSignage/basic/service/impl/TbTowerServiceImpl.java
@@ -12,6 +12,7 @@ import com.bonus.digitalSignage.webResult.StringUtils;
import com.github.pagehelper.PageInfo;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Date;
@@ -93,6 +94,7 @@ public class TbTowerServiceImpl implements TbTowerService {
double[] bd09 =CoordinateTransform.cgcs2000ToBd09(Double.parseDouble(data.getLat()),Double.parseDouble(data.getLon()),Double.parseDouble(data.getCentralMeridian()));
data.setBaiduLon(String.valueOf(bd09[0]));
data.setBaiduLat(String.valueOf(bd09[1]));
+ data.setCentralMeridian(String.valueOf(bd09[2]));
}
Long userId = UserUtil.getLoginUser().getId();
data.setCreateUserId(userId);
@@ -111,6 +113,7 @@ public class TbTowerServiceImpl implements TbTowerService {
* @return
*/
@Override
+ @Transactional
public ServerResponse updateTbTower(TbTowerVo data) {
try {
//判断经纬度是否合法
@@ -129,7 +132,14 @@ public class TbTowerServiceImpl implements TbTowerService {
//如果改变杆塔类型,先删后加
if (StringUtils.isNotNull(tbTower) && tbTower.getUploadType()!=data.getUploadType()){
delTbTower(data);
- addTbTower(data);
+ ServerResponse res = addTbTower(data);
+ if(res.getStatus()!=200){
+ TbTowerVo tbTowerVoNew = new TbTowerVo();
+ tbTowerVoNew.setId(data.getId());
+ tbTowerVoNew.setIsActvice("1");
+ tbTowerMapper.updateTbTower(tbTowerVoNew);
+ return ServerResponse.createErroe("杆塔管理-修改失败");
+ }
}else {
//判断新增塔杆的坐标系 1.WGS-84地心坐标系 2.2000国家大地坐标系
if ("1".equals(data.getUploadType())){
@@ -137,9 +147,10 @@ public class TbTowerServiceImpl implements TbTowerService {
data.setBaiduLat(String.valueOf(bd09[0]));
data.setBaiduLon(String.valueOf(bd09[1]));
}else {
- double[] bd09 =CoordinateConverter.cgcs2000ToBd09(Double.parseDouble(data.getLat()),Double.parseDouble(data.getLon()));
- data.setBaiduLat(String.valueOf(bd09[0]));
- data.setBaiduLon(String.valueOf(bd09[1]));
+ double[] bd09 =CoordinateTransform.cgcs2000ToBd09(Double.parseDouble(data.getLat()),Double.parseDouble(data.getLon()),Double.parseDouble(data.getCentralMeridian()));
+ data.setBaiduLon(String.valueOf(bd09[0]));
+ data.setBaiduLat(String.valueOf(bd09[1]));
+ data.setCentralMeridian(String.valueOf(bd09[2]));
}
Long userId = UserUtil.getLoginUser().getId();
data.setUpdateUserId(userId);
diff --git a/src/main/resources/mappers/basic/TbTowerMapper.xml b/src/main/resources/mappers/basic/TbTowerMapper.xml
index 4726426..e285ea0 100644
--- a/src/main/resources/mappers/basic/TbTowerMapper.xml
+++ b/src/main/resources/mappers/basic/TbTowerMapper.xml
@@ -45,6 +45,7 @@
central_meridian = #{centralMeridian},
upload_type = #{uploadType},
update_user_id = #{updateUserId},
+ is_actvice = #{isActvice},
update_time = now()
where id = #{id}