|
@@ -2,6 +2,7 @@ package com.bosshand.virgo.api.service;
|
|
|
|
|
|
import com.bosshand.virgo.api.dao.*;
|
|
import com.bosshand.virgo.api.dao.*;
|
|
import com.bosshand.virgo.api.model.*;
|
|
import com.bosshand.virgo.api.model.*;
|
|
|
|
+import com.bosshand.virgo.api.util.PositionUtil;
|
|
import com.bosshand.virgo.core.utils.StringUtil;
|
|
import com.bosshand.virgo.core.utils.StringUtil;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
@@ -97,11 +98,27 @@ public class ProjectItemTargetRoomService {
|
|
return projectItemTargetRoomDao.getTotalCount(project);
|
|
return projectItemTargetRoomDao.getTotalCount(project);
|
|
}
|
|
}
|
|
|
|
|
|
- public List<ProjectItemTargetRoom> getLimit(ProjectItemTargetRoom project, int currPage, int pageSize) {
|
|
|
|
|
|
+ public List<ProjectItemTargetRoom> getLimit(ProjectItemTargetRoom projectItemTargetRoom, int currPage, int pageSize) {
|
|
int currIndex = (currPage - 1) * pageSize;
|
|
int currIndex = (currPage - 1) * pageSize;
|
|
- List<ProjectItemTargetRoom> list = projectItemTargetRoomDao.getLimit(project, currIndex, pageSize);
|
|
|
|
|
|
+ List<ProjectItemTargetRoom> list = projectItemTargetRoomDao.getLimit(projectItemTargetRoom, currIndex, pageSize);
|
|
for (ProjectItemTargetRoom room : list) {
|
|
for (ProjectItemTargetRoom room : list) {
|
|
- room.setProjectName(this.getProject(room.getProjectId()).getName());
|
|
|
|
|
|
+ Project project = this.getProject(room.getProjectId());
|
|
|
|
+ room.setProjectName(project.getName());
|
|
|
|
+ room.setCoordinates(project.getCoordinates());
|
|
|
|
+ // 如果传入当前位置坐标就返回项目和当前位置坐标的距离(km)
|
|
|
|
+ if (StringUtil.notBlank(projectItemTargetRoom.getCoordinates())) {
|
|
|
|
+ String[] currentCoordinates = projectItemTargetRoom.getCoordinates().split(",");
|
|
|
|
+ if (StringUtil.notBlank(project.getCoordinates())) {
|
|
|
|
+ String[] targetCoordinates = project.getCoordinates().split(",");
|
|
|
|
+ Double distance = PositionUtil.getDistance4(
|
|
|
|
+ Double.parseDouble(currentCoordinates[0]),
|
|
|
|
+ Double.parseDouble(currentCoordinates[1]),
|
|
|
|
+ Double.parseDouble(targetCoordinates[0]),
|
|
|
|
+ Double.parseDouble(targetCoordinates[1])
|
|
|
|
+ );
|
|
|
|
+ room.setDistance(distance);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
room.setProjectItemName(this.getProjectItem(room.getProjectItemId()).getName());
|
|
room.setProjectItemName(this.getProjectItem(room.getProjectItemId()).getName());
|
|
room.setProjectItemTargetName(this.getProjectItemTarget(room.getProjectItemTargetId()).getName());
|
|
room.setProjectItemTargetName(this.getProjectItemTarget(room.getProjectItemTargetId()).getName());
|
|
}
|
|
}
|