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
jinan
traffic-signal-platform
Commits
607378a0
Commit
607378a0
authored
Mar 28, 2025
by
fengyasheng
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
交通分析报告-干线信息查询
parent
bb4fb909
Changes
12
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
352 additions
and
26 deletions
+352
-26
RoadLevelEnum.java
...c/main/java/net/wanji/opt/common/enums/RoadLevelEnum.java
+38
-0
CrossSignalPlanController.java
...controllerv2/judgeanalysis/CrossSignalPlanController.java
+0
-6
BaseAreaInfoController.java
...wanji/opt/controllerv2/report/BaseAreaInfoController.java
+2
-13
GreenWaveCrossRidController.java
.../opt/controllerv2/report/GreenWaveCrossRidController.java
+56
-0
GreenWaveCrossRidMapper.java
.../wanji/opt/dao/mapper/report/GreenWaveCrossRidMapper.java
+20
-0
GreenWaveCrossRidInfo.java
...va/net/wanji/opt/entity/report/GreenWaveCrossRidInfo.java
+60
-0
GreenWaveCrossRidInfoVO.java
.../net/wanji/opt/entity/report/GreenWaveCrossRidInfoVO.java
+40
-0
BaseAreaInfoService.java
...a/net/wanji/opt/servicev2/report/BaseAreaInfoService.java
+1
-1
GreenWaveCrossRidService.java
.../wanji/opt/servicev2/report/GreenWaveCrossRidService.java
+21
-0
BaseAreaInfoServiceImpl.java
...ji/opt/servicev2/report/impl/BaseAreaInfoServiceImpl.java
+2
-6
GreenWaveCrossRidServiceImpl.java
...t/servicev2/report/impl/GreenWaveCrossRidServiceImpl.java
+69
-0
GreenWaveCrossRidMapper.xml
.../main/resources/mapper/report/GreenWaveCrossRidMapper.xml
+43
-0
No files found.
signal-optimize-service/src/main/java/net/wanji/opt/common/enums/RoadLevelEnum.java
0 → 100644
View file @
607378a0
package
net
.
wanji
.
opt
.
common
.
enums
;
import
lombok.AllArgsConstructor
;
import
lombok.Getter
;
import
java.util.Objects
;
/**
* @author duanruiming
* @date 2024/12/10 17:27
*/
@Getter
@AllArgsConstructor
public
enum
RoadLevelEnum
{
HIGHWAY
(
41000
,
"高速公路"
),
NATIONAL_HIGHWAY
(
42000
,
"国道"
),
URBAN_EXPRESSWAY
(
43000
,
"城市快速路"
),
URBAN_MAIN_ROAD
(
44000
,
"城市主干道"
),
URBAN_SECONDARY_ROAD
(
45000
,
"城市次干道"
),
URBAN_ORDINARY_ROAD
(
47000
,
"城市普通道路"
),
PROVINCIAL_ROAD
(
51000
,
"省道"
),
COUNTY_ROAD
(
52000
,
"县道"
),
TOWN_ROAD
(
53000
,
"乡道"
),
RURAL_INTERNAL_ROAD
(
54000
,
"县乡村内部道路"
),
SMALL_ROAD
(
49
,
"小路"
);
private
Integer
code
;
private
String
desc
;
public
static
String
getDesc
(
Integer
code
)
{
for
(
RoadLevelEnum
value
:
RoadLevelEnum
.
values
())
{
if
(
Objects
.
equals
(
code
,
value
.
getCode
()))
{
return
value
.
desc
;
}
}
return
""
;
}
}
signal-optimize-service/src/main/java/net/wanji/opt/controllerv2/judgeanalysis/CrossSignalPlanController.java
View file @
607378a0
...
...
@@ -10,20 +10,14 @@ import io.swagger.annotations.ApiResponses;
import
lombok.extern.slf4j.Slf4j
;
import
net.wanji.common.framework.i18n.I18nResourceBundle
;
import
net.wanji.common.framework.rest.JsonViewObject
;
import
net.wanji.databus.po.BaseAreaInfoPO
;
import
net.wanji.opt.controllerv2.judgeanalysis.design.response.crosssignal.CrossSignalPlanReasonResult
;
import
net.wanji.opt.controllerv2.judgeanalysis.design.response.greenproblem.GreenCrossProblemTrendAnalysisResult
;
import
net.wanji.opt.servicev2.judgeanalysis.BaseAreaInfoService
;
import
net.wanji.opt.servicev2.judgeanalysis.CrossSignalPlanService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.ws.rs.core.MediaType
;
import
java.util.List
;
import
java.util.Map
;
/**
* <p>
...
...
signal-optimize-service/src/main/java/net/wanji/opt/controllerv2/
judgeanalysis
/BaseAreaInfoController.java
→
signal-optimize-service/src/main/java/net/wanji/opt/controllerv2/
report
/BaseAreaInfoController.java
View file @
607378a0
package
net
.
wanji
.
opt
.
controllerv2
.
judgeanalysis
;
package
net
.
wanji
.
opt
.
controllerv2
.
report
;
import
com.alibaba.fastjson.JSONObject
;
import
io.swagger.annotations.Api
;
...
...
@@ -6,25 +6,14 @@ import io.swagger.annotations.ApiImplicitParam;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.extern.slf4j.Slf4j
;
import
net.wanji.common.framework.exception.DubboProviderException
;
import
net.wanji.common.framework.i18n.I18nResourceBundle
;
import
net.wanji.common.framework.rest.AbstractRestServer
;
import
net.wanji.common.framework.rest.JsonViewObject
;
import
net.wanji.common.framework.rest.Page
;
import
net.wanji.common.framework.rest.impl.AbstractRestServerImpl
;
import
net.wanji.databus.dao.entity.GreenwaveInfoPO
;
import
net.wanji.databus.po.BaseAreaInfoPO
;
import
net.wanji.opt.entity.BaseAreaInfo
;
import
net.wanji.opt.servicev2.judgeanalysis.BaseAreaInfoService
;
import
net.wanji.opt.vo.GreenWaveRunStateVO
;
import
net.wanji.opt.servicev2.report.BaseAreaInfoService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.util.ObjectUtils
;
import
org.springframework.web.bind.annotation.*
;
import
javax.ws.rs.core.MediaType
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
/**
* <p>
...
...
signal-optimize-service/src/main/java/net/wanji/opt/controllerv2/report/GreenWaveCrossRidController.java
0 → 100644
View file @
607378a0
package
net
.
wanji
.
opt
.
controllerv2
.
report
;
import
com.alibaba.fastjson.JSONObject
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.extern.slf4j.Slf4j
;
import
net.wanji.common.framework.i18n.I18nResourceBundle
;
import
net.wanji.common.framework.rest.JsonViewObject
;
import
net.wanji.databus.po.BaseAreaInfoPO
;
import
net.wanji.opt.entity.report.GreenWaveCrossRidInfo
;
import
net.wanji.opt.servicev2.report.BaseAreaInfoService
;
import
net.wanji.opt.servicev2.report.GreenWaveCrossRidService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.List
;
/**
* <p>
* 区域基础信息 接口API
* </p>
* @version 1.0
* @author
* @Date 2025-03-18
*/
@RestController
@Slf4j
@RequestMapping
(
"/green-wave-cross-rid"
)
@Api
(
value
=
"GreenWaveCrossRidController"
,
description
=
"干线分析报告接口"
,
tags
=
"干线分析报告"
)
public
class
GreenWaveCrossRidController
{
@Autowired
private
GreenWaveCrossRidService
greenWaveCrossRidService
;
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"干线基础信息"
,
notes
=
""
)
@ApiImplicitParams
({
@ApiImplicitParam
(
name
=
"ids"
,
value
=
"干线ID,多个id用','分隔"
,
required
=
true
,
dataType
=
"String"
,
defaultValue
=
"1,2"
),
})
@GetMapping
(
value
=
"/getGreenInfoList"
)
public
JsonViewObject
getGreenInfoList
(
@RequestParam
(
value
=
"ids"
,
required
=
false
,
defaultValue
=
"2"
)
String
ids
)
{
JsonViewObject
jsonViewObject
=
JsonViewObject
.
newInstance
();
try
{
JSONObject
object
=
greenWaveCrossRidService
.
getGreenInfoList
(
ids
);
jsonViewObject
.
success
(
object
);
}
catch
(
Exception
e
)
{
jsonViewObject
.
fail
(
I18nResourceBundle
.
getConstants
(
"GET_FAILED_MSG"
));
log
.
error
(
"{} getAll error"
,
this
.
getClass
().
getSimpleName
(),
e
);
}
return
jsonViewObject
;
}
}
signal-optimize-service/src/main/java/net/wanji/opt/dao/mapper/report/GreenWaveCrossRidMapper.java
0 → 100644
View file @
607378a0
package
net
.
wanji
.
opt
.
dao
.
mapper
.
report
;
import
net.wanji.opt.entity.report.GreenWaveCrossRidInfo
;
import
net.wanji.opt.synthesis.pojo.*
;
import
net.wanji.opt.synthesis.pojo.vo.CrossOrGreenWaveTypeEntity
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
/**
* <p>
* 干线报告
* </p>
* @author
* @date 2025/3/15
*/
public
interface
GreenWaveCrossRidMapper
{
List
<
GreenWaveCrossRidInfo
>
getGreenInfoList
(
@Param
(
"id"
)
String
id
);
}
signal-optimize-service/src/main/java/net/wanji/opt/entity/report/GreenWaveCrossRidInfo.java
0 → 100644
View file @
607378a0
package
net
.
wanji
.
opt
.
entity
.
report
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.util.List
;
@Data
@ApiModel
(
value
=
"GreenWaveCrossRidInfo"
,
description
=
"干线信息"
)
public
class
GreenWaveCrossRidInfo
{
// 主表 t_greenwave_info 字段
@ApiModelProperty
(
value
=
"绿波干线id"
)
private
Integer
id
;
// a.id
@ApiModelProperty
(
value
=
"干线名称"
)
private
String
greenwaveName
;
// a.name AS greenwave_name
@ApiModelProperty
(
value
=
"干线方向"
)
private
String
greenDir
;
// a.name AS greenwave_name
@ApiModelProperty
(
value
=
"干线方向"
)
private
String
greenDirName
;
// a.name AS greenwave_name
@ApiModelProperty
(
value
=
"干线长度"
)
private
String
length
;
// a.name AS greenwave_name
// 表 t_greenwave_cross 字段
@ApiModelProperty
(
value
=
"路口id"
)
private
String
crossId
;
// b.cross_id
@ApiModelProperty
(
value
=
"路口名称"
)
private
String
crossName
;
// c.name AS cross_name
@ApiModelProperty
(
value
=
"路口顺序"
)
private
Integer
sort
;
// b.sort
@ApiModelProperty
(
value
=
"驶入方向"
)
private
String
inDir
;
// b.in_dir
@ApiModelProperty
(
value
=
"驶出方向"
)
private
String
outDir
;
// b.out_dir
@ApiModelProperty
(
value
=
"是否重点路口 0-否 1-是 "
)
private
Integer
isKeyRoute
;
// b.is_key_route
// 表 t_base_cross_info 字段
@ApiModelProperty
(
value
=
"是否信控路口 0-否 1-是"
)
private
Integer
isSignal
;
// c.is_signal
// 表 t_base_rid_info 字段
@ApiModelProperty
(
value
=
"车道等级"
)
private
Integer
level
;
// d.level
@ApiModelProperty
(
value
=
"车道等级名称"
)
private
String
levelName
;
// d.level
@ApiModelProperty
(
value
=
"路段id"
)
private
String
rid
;
// d.id AS rid
// 车道数量统计字段
@ApiModelProperty
(
value
=
"驶入车道数"
)
private
Integer
inLaneCount
;
// COALESCE(in_lane_count.count, 0)
@ApiModelProperty
(
value
=
"驶出车道数"
)
private
Integer
outLaneCount
;
// COALESCE(out_lane_count.count, 0)
@ApiModelProperty
(
value
=
"全部车道数"
)
private
Integer
allLaneCount
;
@ApiModelProperty
(
value
=
"全部路口"
)
List
<
GreenWaveCrossRidInfo
>
greenWaveCrossRidInfoList
;
}
signal-optimize-service/src/main/java/net/wanji/opt/entity/report/GreenWaveCrossRidInfoVO.java
0 → 100644
View file @
607378a0
package
net
.
wanji
.
opt
.
entity
.
report
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.util.List
;
@Data
@ApiModel
(
value
=
"GreenWaveCrossRidInfoVO"
,
description
=
"干线信息"
)
public
class
GreenWaveCrossRidInfoVO
{
// 主表 t_greenwave_info 字段
@ApiModelProperty
(
value
=
"绿波干线id"
)
private
Integer
id
;
// a.id
@ApiModelProperty
(
value
=
"干线名称"
)
private
String
greenwaveName
;
// a.name AS greenwave_name
@ApiModelProperty
(
value
=
"干线方向"
)
private
String
greenDir
;
// a.name AS greenwave_name
@ApiModelProperty
(
value
=
"干线方向"
)
private
String
greenDirName
;
// a.name AS greenwave_name
@ApiModelProperty
(
value
=
"干线长度"
)
private
String
length
;
// a.name AS greenwave_name
@ApiModelProperty
(
value
=
"信控路口数量"
)
private
Integer
signalCross
;
// c.is_signal
// 表 t_base_rid_info 字段
@ApiModelProperty
(
value
=
"车道等级"
)
private
Integer
level
;
// d.level
@ApiModelProperty
(
value
=
"车道等级名称"
)
private
String
levelName
;
// d.level
@ApiModelProperty
(
value
=
"路段id"
)
private
String
rid
;
// d.id AS rid
@ApiModelProperty
(
value
=
"全部车道数"
)
private
Integer
allLaneCount
;
@ApiModelProperty
(
value
=
"全部路口"
)
List
<
GreenWaveCrossRidInfo
>
greenWaveCrossRidInfoList
;
}
signal-optimize-service/src/main/java/net/wanji/opt/servicev2/
judgeanalysis
/BaseAreaInfoService.java
→
signal-optimize-service/src/main/java/net/wanji/opt/servicev2/
report
/BaseAreaInfoService.java
View file @
607378a0
package
net
.
wanji
.
opt
.
servicev2
.
judgeanalysis
;
package
net
.
wanji
.
opt
.
servicev2
.
report
;
import
com.alibaba.fastjson.JSONObject
;
import
net.wanji.databus.dao.entity.GreenwaveInfoPO
;
...
...
signal-optimize-service/src/main/java/net/wanji/opt/servicev2/report/GreenWaveCrossRidService.java
0 → 100644
View file @
607378a0
package
net
.
wanji
.
opt
.
servicev2
.
report
;
import
com.alibaba.fastjson.JSONObject
;
import
net.wanji.databus.po.BaseAreaInfoPO
;
import
net.wanji.opt.entity.report.GreenWaveCrossRidInfo
;
import
java.util.List
;
/**
* <p>
* 区域基础信息
* </p>
*
* @Author wangtao
* @Date 2025-03-18
*/
public
interface
GreenWaveCrossRidService
{
JSONObject
getGreenInfoList
(
String
ids
);
}
signal-optimize-service/src/main/java/net/wanji/opt/servicev2/
judgeanalysis
/impl/BaseAreaInfoServiceImpl.java
→
signal-optimize-service/src/main/java/net/wanji/opt/servicev2/
report
/impl/BaseAreaInfoServiceImpl.java
View file @
607378a0
package
net
.
wanji
.
opt
.
servicev2
.
judgeanalysis
.
impl
;
package
net
.
wanji
.
opt
.
servicev2
.
report
.
impl
;
import
com.alibaba.fastjson.JSONObject
;
import
net.wanji.common.framework.dubbointerface.impl.BaseDubboInterfaceImpl
;
import
net.wanji.common.framework.mapper.BaseInterfaceMapper
;
import
net.wanji.common.gts.service.GtsService
;
import
net.wanji.databus.dao.entity.GreenwaveInfoPO
;
import
net.wanji.databus.dao.mapper.BaseAreaInfoMapper
;
...
...
@@ -11,10 +9,9 @@ import net.wanji.databus.dao.mapper.BaseCrossInfoMapper;
import
net.wanji.databus.dao.mapper.GreenwaveInfoMapper
;
import
net.wanji.databus.po.BaseAreaInfoPO
;
import
net.wanji.databus.po.BaseCrossInfoPO
;
import
net.wanji.opt.entity.BaseAreaInfo
;
import
lombok.extern.slf4j.Slf4j
;
import
net.wanji.opt.servicev2.
judgeanalysis
.BaseAreaInfoService
;
import
net.wanji.opt.servicev2.
report
.BaseAreaInfoService
;
import
org.apache.dubbo.config.annotation.Service
;
import
org.springframework.stereotype.Component
;
import
org.springframework.util.ObjectUtils
;
...
...
@@ -23,7 +20,6 @@ import javax.annotation.Resource;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
java.util.stream.Stream
;
/**
...
...
signal-optimize-service/src/main/java/net/wanji/opt/servicev2/report/impl/GreenWaveCrossRidServiceImpl.java
0 → 100644
View file @
607378a0
package
net
.
wanji
.
opt
.
servicev2
.
report
.
impl
;
import
cn.hutool.core.util.StrUtil
;
import
com.alibaba.fastjson.JSONObject
;
import
lombok.extern.slf4j.Slf4j
;
import
net.wanji.opt.common.enums.CrossDirEnum
;
import
net.wanji.opt.common.enums.RoadLevelEnum
;
import
net.wanji.opt.dao.mapper.report.GreenWaveCrossRidMapper
;
import
net.wanji.opt.entity.report.GreenWaveCrossRidInfo
;
import
net.wanji.opt.entity.report.GreenWaveCrossRidInfoVO
;
import
net.wanji.opt.servicev2.report.GreenWaveCrossRidService
;
import
org.apache.dubbo.config.annotation.Service
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.stereotype.Component
;
import
org.springframework.util.ObjectUtils
;
import
javax.annotation.Resource
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
/**
* <p>
* 区域基础信息
* </p>
*
* @Author wangtao
* @Date 2025-03-18
*/
@Slf4j
@Component
@Service
public
class
GreenWaveCrossRidServiceImpl
implements
GreenWaveCrossRidService
{
@Resource
private
GreenWaveCrossRidMapper
greenWaveCrossRidMapper
;
@Override
public
JSONObject
getGreenInfoList
(
String
ids
)
{
String
[]
idList
=
ids
.
split
(
","
);
JSONObject
jsonObject
=
new
JSONObject
();
List
<
GreenWaveCrossRidInfoVO
>
list
=
new
ArrayList
<>();
for
(
String
id
:
idList
)
{
List
<
GreenWaveCrossRidInfo
>
greenWaveCrossRidInfoList
=
greenWaveCrossRidMapper
.
getGreenInfoList
(
id
);
int
signal
=
0
;
for
(
GreenWaveCrossRidInfo
greenWaveCrossRidInfo
:
greenWaveCrossRidInfoList
)
{
if
(!
ObjectUtils
.
isEmpty
(
greenWaveCrossRidInfo
.
getIsSignal
())
&&
greenWaveCrossRidInfo
.
getIsSignal
()
==
1
){
signal
++;
}
}
String
greenDir
=
greenWaveCrossRidInfoList
.
get
(
1
).
getGreenDir
();
String
[]
dirs
=
greenDir
.
split
(
","
);
String
content
=
StrUtil
.
format
(
"{}{}走向"
,
CrossDirEnum
.
getDesc
(
Integer
.
valueOf
(
dirs
[
0
])),
CrossDirEnum
.
getDesc
(
Integer
.
valueOf
(
dirs
[
1
])))
;
GreenWaveCrossRidInfoVO
greenWaveCrossRidInfoVO
=
new
GreenWaveCrossRidInfoVO
();
GreenWaveCrossRidInfo
greenWaveCrossRidInfo
=
greenWaveCrossRidInfoList
.
get
(
1
);
BeanUtils
.
copyProperties
(
greenWaveCrossRidInfo
,
greenWaveCrossRidInfoVO
);
greenWaveCrossRidInfoVO
.
setGreenDirName
(
content
);
greenWaveCrossRidInfoVO
.
setLevelName
(
RoadLevelEnum
.
getDesc
(
greenWaveCrossRidInfo
.
getLevel
()));
greenWaveCrossRidInfoVO
.
setAllLaneCount
(
greenWaveCrossRidInfo
.
getInLaneCount
()
+
greenWaveCrossRidInfo
.
getOutLaneCount
());
greenWaveCrossRidInfoVO
.
setSignalCross
(
signal
);
greenWaveCrossRidInfoVO
.
setGreenWaveCrossRidInfoList
(
greenWaveCrossRidInfoList
);
list
.
add
(
greenWaveCrossRidInfoVO
);
}
jsonObject
.
put
(
"dataList"
,
list
);
return
jsonObject
;
}
}
signal-optimize-service/src/main/resources/mapper/report/GreenWaveCrossRidMapper.xml
0 → 100644
View file @
607378a0
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"net.wanji.opt.dao.mapper.report.GreenWaveCrossRidMapper"
>
<select
id=
"getGreenInfoList"
resultType=
"net.wanji.opt.entity.report.GreenWaveCrossRidInfo"
>
SELECT
a.id,
a.name AS greenwave_name,
a.green_dir,
a.length,
b.cross_id,
b.sort,
b.in_dir,
b.out_dir,
b.is_key_route,
c.is_signal,
d.level,
d.id as rid,
c.name AS cross_name,
COALESCE(in_lane_count.count, 0) AS in_lane_count, -- type=2, dir=b.in_dir 的车道数量
COALESCE(out_lane_count.count, 0) AS out_lane_count -- type=3, dir=b.out_dir 的车道数量
FROM
t_greenwave_info AS a
LEFT JOIN
t_greenwave_cross AS b ON a.id = b.green_id
LEFT JOIN
t_base_cross_info AS c ON b.cross_id = c.id
LEFT JOIN
t_base_rid_info AS d ON b.cross_id = d.end_cross_id and b.in_dir = d.in_dir
LEFT JOIN
(SELECT cross_id, COUNT(1) AS count,dir
FROM t_base_lane_info
WHERE type = 2
GROUP BY cross_id, dir) AS in_lane_count
ON b.cross_id = in_lane_count.cross_id AND b.in_dir = in_lane_count.dir
LEFT JOIN
(SELECT cross_id, COUNT(1) AS count,dir
FROM t_base_lane_info
WHERE type = 3
GROUP BY cross_id, dir) AS out_lane_count
ON b.cross_id = out_lane_count.cross_id AND b.out_dir = out_lane_count.dir where a.id = #{id} ORDER BY sort;
</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