Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
H
HYH.APSJ
Project
Project
Details
Activity
Releases
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
佟礼
HYH.APSJ
Commits
2c8b8b29
Commit
2c8b8b29
authored
Dec 12, 2025
by
DESKTOP-VKRD9QF\Administration
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
场景修改
parent
1a1e87d2
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
675 additions
and
240 deletions
+675
-240
LanuchController.java
src/main/java/com/aps/controller/LanuchController.java
+23
-21
ResourceGanttController.java
...ava/com/aps/controller/gantt/ResourceGanttController.java
+216
-209
DiscreteParameterDuration.java
src/main/java/com/aps/entity/DiscreteParameterDuration.java
+1
-1
LanuchServiceImpl.java
src/main/java/com/aps/service/impl/LanuchServiceImpl.java
+10
-7
PlanResultService.java
src/main/java/com/aps/service/plan/PlanResultService.java
+3
-2
DiscreteParameterDurationTest.java
...test/java/com/aps/demo/DiscreteParameterDurationTest.java
+422
-0
No files found.
src/main/java/com/aps/controller/LanuchController.java
View file @
2c8b8b29
...
@@ -11,7 +11,6 @@ import io.swagger.v3.oas.annotations.tags.Tag;
...
@@ -11,7 +11,6 @@ import io.swagger.v3.oas.annotations.tags.Tag;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.*
;
import
java.time.LocalDateTime
;
import
java.util.List
;
import
java.util.List
;
@RestController
@RestController
...
@@ -30,25 +29,23 @@ public class LanuchController {
...
@@ -30,25 +29,23 @@ public class LanuchController {
/**
/**
* 启动工单
* 启动工单
*
*
* @param scene
Name
场景名称
* @param scene
Id
场景名称
* @param user
name
用户名
* @param user
Id
用户名
* @return 处理结果
* @return 处理结果
*/
*/
@PostMapping
(
"/execute"
)
@PostMapping
(
"/execute"
)
public
R
<
String
>
lanuch
(
public
R
<
String
>
lanuch
(
@RequestParam
String
sceneName
,
@RequestParam
String
sceneId
,
@RequestHeader
(
required
=
false
)
String
username
)
{
@RequestHeader
(
required
=
false
)
String
userId
)
{
if
(
username
==
null
||
username
.
isEmpty
())
{
username
=
"system"
;
}
return
lanuchService
.
lanuch
(
scene
Name
,
username
);
return
lanuchService
.
lanuch
(
scene
Id
,
userId
);
}
}
@GetMapping
(
"/schedule"
)
@GetMapping
(
"/schedule"
)
public
Chromosome
schedule
(
@RequestParam
String
sceneI
D
,
@RequestParam
LocalDateTime
baseTime
)
{
public
Chromosome
schedule
(
@RequestParam
String
sceneI
d
)
{
// 调用 PlanResultService 获取 ScheduleChromosome 列表
// 调用 PlanResultService 获取 ScheduleChromosome 列表
Chromosome
scheduleChromosomes
=
planResultService
.
schedule
(
sceneI
D
,
baseTime
);
Chromosome
scheduleChromosomes
=
planResultService
.
schedule
(
sceneI
d
);
// 提取所有场景ID
// 提取所有场景ID
return
scheduleChromosomes
;
return
scheduleChromosomes
;
...
@@ -57,31 +54,36 @@ public class LanuchController {
...
@@ -57,31 +54,36 @@ public class LanuchController {
@PostMapping
(
"/copyScene"
)
@PostMapping
(
"/copyScene"
)
public
R
<
String
>
copyScene
(
public
R
<
String
>
copyScene
(
@RequestParam
String
newSceneName
,
@RequestParam
String
oldSceneName
,
@RequestParam
String
newSceneId
,
@RequestParam
String
oldSceneId
,
@RequestHeader
(
required
=
false
)
String
username
)
{
@RequestHeader
(
required
=
false
)
String
userId
)
{
if
(
username
==
null
||
username
.
isEmpty
())
{
username
=
"system"
;
}
return
lanuchService
.
copyScene
(
oldSceneName
,
username
,
newSceneName
);
return
lanuchService
.
copyScene
(
oldSceneId
,
userId
,
newSceneId
);
}
}
@GetMapping
(
"/exportPlan"
)
@GetMapping
(
"/exportPlan"
)
public
R
<
String
>
exportPlan
(
@RequestParam
String
sceneI
D
)
{
public
R
<
String
>
exportPlan
(
@RequestParam
String
sceneI
d
)
{
// 调用 PlanResultService 获取 ScheduleChromosome 列表
// 调用 PlanResultService 获取 ScheduleChromosome 列表
return
lanuchService
.
exportPlan
(
sceneI
D
);
return
lanuchService
.
exportPlan
(
sceneI
d
);
}
}
@GetMapping
(
"/deleteScene"
)
@GetMapping
(
"/deleteScene"
)
public
R
<
Boolean
>
deleteScene
(
@RequestParam
String
sceneI
D
)
{
public
R
<
Boolean
>
deleteScene
(
@RequestParam
String
sceneI
d
)
{
// 调用 PlanResultService 获取 ScheduleChromosome 列表
// 调用 PlanResultService 获取 ScheduleChromosome 列表
return
R
.
ok
(
prodSceneConfigService
.
deleteSceneById
(
sceneI
D
));
return
R
.
ok
(
prodSceneConfigService
.
deleteSceneById
(
sceneI
d
));
}
}
@GetMapping
(
"/getAllScene"
)
public
R
<
List
<
ProdSceneConfig
>>
getAllScene
(
@RequestParam
String
userId
)
{
// 调用 PlanResultService 获取 ScheduleChromosome 列表
return
R
.
ok
(
prodSceneConfigService
.
lambdaQuery
()
.
eq
(
ProdSceneConfig:
:
getCreateUser
,
userId
)
.
list
());
}
}
}
\ No newline at end of file
src/main/java/com/aps/controller/gantt/ResourceGanttController.java
View file @
2c8b8b29
...
@@ -488,7 +488,7 @@ public class ResourceGanttController {
...
@@ -488,7 +488,7 @@ public class ResourceGanttController {
// 转换为 ResourceGanttVO 格式
// 转换为 ResourceGanttVO 格式
List
<
ResourceGanttVO
>
resourceGanttVOList
=
new
ArrayList
<>();
List
<
ResourceGanttVO
>
resourceGanttVOList
=
new
ArrayList
<>();
List
<
ResourceGanttVO
>
resourceGanttVOs
=
convertToResourceGanttVO1
(
schedule
);
List
<
ResourceGanttVO
>
resourceGanttVOs
=
convertToResourceGanttVO1
(
schedule
,
sceneId
);
resourceGanttVOList
.
addAll
(
resourceGanttVOs
);
resourceGanttVOList
.
addAll
(
resourceGanttVOs
);
return
resourceGanttVOList
;
return
resourceGanttVOList
;
...
@@ -497,10 +497,13 @@ public class ResourceGanttController {
...
@@ -497,10 +497,13 @@ public class ResourceGanttController {
private
List
<
ResourceGanttVO
>
convertToResourceGanttVO1
(
Chromosome
scheduleChromosome
)
{
private
List
<
ResourceGanttVO
>
convertToResourceGanttVO1
(
Chromosome
scheduleChromosome
,
String
sceneId
)
{
List
<
ResourceGanttVO
>
resourceGanttVOList
=
new
ArrayList
<>();
List
<
ResourceGanttVO
>
resourceGanttVOList
=
new
ArrayList
<>();
List
<
Machine
>
machineList
=
planResultService
.
InitCalendarToAllMachines1
(
scheduleChromosome
.
getScenarioID
());
List
<
Machine
>
machineList
=
planResultService
.
InitCalendarToAllMachines1
(
sceneId
);
// 遍历所有机器资源
// 遍历所有机器资源
if
(
machineList
!=
null
)
{
if
(
machineList
!=
null
)
{
for
(
int
i
=
0
;
i
<
machineList
.
size
();
i
++)
{
for
(
int
i
=
0
;
i
<
machineList
.
size
();
i
++)
{
...
@@ -508,14 +511,16 @@ public class ResourceGanttController {
...
@@ -508,14 +511,16 @@ public class ResourceGanttController {
ResourceGanttVO
resourceGanttVO
=
new
ResourceGanttVO
();
ResourceGanttVO
resourceGanttVO
=
new
ResourceGanttVO
();
resourceGanttVO
.
setId
(
machine
.
getId
());
resourceGanttVO
.
setId
(
machine
.
getId
());
resourceGanttVO
.
setName
(
machine
.
getId
()
+
"号设备"
);
resourceGanttVO
.
setName
(
machine
.
getId
()
+
"号设备"
);
resourceGanttVO
.
setShift
(
convertToVO
(
machine
));
resourceGanttVO
.
setShift
(
convertToVO
(
machine
));
// 转换任务列表
// 转换任务列表
List
<
TaskVO
>
taskVOList
=
new
ArrayList
<>();
List
<
TaskVO
>
taskVOList
=
new
ArrayList
<>();
if
(
scheduleChromosome
.
getResult
()
!=
null
)
{
if
(
scheduleChromosome
!=
null
){
if
(
scheduleChromosome
.
getResult
()
!=
null
)
{
// 筛选出属于当前设备的任务
// 筛选出属于当前设备的任务
List
<
GAScheduleResult
>
machineGenes
=
scheduleChromosome
.
getResult
().
stream
()
List
<
GAScheduleResult
>
machineGenes
=
scheduleChromosome
.
getResult
().
stream
()
.
filter
(
gene
->
gene
.
getMachineId
()==
(
machine
.
getId
()))
.
filter
(
gene
->
gene
.
getMachineId
()
==
(
machine
.
getId
()))
.
collect
(
Collectors
.
toList
());
.
collect
(
Collectors
.
toList
());
// 按开始时间排序
// 按开始时间排序
...
@@ -567,10 +572,9 @@ public class ResourceGanttController {
...
@@ -567,10 +572,9 @@ public class ResourceGanttController {
taskVO
.
setAbsolutePreparationTime
(
gene
.
getTeardownTime
());
taskVO
.
setAbsolutePreparationTime
(
gene
.
getTeardownTime
());
}
}
}
}
}
resourceGanttVO
.
setList
(
taskVOList
);
resourceGanttVO
.
setList
(
taskVOList
);
resourceGanttVOList
.
add
(
resourceGanttVO
);
resourceGanttVOList
.
add
(
resourceGanttVO
);
}
}
...
@@ -592,6 +596,9 @@ public class ResourceGanttController {
...
@@ -592,6 +596,9 @@ public class ResourceGanttController {
List
<
ProductGanttVO
>
productGanttVOList
=
new
ArrayList
<>();
List
<
ProductGanttVO
>
productGanttVOList
=
new
ArrayList
<>();
// 按产品ID和工单ID分组基因
// 按产品ID和工单ID分组基因
if
(
scheduleChromosome
!=
null
)
{
if
(
scheduleChromosome
.
getResult
()
!=
null
)
{
if
(
scheduleChromosome
.
getResult
()
!=
null
)
{
// 按工单ID分组
// 按工单ID分组
scheduleChromosome
.
getResult
().
stream
()
scheduleChromosome
.
getResult
().
stream
()
...
@@ -601,17 +608,17 @@ public class ResourceGanttController {
...
@@ -601,17 +608,17 @@ public class ResourceGanttController {
ProductGanttVO
productGanttVO
=
new
ProductGanttVO
();
ProductGanttVO
productGanttVO
=
new
ProductGanttVO
();
GAScheduleResult
firstGene
=
genes
.
get
(
0
);
GAScheduleResult
firstGene
=
genes
.
get
(
0
);
productGanttVO
.
setId
(
firstGene
.
getOrderId
());
productGanttVO
.
setId
(
firstGene
.
getOrderId
());
productGanttVO
.
setProductName
(
"产品"
+
firstGene
.
getProductId
());
// 默认值,实际应从订单数据获取
productGanttVO
.
setProductName
(
"产品"
+
firstGene
.
getProductId
());
// 默认值,实际应从订单数据获取
productGanttVO
.
setProductType
(
0
);
productGanttVO
.
setProductType
(
0
);
productGanttVO
.
setProductId
(
firstGene
.
getProductId
());
productGanttVO
.
setProductId
(
firstGene
.
getProductId
());
// 计算总数量(假设同一批次)
// 计算总数量(假设同一批次)
productGanttVO
.
setQuantity
(
firstGene
.
getQuantity
());
productGanttVO
.
setQuantity
(
firstGene
.
getQuantity
());
productGanttVO
.
setCode
(
"编号"
+
firstGene
.
getProductId
());
// 默认值
productGanttVO
.
setCode
(
"编号"
+
firstGene
.
getProductId
());
// 默认值
productGanttVO
.
setShopId
(
firstGene
.
getMachineId
());
// 默认值
productGanttVO
.
setShopId
(
firstGene
.
getMachineId
());
// 默认值
productGanttVO
.
setShopName
(
firstGene
.
getMachineId
()+
"号线"
);
// 默认值
productGanttVO
.
setShopName
(
firstGene
.
getMachineId
()
+
"号线"
);
// 默认值
productGanttVO
.
setStatus
(
"已发布"
);
productGanttVO
.
setStatus
(
"已发布"
);
// productGanttVO.setHeaderId(firstGene.getProductId());
// productGanttVO.setHeaderId(firstGene.getProductId());
productGanttVO
.
setHeaderName
(
"工艺"
+
firstGene
.
getProductId
());
// 默认值
productGanttVO
.
setHeaderName
(
"工艺"
+
firstGene
.
getProductId
());
// 默认值
// 计算开始和结束时间
// 计算开始和结束时间
int
minStartTime
=
genes
.
stream
()
int
minStartTime
=
genes
.
stream
()
...
@@ -637,7 +644,7 @@ public class ResourceGanttController {
...
@@ -637,7 +644,7 @@ public class ResourceGanttController {
taskVO
.
setId
(
gene
.
getOrderId
());
// 生成唯一ID
taskVO
.
setId
(
gene
.
getOrderId
());
// 生成唯一ID
taskVO
.
setPlanId
(
String
.
valueOf
(
orderId
));
taskVO
.
setPlanId
(
String
.
valueOf
(
orderId
));
taskVO
.
setProductType
(
0
);
taskVO
.
setProductType
(
0
);
taskVO
.
setProductName
(
"产品"
+
gene
.
getProductId
());
taskVO
.
setProductName
(
"产品"
+
gene
.
getProductId
());
taskVO
.
setProductId
(
String
.
valueOf
(
gene
.
getProductId
()));
taskVO
.
setProductId
(
String
.
valueOf
(
gene
.
getProductId
()));
taskVO
.
setQuantity
(
gene
.
getQuantity
());
taskVO
.
setQuantity
(
gene
.
getQuantity
());
taskVO
.
setStart
(
scheduleChromosome
.
getBaseTime
().
plusSeconds
(
gene
.
getStartTime
()));
taskVO
.
setStart
(
scheduleChromosome
.
getBaseTime
().
plusSeconds
(
gene
.
getStartTime
()));
...
@@ -653,11 +660,11 @@ public class ResourceGanttController {
...
@@ -653,11 +660,11 @@ public class ResourceGanttController {
scheduleChromosome
.
getBaseTime
().
plusMinutes
(
gene
.
getEndTime
())));
scheduleChromosome
.
getBaseTime
().
plusMinutes
(
gene
.
getEndTime
())));
taskVO
.
setEquipId
(
gene
.
getMachineId
());
// 生成设备ID
taskVO
.
setEquipId
(
gene
.
getMachineId
());
// 生成设备ID
taskVO
.
setShopId
(
gene
.
getMachineId
());
taskVO
.
setShopId
(
gene
.
getMachineId
());
taskVO
.
setShopName
(
gene
.
getMachineId
()+
"车间"
);
taskVO
.
setShopName
(
gene
.
getMachineId
()
+
"车间"
);
taskVO
.
setStatus
(
0
);
taskVO
.
setStatus
(
0
);
// taskVO.setDetailId((long) gene.getProductId() * 1000 + gene.getOperationId());
// taskVO.setDetailId((long) gene.getProductId() * 1000 + gene.getOperationId());
// taskVO.setHeaderId(gene.getProductId());
// taskVO.setHeaderId(gene.getProductId());
taskVO
.
setHeaderName
(
"工艺"
+
gene
.
getProductId
());
taskVO
.
setHeaderName
(
"工艺"
+
gene
.
getProductId
());
// taskVO.setSeq(gene.getSequenceId());
// taskVO.setSeq(gene.getSequenceId());
// taskVO.setSeqName("工序名称"+gene.getSequenceId());
// taskVO.setSeqName("工序名称"+gene.getSequenceId());
// taskVO.setAbsoluteStart(scheduleChromosome.getBaseTime().plusMinutes(gene.getStartTime()));
// taskVO.setAbsoluteStart(scheduleChromosome.getBaseTime().plusMinutes(gene.getStartTime()));
...
@@ -671,7 +678,7 @@ public class ResourceGanttController {
...
@@ -671,7 +678,7 @@ public class ResourceGanttController {
}
}
});
});
}
}
}
return
productGanttVOList
;
return
productGanttVOList
;
}
}
...
...
src/main/java/com/aps/entity/DiscreteParameterDuration.java
View file @
2c8b8b29
...
@@ -28,7 +28,7 @@ private Long equipid;
...
@@ -28,7 +28,7 @@ private Long equipid;
private
String
equipname
;
private
String
equipname
;
private
Long
measureparameterid
;
private
Long
measureparameterid
;
private
String
measureparametername
;
private
String
measureparametername
;
private
BigDecimal
measureduration
;
private
Long
measureduration
;
private
String
measureunit
;
private
String
measureunit
;
private
Long
measureunitid
;
private
Long
measureunitid
;
private
BigDecimal
duration
;
private
BigDecimal
duration
;
...
...
src/main/java/com/aps/service/impl/LanuchServiceImpl.java
View file @
2c8b8b29
...
@@ -99,7 +99,7 @@ public class LanuchServiceImpl implements LanuchService {
...
@@ -99,7 +99,7 @@ public class LanuchServiceImpl implements LanuchService {
// 1. 创建场景
// 1. 创建场景
String
sceneId
=
createScene
(
sceneName
);
String
sceneId
=
createScene
(
sceneName
,
username
);
if
(
sceneId
==
null
)
{
if
(
sceneId
==
null
)
{
return
R
.
failed
(
"场景名称已存在"
);
return
R
.
failed
(
"场景名称已存在"
);
}
}
...
@@ -170,7 +170,7 @@ public class LanuchServiceImpl implements LanuchService {
...
@@ -170,7 +170,7 @@ public class LanuchServiceImpl implements LanuchService {
return
R
.
failed
(
"源场景不存在"
);
return
R
.
failed
(
"源场景不存在"
);
}
}
// 创建场景
// 创建场景
String
newSceneId
=
createScene
(
newSceneName
);
String
newSceneId
=
createScene
(
newSceneName
,
username
);
if
(
newSceneId
==
null
)
{
if
(
newSceneId
==
null
)
{
return
R
.
failed
(
"场景名称已存在"
);
return
R
.
failed
(
"场景名称已存在"
);
}
}
...
@@ -346,13 +346,13 @@ public class LanuchServiceImpl implements LanuchService {
...
@@ -346,13 +346,13 @@ public class LanuchServiceImpl implements LanuchService {
launchOrder
.
setSerie
(
order
.
getSeries
());
launchOrder
.
setSerie
(
order
.
getSeries
());
launchOrder
.
setCreateUser
(
String
.
valueOf
(
order
.
getCreatoruserid
()));
launchOrder
.
setCreateUser
(
String
.
valueOf
(
order
.
getCreatoruserid
()));
launchOrder
.
setMaterialCode
(
order
.
getMmcode
());
launchOrder
.
setMaterialCode
(
order
.
getMmcode
());
launchOrder
.
setStartDate
(
order
.
getBegintime
()
);
// launchOrder.setStartDate(order.get
);
launchOrder
.
setEndDate
(
order
.
getDeliverytime
());
launchOrder
.
setEndDate
(
order
.
getDeliverytime
());
//
launchOrder.setOrderPriority(order.getPrioritry());
//
launchOrder.setOrderPriority(order.getPrioritry());
launchOrder
.
setOrderPriority
(
1
);
launchOrder
.
setOrderPriority
(
1
);
launchOrder
.
setQuantity
(
order
.
getQuantity
());
launchOrder
.
setQuantity
(
order
.
getQuantity
());
launchOrder
.
setMaterialId
(
order
.
getMmid
());
launchOrder
.
setMaterialId
(
order
.
getMmid
());
launchOrder
.
setOrderCode
(
order
.
getCode
());
String
mmid
=
order
.
getMmid
();
String
mmid
=
order
.
getMmid
();
// // 通过mmid查找对应的工艺
// // 通过mmid查找对应的工艺
// if (mmid != null && !mmid.isEmpty()) {
// if (mmid != null && !mmid.isEmpty()) {
...
@@ -388,7 +388,7 @@ public class LanuchServiceImpl implements LanuchService {
...
@@ -388,7 +388,7 @@ public class LanuchServiceImpl implements LanuchService {
◦ @return 场景ID,如果场景已存在则返回null
◦ @return 场景ID,如果场景已存在则返回null
*/
*/
private
String
createScene
(
String
sceneName
)
{
private
String
createScene
(
String
sceneName
,
String
userId
)
{
// 检查场景名称是否已存在
// 检查场景名称是否已存在
boolean
exists
=
prodSceneConfigService
.
lambdaQuery
()
boolean
exists
=
prodSceneConfigService
.
lambdaQuery
()
.
eq
(
ProdSceneConfig:
:
getSceneName
,
sceneName
)
.
eq
(
ProdSceneConfig:
:
getSceneName
,
sceneName
)
...
@@ -406,7 +406,7 @@ public class LanuchServiceImpl implements LanuchService {
...
@@ -406,7 +406,7 @@ public class LanuchServiceImpl implements LanuchService {
sceneConfig
.
setSceneName
(
sceneName
);
sceneConfig
.
setSceneName
(
sceneName
);
sceneConfig
.
setSceneStatus
((
short
)
1
);
sceneConfig
.
setSceneStatus
((
short
)
1
);
sceneConfig
.
setCreateTime
(
LocalDateTime
.
now
());
sceneConfig
.
setCreateTime
(
LocalDateTime
.
now
());
sceneConfig
.
setCreateUser
(
userId
);
prodSceneConfigService
.
save
(
sceneConfig
);
prodSceneConfigService
.
save
(
sceneConfig
);
log
.
info
(
"创建新场景成功,场景ID:{},名称:{}"
,
sceneId
,
sceneName
);
log
.
info
(
"创建新场景成功,场景ID:{},名称:{}"
,
sceneId
,
sceneName
);
...
@@ -1190,4 +1190,7 @@ public class LanuchServiceImpl implements LanuchService {
...
@@ -1190,4 +1190,7 @@ public class LanuchServiceImpl implements LanuchService {
}
}
}
}
\ No newline at end of file
src/main/java/com/aps/service/plan/PlanResultService.java
View file @
2c8b8b29
...
@@ -493,12 +493,13 @@ order.setDueDate(LocalDateTime.of(2025, 12, 1,0,0,0));
...
@@ -493,12 +493,13 @@ order.setDueDate(LocalDateTime.of(2025, 12, 1,0,0,0));
public
Chromosome
schedule
(
String
SceneId
,
LocalDateTime
baseTime
)
{
public
Chromosome
schedule
(
String
SceneId
)
{
try
{
try
{
ScheduleParams
param
=
new
ScheduleParams
();
ScheduleParams
param
=
new
ScheduleParams
();
param
.
setBaseTime
(
baseTime
);
//
param.setBaseTime(baseTime);
param
.
setBaseTime
(
LocalDateTime
.
of
(
2025
,
11
,
1
,
0
,
0
,
0
));
// 1. 读取数据
// 1. 读取数据
...
...
src/test/java/com/aps/demo/DiscreteParameterDurationTest.java
0 → 100644
View file @
2c8b8b29
This diff is collapsed.
Click to expand it.
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