Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
T
traffic-signal-platform
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
signal
traffic-signal-platform
Commits
2f320991
Commit
2f320991
authored
Jan 09, 2023
by
hanbing
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
方案管理-方案配置,增加根据车道获取灯组、根据灯组获取车道
parent
cddbe853
Changes
9
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
149 additions
and
0 deletions
+149
-0
SchemeConfigController.java
...t/wanji/web/controller/scheme/SchemeConfigController.java
+32
-0
LaneIdDTO.java
...ol-service/src/main/java/net/wanji/web/dto/LaneIdDTO.java
+16
-0
LightIdDTO.java
...l-service/src/main/java/net/wanji/web/dto/LightIdDTO.java
+16
-0
CrossLaneLightsMapper.java
...va/net/wanji/web/mapper/scheme/CrossLaneLightsMapper.java
+3
-0
SchemeConfigService.java
...ava/net/wanji/web/service/scheme/SchemeConfigService.java
+8
-0
SchemeConfigServiceImpl.java
...anji/web/service/scheme/impl/SchemeConfigServiceImpl.java
+33
-0
LaneIdsVO.java
...vice/src/main/java/net/wanji/web/vo/scheme/LaneIdsVO.java
+18
-0
LightIdVO.java
...vice/src/main/java/net/wanji/web/vo/scheme/LightIdVO.java
+16
-0
CrossLaneLightsMapper.xml
...rc/main/resources/mapper/scheme/CrossLaneLightsMapper.xml
+7
-0
No files found.
signal-control-service/src/main/java/net/wanji/web/controller/scheme/SchemeConfigController.java
View file @
2f320991
...
...
@@ -5,8 +5,12 @@ import io.swagger.annotations.ApiOperation;
import
io.swagger.annotations.ApiResponse
;
import
io.swagger.annotations.ApiResponses
;
import
net.wanji.web.common.entity.JsonViewObject
;
import
net.wanji.web.dto.LaneIdDTO
;
import
net.wanji.web.dto.LightIdDTO
;
import
net.wanji.web.dto.SaveSchemeConfigDTO
;
import
net.wanji.web.service.scheme.impl.SchemeConfigServiceImpl
;
import
net.wanji.web.vo.scheme.LaneIdsVO
;
import
net.wanji.web.vo.scheme.LightIdVO
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
...
...
@@ -41,4 +45,32 @@ public class SchemeConfigController {
return
jsonViewObject
.
success
();
}
@ApiOperation
(
value
=
"根据车道获取灯组信息"
,
notes
=
"根据车道获取灯组信息"
,
response
=
JsonViewObject
.
class
,
produces
=
MediaType
.
APPLICATION_JSON
,
consumes
=
MediaType
.
APPLICATION_JSON
)
@PostMapping
(
value
=
"/getLightByLane"
,
produces
=
MediaType
.
APPLICATION_JSON
,
consumes
=
MediaType
.
APPLICATION_JSON
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
LightIdVO
.
class
),
})
public
JsonViewObject
getLightByLane
(
@RequestBody
LaneIdDTO
laneIdDTO
)
{
LightIdVO
lightIdVO
=
schemeConfigService
.
getLightByLane
(
laneIdDTO
);
JsonViewObject
jsonViewObject
=
JsonViewObject
.
newInstance
();
return
jsonViewObject
.
success
(
lightIdVO
);
}
@ApiOperation
(
value
=
"根据灯组获取车道信息"
,
notes
=
"根据灯组获取车道信息"
,
response
=
JsonViewObject
.
class
,
produces
=
MediaType
.
APPLICATION_JSON
,
consumes
=
MediaType
.
APPLICATION_JSON
)
@PostMapping
(
value
=
"/getLanesByLight"
,
produces
=
MediaType
.
APPLICATION_JSON
,
consumes
=
MediaType
.
APPLICATION_JSON
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
LaneIdsVO
.
class
),
})
public
JsonViewObject
getLanesByLight
(
@RequestBody
LightIdDTO
lightIdDTO
)
{
LaneIdsVO
laneIdsVO
=
schemeConfigService
.
getLanesByLight
(
lightIdDTO
);
JsonViewObject
jsonViewObject
=
JsonViewObject
.
newInstance
();
return
jsonViewObject
.
success
(
laneIdsVO
);
}
}
signal-control-service/src/main/java/net/wanji/web/dto/LaneIdDTO.java
0 → 100644
View file @
2f320991
package
net
.
wanji
.
web
.
dto
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
/**
* @author Kent HAN
* @date 2023/1/9 8:59
*/
@Data
public
class
LaneIdDTO
{
@ApiModelProperty
(
value
=
"路口ID,如:c7e7b1f352dd4acab4a60088eb391cca"
,
required
=
true
)
private
String
crossId
;
@ApiModelProperty
(
value
=
"车道ID"
,
required
=
true
)
private
String
laneId
;
}
signal-control-service/src/main/java/net/wanji/web/dto/LightIdDTO.java
0 → 100644
View file @
2f320991
package
net
.
wanji
.
web
.
dto
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
/**
* @author Kent HAN
* @date 2023/1/9 8:59
*/
@Data
public
class
LightIdDTO
{
@ApiModelProperty
(
value
=
"路口ID,如:c7e7b1f352dd4acab4a60088eb391cca"
,
required
=
true
)
private
String
crossId
;
@ApiModelProperty
(
value
=
"灯组ID"
,
required
=
true
)
private
Integer
lightId
;
}
signal-control-service/src/main/java/net/wanji/web/mapper/scheme/CrossLaneLightsMapper.java
View file @
2f320991
...
...
@@ -21,4 +21,7 @@ public interface CrossLaneLightsMapper {
String
selectLightsCodeByLaneId
(
@Param
(
"laneId"
)
String
laneId
);
Integer
selectLightsIdByLaneId
(
@Param
(
"crossId"
)
String
crossId
,
@Param
(
"laneId"
)
String
laneId
);
List
<
CrossLaneLightsPO
>
selectLanesByLightId
(
@Param
(
"crossId"
)
String
crossId
,
@Param
(
"lightId"
)
Integer
lightId
);
}
signal-control-service/src/main/java/net/wanji/web/service/scheme/SchemeConfigService.java
View file @
2f320991
package
net
.
wanji
.
web
.
service
.
scheme
;
import
net.wanji.web.dto.LaneIdDTO
;
import
net.wanji.web.dto.LightIdDTO
;
import
net.wanji.web.dto.SaveSchemeConfigDTO
;
import
net.wanji.web.vo.scheme.LaneIdsVO
;
import
net.wanji.web.vo.scheme.LightIdVO
;
/**
* @author Kent HAN
...
...
@@ -8,4 +12,8 @@ import net.wanji.web.dto.SaveSchemeConfigDTO;
*/
public
interface
SchemeConfigService
{
void
saveSchemeConfig
(
SaveSchemeConfigDTO
saveSchemeConfigDTO
);
LightIdVO
getLightByLane
(
LaneIdDTO
laneIdDTO
);
LaneIdsVO
getLanesByLight
(
LightIdDTO
lightIdDTO
);
}
signal-control-service/src/main/java/net/wanji/web/service/scheme/impl/SchemeConfigServiceImpl.java
View file @
2f320991
package
net
.
wanji
.
web
.
service
.
scheme
.
impl
;
import
net.wanji.web.common.constant.ControlModeConst
;
import
net.wanji.web.dto.LaneIdDTO
;
import
net.wanji.web.dto.LightIdDTO
;
import
net.wanji.web.dto.SaveSchemeConfigDTO
;
import
net.wanji.web.mapper.scheme.CrossLaneLightsMapper
;
import
net.wanji.web.mapper.scheme.CrossPhaseLightsMapper
;
import
net.wanji.web.mapper.scheme.CrossPhaseMapper
;
import
net.wanji.web.mapper.scheme.CrossSchemeMapper
;
import
net.wanji.web.mapper.scheme.LaneInfoMapper
;
import
net.wanji.web.po.scheme.CrossLaneLightsPO
;
import
net.wanji.web.po.scheme.CrossPhaseLightsPO
;
import
net.wanji.web.po.scheme.CrossPhasePO
;
import
net.wanji.web.po.scheme.CrossSchemePO
;
import
net.wanji.web.service.scheme.SchemeConfigService
;
import
net.wanji.web.vo.scheme.LaneIdsVO
;
import
net.wanji.web.vo.scheme.LightIdVO
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
...
...
@@ -51,6 +56,34 @@ public class SchemeConfigServiceImpl implements SchemeConfigService {
}
}
@Override
public
LightIdVO
getLightByLane
(
LaneIdDTO
laneIdDTO
)
{
String
crossId
=
laneIdDTO
.
getCrossId
();
String
laneId
=
laneIdDTO
.
getLaneId
();
Integer
lightId
=
crossLaneLightsMapper
.
selectLightsIdByLaneId
(
crossId
,
laneId
);
LightIdVO
lightIdVO
=
new
LightIdVO
();
lightIdVO
.
setCrossId
(
crossId
);
lightIdVO
.
setLightId
(
lightId
);
return
lightIdVO
;
}
@Override
public
LaneIdsVO
getLanesByLight
(
LightIdDTO
lightIdDTO
)
{
String
crossId
=
lightIdDTO
.
getCrossId
();
LaneIdsVO
laneIdsVO
=
new
LaneIdsVO
();
laneIdsVO
.
setCrossId
(
crossId
);
Integer
lightId
=
lightIdDTO
.
getLightId
();
List
<
CrossLaneLightsPO
>
crossLaneLightsPOList
=
crossLaneLightsMapper
.
selectLanesByLightId
(
crossId
,
lightId
);
List
<
String
>
laneIds
=
new
ArrayList
<>();
for
(
CrossLaneLightsPO
crossLaneLightsPO
:
crossLaneLightsPOList
)
{
laneIds
.
add
(
crossLaneLightsPO
.
getLaneId
());
}
laneIdsVO
.
setLaneIds
(
laneIds
);
return
laneIdsVO
;
}
private
void
handleRingTime
(
SaveSchemeConfigDTO
saveSchemeConfigDTO
)
{
// 更新方案基础信息表
updateCrossScheme
(
saveSchemeConfigDTO
);
...
...
signal-control-service/src/main/java/net/wanji/web/vo/scheme/LaneIdsVO.java
0 → 100644
View file @
2f320991
package
net
.
wanji
.
web
.
vo
.
scheme
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.util.List
;
/**
* @author Kent HAN
* @date 2023/1/9 8:56
*/
@Data
public
class
LaneIdsVO
{
@ApiModelProperty
(
value
=
"路口ID"
,
required
=
true
)
private
String
crossId
;
@ApiModelProperty
(
value
=
"车道ID列表"
,
required
=
true
)
private
List
<
String
>
laneIds
;
}
signal-control-service/src/main/java/net/wanji/web/vo/scheme/LightIdVO.java
0 → 100644
View file @
2f320991
package
net
.
wanji
.
web
.
vo
.
scheme
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
/**
* @author Kent HAN
* @date 2023/1/9 8:56
*/
@Data
public
class
LightIdVO
{
@ApiModelProperty
(
value
=
"路口ID"
,
required
=
true
)
private
String
crossId
;
@ApiModelProperty
(
value
=
"灯组ID"
,
required
=
true
)
private
Integer
lightId
;
}
signal-control-service/src/main/resources/mapper/scheme/CrossLaneLightsMapper.xml
View file @
2f320991
...
...
@@ -49,5 +49,12 @@
limit 1
</select>
<select
id=
"selectLanesByLightId"
resultMap=
"BaseResultMap"
>
select
id,lights_id,lane_id,cross_id,gmt_create,gmt_modified
from t_base_cross_lane_lights
where cross_id = #{crossId} and lights_id = #{lightId}
</select>
</mapper>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment