package cn.com.goldenwater.dcproj.service.impl.irr; import cn.com.goldenwater.core.service.AbstractCrudService; import cn.com.goldenwater.dcproj.dao.AttIrrBaseDao; import cn.com.goldenwater.dcproj.model.AttIrrBase; import cn.com.goldenwater.dcproj.param.AttIrrBaseParam; import cn.com.goldenwater.dcproj.service.AttIrrBaseService; import cn.com.goldenwater.dcproj.utils.GeoUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; import java.util.List; import java.util.Map; /** * @author lune * @date 2020-4-30 */ @Service @Transactional public class AttIrrBaseServiceImpl extends AbstractCrudService implements AttIrrBaseService { @Autowired private AttIrrBaseDao attIrrBaseDao; public AttIrrBaseServiceImpl(AttIrrBaseDao attIrrBaseDao) { super(attIrrBaseDao); this.attIrrBaseDao = attIrrBaseDao; } @Override public int convertTc(AttIrrBaseParam attIrrBaseParam) { List attIrrBases = attIrrBaseDao.findList(attIrrBaseParam); List result = new ArrayList<>(); for (AttIrrBase attIrrBase : attIrrBases) { if (attIrrBase.getCenterX() != null && attIrrBase.getCenterY() != null) { Map map = GeoUtil.wgs84togcj02(attIrrBase.getCenterX(), attIrrBase.getCenterY()); attIrrBase.setGdX(map.get("lon")); attIrrBase.setGdY(map.get("lat")); result.add(attIrrBase); } } if (attIrrBases.size() > 0) { attIrrBaseDao.updateList(result); } return 0; } }