Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Sign in / Register
Toggle navigation
H
hzsomms
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
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
ZTGK
hzsomms
Commits
abcb0a49
Commit
abcb0a49
authored
Jul 18, 2023
by
hkl
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev-hkl' into 'dev'
Dev hkl See merge request
!23
parents
d1b49a8b
fa272b0a
Changes
11
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
296 additions
and
37 deletions
+296
-37
RailInspectionEquipmentItemController.java
...ata/controller/RailInspectionEquipmentItemController.java
+32
-10
IRailInspectionEquipmentItemService.java
...tricData/service/IRailInspectionEquipmentItemService.java
+6
-0
RailInspectionEquipmentItemServiceImpl.java
.../service/impl/RailInspectionEquipmentItemServiceImpl.java
+25
-0
RailManagementController.java
...ules/deviceAsset/controller/RailManagementController.java
+2
-2
CurveManagement.java
...org/jeecg/modules/deviceAsset/entity/CurveManagement.java
+2
-2
RailManagementMapper.java
...eecg/modules/deviceAsset/mapper/RailManagementMapper.java
+5
-0
RailManagementMapper.xml
...g/modules/deviceAsset/mapper/xml/RailManagementMapper.xml
+45
-0
IRailManagementService.java
...g/modules/deviceAsset/service/IRailManagementService.java
+11
-1
RailManagementServiceImpl.java
...s/deviceAsset/service/impl/RailManagementServiceImpl.java
+134
-2
CurveManagementQueryVO.java
.../jeecg/modules/deviceAsset/vo/CurveManagementQueryVO.java
+4
-4
UnitCodeUtil.java
...m/src/main/java/org/jeecg/modules/utils/UnitCodeUtil.java
+30
-16
No files found.
jeecg-module-system/src/main/java/org/jeecg/modules/checkData/dynamicStaticGeometricData/controller/RailInspectionEquipmentItemController.java
View file @
abcb0a49
...
...
@@ -3,23 +3,21 @@ package org.jeecg.modules.checkData.dynamicStaticGeometricData.controller;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.*
;
import
org.jeecg.common.api.vo.Result
;
import
org.jeecg.common.aspect.annotation.AutoLog
;
import
org.jeecg.modules.checkData.dynamicStaticGeometricData.dto.RailInspectionEquipmentDTO
;
import
org.jeecg.modules.checkData.dynamicStaticGeometricData.entity.RailInspectionEquipmentItem
;
import
org.jeecg.modules.checkData.dynamicStaticGeometricData.entity.RailInspectionEquipmentItemDetailVO
;
import
org.jeecg.modules.checkData.dynamicStaticGeometricData.entity.RailInspectionEquipmentItemVO
;
import
org.jeecg.modules.checkData.dynamicStaticGeometricData.entity.RailInspectionEquipmentVO
;
import
org.jeecg.modules.checkData.dynamicStaticGeometricData.service.IRailInspectionEquipmentItemService
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.jeecg.common.system.base.controller.JeecgController
;
import
org.springframework.web.multipart.MultipartFile
;
import
javax.transaction.Transactional
;
import
java.util.List
;
/**
...
...
@@ -34,8 +32,8 @@ import java.util.List;
@RequestMapping
(
"/checkData/dynamicStaticGeometricData/railInspectionEquipmentItem"
)
public
class
RailInspectionEquipmentItemController
extends
JeecgController
<
RailInspectionEquipmentItem
,
IRailInspectionEquipmentItemService
>
{
@AutoLog
(
value
=
"检查数据-动静态几何尺寸数据-轨检仪静态检查数据-
分页
列表查询"
)
@ApiOperation
(
value
=
"检查数据-动静态几何尺寸数据-轨检仪静态检查数据-
分页列表查询"
,
notes
=
"检查数据-动静态几何尺寸数据-轨检仪静态检查数据-分页
列表查询"
)
@AutoLog
(
value
=
"检查数据-动静态几何尺寸数据-轨检仪静态检查数据-
项目
列表查询"
)
@ApiOperation
(
value
=
"检查数据-动静态几何尺寸数据-轨检仪静态检查数据-
项目列表查询"
,
notes
=
"检查数据-动静态几何尺寸数据-轨检仪静态检查数据-项目
列表查询"
)
@GetMapping
(
value
=
"/list"
)
@ApiImplicitParams
({
@ApiImplicitParam
(
name
=
"railInspectionEquipmentId"
,
value
=
"轨检仪静态检查数据id"
)
...
...
@@ -45,6 +43,30 @@ public class RailInspectionEquipmentItemController extends JeecgController<RailI
return
Result
.
OK
(
record
);
}
@AutoLog
(
value
=
"检查数据-动静态几何尺寸数据-轨检仪静态检查数据-项目明细列表"
)
@ApiOperation
(
value
=
"检查数据-动静态几何尺寸数据-轨检仪静态检查数据-项目明细列表"
,
notes
=
"检查数据-动静态几何尺寸数据-轨检仪静态检查数据-项目明细列表"
)
@GetMapping
(
value
=
"/detailList"
)
@ApiImplicitParams
({
@ApiImplicitParam
(
name
=
"railInspectionEquipmentItemId"
,
value
=
"轨检仪静态检查项目id"
)
})
public
Result
<
List
<
RailInspectionEquipmentItemDetailVO
>>
detailList
(
String
railInspectionEquipmentItemId
)
{
List
<
RailInspectionEquipmentItemDetailVO
>
record
=
this
.
service
.
detailList
(
railInspectionEquipmentItemId
);
return
Result
.
OK
(
record
);
}
@PostMapping
(
value
=
"/upload"
)
@AutoLog
(
value
=
"检查数据-动静态几何尺寸数据-轨检仪静态检查数据-导入"
)
@ApiOperation
(
value
=
"检查数据-动静态几何尺寸数据-轨检仪静态检查数据-导入"
,
notes
=
"检查数据-动静态几何尺寸数据-轨检仪静态检查数据-导入"
)
@ApiImplicitParams
({
@ApiImplicitParam
(
name
=
"railInspectionEquipmentId"
,
value
=
"轨检仪静态检查数据id"
),
@ApiImplicitParam
(
name
=
"file"
,
value
=
"文件"
),
})
public
Result
<
String
>
uploadFile
(
String
railInspectionEquipmentId
,
MultipartFile
file
)
{
this
.
service
.
uploadFile
(
railInspectionEquipmentId
,
file
);
return
Result
.
ok
(
"操作成功"
);
}
}
jeecg-module-system/src/main/java/org/jeecg/modules/checkData/dynamicStaticGeometricData/service/IRailInspectionEquipmentItemService.java
View file @
abcb0a49
...
...
@@ -2,7 +2,9 @@ package org.jeecg.modules.checkData.dynamicStaticGeometricData.service;
import
org.jeecg.modules.checkData.dynamicStaticGeometricData.entity.RailInspectionEquipmentItem
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
org.jeecg.modules.checkData.dynamicStaticGeometricData.entity.RailInspectionEquipmentItemDetailVO
;
import
org.jeecg.modules.checkData.dynamicStaticGeometricData.entity.RailInspectionEquipmentItemVO
;
import
org.springframework.web.multipart.MultipartFile
;
import
java.util.List
;
...
...
@@ -17,4 +19,8 @@ import java.util.List;
public
interface
IRailInspectionEquipmentItemService
extends
IService
<
RailInspectionEquipmentItem
>
{
List
<
RailInspectionEquipmentItemVO
>
queryList
(
String
railInspectionEquipmentId
);
void
uploadFile
(
String
railInspectionEquipmentId
,
MultipartFile
file
);
List
<
RailInspectionEquipmentItemDetailVO
>
detailList
(
String
railInspectionEquipmentItemId
);
}
jeecg-module-system/src/main/java/org/jeecg/modules/checkData/dynamicStaticGeometricData/service/impl/RailInspectionEquipmentItemServiceImpl.java
View file @
abcb0a49
package
org
.
jeecg
.
modules
.
checkData
.
dynamicStaticGeometricData
.
service
.
impl
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
org.jeecg.modules.checkData.dynamicStaticGeometricData.entity.RailInspectionEquipmentItem
;
import
org.jeecg.modules.checkData.dynamicStaticGeometricData.entity.RailInspectionEquipmentItemDetail
;
import
org.jeecg.modules.checkData.dynamicStaticGeometricData.entity.RailInspectionEquipmentItemDetailVO
;
import
org.jeecg.modules.checkData.dynamicStaticGeometricData.entity.RailInspectionEquipmentItemVO
;
import
org.jeecg.modules.checkData.dynamicStaticGeometricData.mapper.RailInspectionEquipmentItemDetailMapper
;
import
org.jeecg.modules.checkData.dynamicStaticGeometricData.mapper.RailInspectionEquipmentItemMapper
;
import
org.jeecg.modules.checkData.dynamicStaticGeometricData.service.IRailInspectionEquipmentItemService
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
org.springframework.stereotype.Service
;
import
org.springframework.web.multipart.MultipartFile
;
import
javax.annotation.Resource
;
import
java.util.List
;
/**
...
...
@@ -20,8 +26,27 @@ import java.util.List;
@Service
public
class
RailInspectionEquipmentItemServiceImpl
extends
ServiceImpl
<
RailInspectionEquipmentItemMapper
,
RailInspectionEquipmentItem
>
implements
IRailInspectionEquipmentItemService
{
@Resource
private
RailInspectionEquipmentItemDetailMapper
railInspectionEquipmentItemDetailMapper
;
@Override
public
List
<
RailInspectionEquipmentItemVO
>
queryList
(
String
railInspectionEquipmentId
)
{
return
this
.
baseMapper
.
queryList
(
railInspectionEquipmentId
);
}
@Override
public
void
uploadFile
(
String
railInspectionEquipmentId
,
MultipartFile
file
)
{
throw
new
NullPointerException
();
}
@Override
public
List
<
RailInspectionEquipmentItemDetailVO
>
detailList
(
String
railInspectionEquipmentItemId
)
{
LambdaQueryWrapper
<
RailInspectionEquipmentItemDetail
>
lambdaQueryWrapper
=
new
LambdaQueryWrapper
<>();
lambdaQueryWrapper
.
eq
(
RailInspectionEquipmentItemDetail:
:
getRailInspectionEquipmentItemId
,
railInspectionEquipmentItemId
);
List
<
RailInspectionEquipmentItemDetail
>
itemDetails
=
railInspectionEquipmentItemDetailMapper
.
selectList
(
lambdaQueryWrapper
);
return
null
;
}
}
jeecg-module-system/src/main/java/org/jeecg/modules/deviceAsset/controller/RailManagementController.java
View file @
abcb0a49
...
...
@@ -74,8 +74,8 @@ public class RailManagementController extends JeecgController<RailManagement, IR
@AutoLog
(
value
=
"资产管理-钢轨管理-智能生成"
)
@ApiOperation
(
value
=
"资产管理-钢轨管理-智能生成"
,
notes
=
"资产管理-钢轨管理-智能生成"
)
@GetMapping
(
value
=
"/intelligentGeneration"
)
public
Result
<
String
>
intelligentGeneration
(
@RequestParam
(
name
=
"ids"
,
required
=
true
)
String
ids
)
{
this
.
service
.
intelligentGeneration
();
public
Result
<
String
>
intelligentGeneration
()
{
this
.
service
.
intelligentGeneration
(
"1671390979417616386"
);
return
Result
.
OK
(
"生成成功"
);
}
...
...
jeecg-module-system/src/main/java/org/jeecg/modules/deviceAsset/entity/CurveManagement.java
View file @
abcb0a49
...
...
@@ -57,10 +57,10 @@ public class CurveManagement implements Serializable {
private
String
curveDeflectionAngle
;
@ApiModelProperty
(
value
=
"曲线半径R(m)"
)
private
BigDecimal
curve
A
dius
;
private
BigDecimal
curve
Ra
dius
;
@ApiModelProperty
(
value
=
"缓和曲线长I(m)"
)
private
BigDecimal
transitionCurveLen
;
private
String
transitionCurveLen
;
@ApiModelProperty
(
value
=
"切线长T(m)"
)
private
BigDecimal
tangentLen
;
...
...
jeecg-module-system/src/main/java/org/jeecg/modules/deviceAsset/mapper/RailManagementMapper.java
View file @
abcb0a49
...
...
@@ -6,6 +6,9 @@ import org.jeecg.modules.deviceAsset.entity.RailManagement;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
org.jeecg.modules.deviceAsset.vo.RailManagementVO
;
import
java.util.List
;
import
java.util.Map
;
/**
* <p>
* 资产管理-钢轨管理 Mapper 接口
...
...
@@ -17,4 +20,6 @@ import org.jeecg.modules.deviceAsset.vo.RailManagementVO;
public
interface
RailManagementMapper
extends
BaseMapper
<
RailManagement
>
{
Page
<
RailManagementVO
>
queryPageList
(
Page
<
RailManagementVO
>
pageData
,
RailManagementDTO
dto
);
List
<
Map
<
String
,
Object
>>
getLineSpecialRail
(
String
lineAliasId
);
}
jeecg-module-system/src/main/java/org/jeecg/modules/deviceAsset/mapper/xml/RailManagementMapper.xml
View file @
abcb0a49
...
...
@@ -27,4 +27,49 @@
</if>
</where>
</select>
<select
id=
"getLineSpecialRail"
resultType=
"java.util.Map"
>
SELECT
unitCode,
startMileage,
endMileage,
type
FROM
(
SELECT
t1.unit_code unitCode,
t1.curve_mileage_zh startMileage,
t1.curve_mileage_hz endMileage,
'曲线' type
FROM
t_da_curve_management t1
WHERE
t1.line_alias_id = #{lineAliasId}
UNION ALL
SELECT
unit_code unitCode,
starting_mileage startMileage,
end_mileage endMileage,
'竖曲线' type
FROM
t_da_vertical_curve_management
WHERE
line_alias_id = #{lineAliasId}
UNION ALL
SELECT
unit_code unitCode,
byroad_pre_mileage startMileage,
byroad_end_mileage endMileage,
'道岔' type
FROM
t_da_switch_management
WHERE
line_alias_id = #{lineAliasId}
) t
ORDER BY
t.startMileage
</select>
</mapper>
jeecg-module-system/src/main/java/org/jeecg/modules/deviceAsset/service/IRailManagementService.java
View file @
abcb0a49
...
...
@@ -6,6 +6,9 @@ import org.jeecg.modules.deviceAsset.entity.RailManagement;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
org.jeecg.modules.deviceAsset.vo.RailManagementVO
;
import
java.util.List
;
import
java.util.Map
;
/**
* <p>
* 资产管理-钢轨管理 服务类
...
...
@@ -20,5 +23,12 @@ public interface IRailManagementService extends IService<RailManagement> {
void
edit
(
RailManagement
railManagement
);
void
intelligentGeneration
();
void
intelligentGeneration
(
String
lightRailId
);
/**
* 获取线路的特殊钢轨
*
* @param lineAliasId 线别ID
*/
List
<
Map
<
String
,
Object
>>
getLineSpecialRail
(
String
lineAliasId
);
}
jeecg-module-system/src/main/java/org/jeecg/modules/deviceAsset/service/impl/RailManagementServiceImpl.java
View file @
abcb0a49
package
org
.
jeecg
.
modules
.
deviceAsset
.
service
.
impl
;
import
cn.hutool.core.convert.Convert
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.alibaba.fastjson.JSONObject
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
org.jeecg.common.util.UUIDGenerator
;
import
org.jeecg.modules.deviceAsset.dto.RailManagementDTO
;
import
org.jeecg.modules.deviceAsset.entity.RailManagement
;
import
org.jeecg.modules.deviceAsset.mapper.RailManagementMapper
;
import
org.jeecg.modules.deviceAsset.service.IRailManagementService
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
org.jeecg.modules.deviceAsset.vo.RailManagementVO
;
import
org.jeecg.modules.subwayNetwork.entity.LightRail
;
import
org.jeecg.modules.subwayNetwork.mapper.LightRailMapper
;
import
org.jeecg.modules.utils.UnitCodeUtil
;
import
org.springframework.stereotype.Service
;
import
javax.annotation.Resource
;
import
java.math.BigDecimal
;
import
java.math.RoundingMode
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Map
;
/**
* <p>
* 资产管理-钢轨管理 服务实现类
...
...
@@ -22,6 +35,14 @@ import org.springframework.stereotype.Service;
@Service
public
class
RailManagementServiceImpl
extends
ServiceImpl
<
RailManagementMapper
,
RailManagement
>
implements
IRailManagementService
{
/**
* 钢轨单元长度
*/
public
static
BigDecimal
UNIT_LENGTH
=
new
BigDecimal
(
"25"
);
@Resource
private
LightRailMapper
lightRailMapper
;
@Override
public
Page
<
RailManagementVO
>
queryPageList
(
Page
<
RailManagementVO
>
pageData
,
RailManagementDTO
dto
)
{
return
this
.
baseMapper
.
queryPageList
(
pageData
,
dto
);
...
...
@@ -39,8 +60,119 @@ public class RailManagementServiceImpl extends ServiceImpl<RailManagementMapper,
}
}
// 1.判断完整的线路有没有空白部分(指剩余区间既不是道岔、曲线、竖曲线、钢轨的部分),只需要填空白部分,空白部分一定是钢轨,按照25一根的逻辑余数自成一根;
// 2.如果不存在空白部分,则定义道岔曲线竖曲线为绝对正确里程值,并且定义为特殊钢轨,相邻两个特殊钢轨之间的里程区间按照25一根的逻辑余数自成一根。
@Override
public
void
intelligentGeneration
(
String
lightRailId
)
{
// 1.删除整条线的
this
.
lambdaUpdate
().
remove
();
// 2.查询当前车站的上下行里程
LightRail
lightRail
=
lightRailMapper
.
selectById
(
lightRailId
);
// 3.处理上行
// 3.1 查询上行所有里程数
List
<
RailManagement
>
allRailList
=
new
ArrayList
<>();
String
sdkId
=
"1"
;
// 上行线id
List
<
Map
<
String
,
Object
>>
lineSpecialRailList
=
this
.
getLineSpecialRail
(
sdkId
);
BigDecimal
lineStartMileage
=
BigDecimal
.
ZERO
;
BigDecimal
endMileage
=
lightRail
.
getUpLineMileage
();
// 3.2 循环处理
int
size
=
lineSpecialRailList
.
size
();
for
(
int
i
=
0
;
i
<
size
;
i
++)
{
Map
<
String
,
Object
>
currentMap
=
lineSpecialRailList
.
get
(
i
);
BigDecimal
currentStartMileage
=
Convert
.
toBigDecimal
(
currentMap
.
get
(
"startMileage"
));
// 3.2.1 第一次进入循环
if
(
i
==
0
)
{
if
(
currentStartMileage
.
subtract
(
lineStartMileage
).
compareTo
(
BigDecimal
.
ZERO
)
>
0
)
{
List
<
RailManagement
>
innerRailList
=
this
.
generate
(
lineStartMileage
,
currentStartMileage
,
sdkId
);
allRailList
.
addAll
(
innerRailList
);
}
continue
;
}
// 3.2.2 后一个的开始 - 前一个的结束时间 > 0 相当于有空白
Map
<
String
,
Object
>
frontMap
=
lineSpecialRailList
.
get
(
i
-
1
);
BigDecimal
frontEndMileage
=
Convert
.
toBigDecimal
(
frontMap
.
get
(
"endMileage"
));
if
(
currentStartMileage
.
subtract
(
frontEndMileage
).
compareTo
(
BigDecimal
.
ZERO
)
>
0
)
{
List
<
RailManagement
>
innerRailList
=
this
.
generate
(
frontEndMileage
,
currentStartMileage
,
sdkId
);
allRailList
.
addAll
(
innerRailList
);
}
// 3.2.3 最后一次循环
if
(
i
==
size
-
1
)
{
if
(
endMileage
.
subtract
(
currentStartMileage
).
compareTo
(
BigDecimal
.
ZERO
)
>
0
)
{
List
<
RailManagement
>
innerRailList
=
this
.
generate
(
currentStartMileage
,
endMileage
,
sdkId
);
allRailList
.
addAll
(
innerRailList
);
}
}
}
for
(
int
i
=
0
;
i
<
allRailList
.
size
();
i
++)
{
RailManagement
railManagement
=
allRailList
.
get
(
i
);
String
railCode
=
"钢轨[上行]"
+
UnitCodeUtil
.
supplementZero
(
4
,
i
+
1
);
railManagement
.
setRailCode
(
railCode
);
String
unitCode
=
"SXXGG"
+
UnitCodeUtil
.
supplementZero
(
4
,
i
+
1
);
railManagement
.
setUnitCode
(
unitCode
);
railManagement
.
setRailOrderNum
(
i
+
1
);
railManagement
.
setCreateTime
(
new
Date
());
railManagement
.
setUpdateTime
(
new
Date
());
}
this
.
saveBatch
(
allRailList
);
}
/**
* @param startMileage
* @param endMileage
* @param lineAliasId
* @return
*/
private
List
<
RailManagement
>
generate
(
BigDecimal
startMileage
,
BigDecimal
endMileage
,
String
lineAliasId
)
{
List
<
RailManagement
>
result
=
new
ArrayList
<>();
// 1.处理25米一段的钢轨
while
(
startMileage
.
add
(
UNIT_LENGTH
).
compareTo
(
endMileage
)
<
0
)
{
// 开始里程向后移动25米
BigDecimal
currentEndMileage
=
startMileage
.
add
(
UNIT_LENGTH
);
// 中心里程 = (开始里程+结束里程) / 2
BigDecimal
centerMileage
=
startMileage
.
add
(
currentEndMileage
).
divide
(
new
BigDecimal
(
"2"
),
3
,
RoundingMode
.
HALF_UP
);
RailManagement
railManagement
=
new
RailManagement
();
railManagement
.
setId
(
UUIDGenerator
.
generate
());
railManagement
.
setLineAliasId
(
lineAliasId
);
railManagement
.
setStartingMileage
(
startMileage
);
railManagement
.
setCenterMileage
(
centerMileage
);
railManagement
.
setEndMileage
(
currentEndMileage
);
result
.
add
(
railManagement
);
startMileage
=
currentEndMileage
;
}
// 2.处理不到25米一段的钢轨
RailManagement
railManagement
=
new
RailManagement
();
railManagement
.
setId
(
UUIDGenerator
.
generate
());
railManagement
.
setLineAliasId
(
lineAliasId
);
railManagement
.
setStartingMileage
(
startMileage
);
railManagement
.
setCenterMileage
(
startMileage
.
add
(
endMileage
).
divide
(
new
BigDecimal
(
"2"
),
3
,
RoundingMode
.
HALF_UP
));
// 中心里程 = (开始里程+结束里程) / 2
railManagement
.
setEndMileage
(
endMileage
);
result
.
add
(
railManagement
);
return
result
;
}
@Override
public
void
intelligentGeneration
(
)
{
throw
new
NullPointerException
(
);
public
List
<
Map
<
String
,
Object
>>
getLineSpecialRail
(
String
lineAliasId
)
{
return
this
.
baseMapper
.
getLineSpecialRail
(
lineAliasId
);
}
}
jeecg-module-system/src/main/java/org/jeecg/modules/deviceAsset/vo/CurveManagementQueryVO.java
View file @
abcb0a49
...
...
@@ -42,11 +42,11 @@ public class CurveManagementQueryVO implements Serializable {
@ApiModelProperty
(
"曲线偏角a(°′″)"
)
private
String
curveDeflectionAngle
;
@ApiModelProperty
(
"曲线半径R(m)"
)
private
BigDecimal
curve
A
dius
;
@ApiModelProperty
(
value
=
"曲线半径R(m)"
)
private
BigDecimal
curve
Ra
dius
;
@ApiModelProperty
(
"缓和曲线长I(m)"
)
private
BigDecimal
transitionCurveLen
;
@ApiModelProperty
(
value
=
"缓和曲线长I(m)"
)
private
String
transitionCurveLen
;
@ApiModelProperty
(
"切线长T(m)"
)
private
BigDecimal
tangentLen
;
...
...
jeecg-module-system/src/main/java/org/jeecg/modules/utils/UnitCodeUtil.java
View file @
abcb0a49
...
...
@@ -12,6 +12,9 @@ import org.jeecg.modules.deviceAsset.service.IVerticalCurveManagementService;
import
org.jeecg.modules.subwayNetwork.entity.LineAlias
;
import
org.jeecg.modules.subwayNetwork.service.ILineAliasService
;
import
java.util.List
;
import
java.util.Map
;
/**
* @describe:单元编码生成工具
*/
...
...
@@ -41,20 +44,20 @@ public class UnitCodeUtil {
/**
* 钢轨单元编码:线别码+GG+流水号(5位流水号)
* 实例:SXGG00001
*
SQX - 竖曲线
* 000
00
1-流水号
* 实例:SX
X
GG00001
*
GG - 钢轨编码
* 0001-流水号
*
* @param lineId 线别ID
*/
public
static
String
railUnitCodeUtil
(
String
lineId
)
{
// 获取线别拼音
LineAlias
lineAlias
=
lineAliasService
.
getById
(
lineId
);
String
lineAliasPinyin
=
PinyinUtil
.
getFirstLetter
(
lineAlias
.
getLineAliasName
(),
""
).
to
Low
erCase
();
String
lineAliasPinyin
=
PinyinUtil
.
getFirstLetter
(
lineAlias
.
getLineAliasName
(),
""
).
to
Upp
erCase
();
// 查询最大的编号
String
unitCode
=
lineAliasPinyin
+
"
SQX
"
;
String
unitCode
=
lineAliasPinyin
+
"
GG
"
;
RailManagement
record
=
railManagementService
.
lambdaQuery
()
.
likeRight
(
RailManagement:
:
getUnitCode
,
unitCode
)
.
orderByDesc
(
RailManagement:
:
getUnitCode
)
...
...
@@ -66,7 +69,7 @@ public class UnitCodeUtil {
Integer
serialNum
=
1
;
if
(
null
!=
record
&&
record
.
getUnitCode
()
!=
null
)
{
// 流水号+1
serialNum
=
Integer
.
parseInt
(
record
.
getUnitCode
().
substring
(
6
))
+
1
;
serialNum
=
Integer
.
parseInt
(
record
.
getUnitCode
().
substring
(
record
.
getUnitCode
().
length
()
-
4
))
+
1
;
}
String
serialNumStr
=
supplementZero
(
4
,
serialNum
);
...
...
@@ -74,17 +77,15 @@ public class UnitCodeUtil {
}
/**
* 曲线代码生成: 01SQX0001
* 01 - 上行;02-表示下行
* SQX - 竖曲线
* 000
00
1-流水号
* 0001-流水号
*
* @param lineId 线别ID
*/
public
static
String
verticalCurveUnitCodeUtil
(
String
lineId
)
{
// 获取线别拼音
LineAlias
lineAlias
=
lineAliasService
.
getById
(
lineId
);
String
lineAliasPinyin
=
PinyinUtil
.
getFirstLetter
(
lineAlias
.
getLineAliasName
(),
""
).
to
Low
erCase
();
String
lineAliasPinyin
=
PinyinUtil
.
getFirstLetter
(
lineAlias
.
getLineAliasName
(),
""
).
to
Upp
erCase
();
// 查询最大的编号
...
...
@@ -100,7 +101,7 @@ public class UnitCodeUtil {
Integer
serialNum
=
1
;
if
(
null
!=
record
&&
record
.
getUnitCode
()
!=
null
)
{
// 流水号+1
serialNum
=
Integer
.
parseInt
(
record
.
getUnitCode
().
substring
(
6
))
+
1
;
serialNum
=
Integer
.
parseInt
(
record
.
getUnitCode
().
substring
(
record
.
getUnitCode
().
length
()
-
4
))
+
1
;
}
String
serialNumStr
=
supplementZero
(
4
,
serialNum
);
...
...
@@ -109,7 +110,6 @@ public class UnitCodeUtil {
/**
* 曲线代码生成: L201QX0001
* 01 - 上行;02-表示下行
* QX - 曲线
* 000001-流水号
*
...
...
@@ -118,7 +118,7 @@ public class UnitCodeUtil {
public
static
String
curveUnitCodeUtil
(
String
lineId
)
{
// 获取线别拼音
LineAlias
lineAlias
=
lineAliasService
.
getById
(
lineId
);
String
lineAliasPinyin
=
PinyinUtil
.
getFirstLetter
(
lineAlias
.
getLineAliasName
(),
""
).
to
Low
erCase
();
String
lineAliasPinyin
=
PinyinUtil
.
getFirstLetter
(
lineAlias
.
getLineAliasName
(),
""
).
to
Upp
erCase
();
// 查询最大的编号
...
...
@@ -133,7 +133,7 @@ public class UnitCodeUtil {
Integer
serialNum
=
1
;
if
(
null
!=
record
&&
record
.
getUnitCode
()
!=
null
)
{
// 流水号+1
serialNum
=
Integer
.
parseInt
(
record
.
getUnitCode
().
substring
(
6
))
+
1
;
serialNum
=
Integer
.
parseInt
(
record
.
getUnitCode
().
substring
(
record
.
getUnitCode
().
length
()
-
4
))
+
1
;
}
String
serialNumStr
=
supplementZero
(
4
,
serialNum
);
...
...
@@ -151,7 +151,7 @@ public class UnitCodeUtil {
public
static
String
switchUnitCodeUtil
(
String
lineId
)
{
// 获取线别拼音
LineAlias
lineAlias
=
lineAliasService
.
getById
(
lineId
);
String
lineAliasPinyin
=
PinyinUtil
.
getFirstLetter
(
lineAlias
.
getLineAliasName
(),
""
).
to
Low
erCase
();
String
lineAliasPinyin
=
PinyinUtil
.
getFirstLetter
(
lineAlias
.
getLineAliasName
(),
""
).
to
Upp
erCase
();
// 查询最大的编号
...
...
@@ -166,7 +166,7 @@ public class UnitCodeUtil {
Integer
serialNum
=
1
;
if
(
null
!=
record
&&
record
.
getUnitCode
()
!=
null
)
{
// 流水号+1
serialNum
=
Integer
.
parseInt
(
record
.
getUnitCode
().
substring
(
6
))
+
1
;
serialNum
=
Integer
.
parseInt
(
record
.
getUnitCode
().
substring
(
record
.
getUnitCode
().
length
()
-
4
))
+
1
;
}
String
serialNumStr
=
supplementZero
(
4
,
serialNum
);
...
...
@@ -184,4 +184,18 @@ public class UnitCodeUtil {
return
String
.
format
(
"%0"
+
numLength
+
"d"
,
num
);
}
/**
* 钢轨智能单元生成
*
* @param lineAliasId 线别ID
*/
public
static
void
railIntelligentGeneration
(
String
lineAliasId
)
{
List
<
Map
<
String
,
Object
>>
lineSpecialRail
=
railManagementService
.
getLineSpecialRail
(
lineAliasId
);
// 1.判断完整的线路有没有空白部分(指剩余区间既不是道岔、曲线、竖曲线、钢轨的部分),只需要填空白部分,空白部分一定是钢轨,按照25一根的逻辑余数自成一根;
// 2.如果不存在空白部分,则定义道岔曲线竖曲线为绝对正确里程值,并且定义为特殊钢轨,相邻两个特殊钢轨之间的里程区间按照25一根的逻辑余数自成一根。
}
}
\ No newline at end of file
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