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
d3e54c0e
Commit
d3e54c0e
authored
Feb 03, 2026
by
DESKTOP-VKRD9QF\Administration
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
下发修改
parent
6717a371
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
71 additions
and
14 deletions
+71
-14
ResourceGanttController.java
...ava/com/aps/controller/gantt/ResourceGanttController.java
+3
-2
OrderMaterialRequirement.java
...va/com/aps/entity/Algorithm/OrderMaterialRequirement.java
+3
-0
ProdSceneConfig.java
src/main/java/com/aps/entity/ProdSceneConfig.java
+2
-0
Entry.java
src/main/java/com/aps/entity/basic/Entry.java
+5
-5
LanuchServiceImpl.java
src/main/java/com/aps/service/impl/LanuchServiceImpl.java
+54
-3
PlanResultService.java
src/main/java/com/aps/service/plan/PlanResultService.java
+4
-4
No files found.
src/main/java/com/aps/controller/gantt/ResourceGanttController.java
View file @
d3e54c0e
...
@@ -868,16 +868,17 @@ public class ResourceGanttController {
...
@@ -868,16 +868,17 @@ public class ResourceGanttController {
mediaType
=
"application/json"
,
mediaType
=
"application/json"
,
examples
=
@io
.
swagger
.
v3
.
oas
.
annotations
.
media
.
ExampleObject
(
examples
=
@io
.
swagger
.
v3
.
oas
.
annotations
.
media
.
ExampleObject
(
name
=
"获取供给关系示例"
,
name
=
"获取供给关系示例"
,
value
=
"{\n \"sceneId\": \"
B571EF6682DB463AB2977B1055A74112\",\n \"entryId\": 472
\n}"
value
=
"{\n \"sceneId\": \"
7044578FAF8D488B96197ED77920CFBA\",\n \"id\": 6
\n}"
)
)
)
)
)
)
)
)
public
R
<
SupplyRelationResponse
>
getSupplyRelation
(
@RequestBody
Map
<
String
,
Object
>
params
)
{
public
R
<
SupplyRelationResponse
>
getSupplyRelation
(
@RequestBody
Map
<
String
,
Object
>
params
)
{
log
.
info
(
"getSupplyRelation 请求参数: {}"
,
params
);
log
.
info
(
"getSupplyRelation 请求参数: {}"
,
params
);
// 提取参数
// 提取参数
String
sceneId
=
ParamValidator
.
getString
(
params
,
"sceneId"
,
"场景ID"
);
String
sceneId
=
ParamValidator
.
getString
(
params
,
"sceneId"
,
"场景ID"
);
Integer
entryId
=
ParamValidator
.
getInteger
(
params
,
"
entryI
d"
,
"工序ID"
);
Integer
entryId
=
ParamValidator
.
getInteger
(
params
,
"
i
d"
,
"工序ID"
);
// ParamValidator.validateSceneExists(sceneService, sceneId);
// ParamValidator.validateSceneExists(sceneService, sceneId);
// 调用服务获取供给关系
// 调用服务获取供给关系
...
...
src/main/java/com/aps/entity/Algorithm/OrderMaterialRequirement.java
View file @
d3e54c0e
...
@@ -23,6 +23,9 @@ public class OrderMaterialRequirement {
...
@@ -23,6 +23,9 @@ public class OrderMaterialRequirement {
private
String
materialCode
;
private
String
materialCode
;
private
String
materialName
;
private
String
materialName
;
private
String
materialTypeName
;
private
String
materialTypeName
;
@TableField
(
exist
=
false
)
private
String
bomId
;
private
String
bomId
;
/**
/**
* 物料类型
* 物料类型
...
...
src/main/java/com/aps/entity/ProdSceneConfig.java
View file @
d3e54c0e
package
com
.
aps
.
entity
;
package
com
.
aps
.
entity
;
import
lombok.Data
;
import
lombok.Data
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
...
@@ -9,6 +10,7 @@ import java.time.LocalDateTime;
...
@@ -9,6 +10,7 @@ import java.time.LocalDateTime;
public
class
ProdSceneConfig
{
public
class
ProdSceneConfig
{
@TableId
private
String
sceneId
;
private
String
sceneId
;
private
String
sceneName
;
private
String
sceneName
;
private
String
sceneDesc
;
private
String
sceneDesc
;
...
...
src/main/java/com/aps/entity/basic/Entry.java
View file @
d3e54c0e
...
@@ -32,14 +32,14 @@ public class Entry {
...
@@ -32,14 +32,14 @@ public class Entry {
* 所属组ID 需要按照前后顺序生产的工单给一组
* 所属组ID 需要按照前后顺序生产的工单给一组
*/
*/
public
int
GroupId
;
public
int
GroupId
;
/**
* 原订单ID
*/
public
String
OrderId
;
public
String
OrderId
;
public
String
OrderCode
;
public
String
OrderCode
;
/**
* 原订单ID
*/
public
String
SceneId
;
public
String
SceneId
;
private
Integer
routingId
;
private
Integer
routingId
;
private
String
routingCode
;
private
String
routingCode
;
...
@@ -73,7 +73,7 @@ public class Entry {
...
@@ -73,7 +73,7 @@ public class Entry {
*/
*/
public
double
Priority
=
1
;
public
double
Priority
=
1
;
/**
/**
*
基因编号
*
数量
*/
*/
public
double
Quantity
;
public
double
Quantity
;
/**
/**
...
...
src/main/java/com/aps/service/impl/LanuchServiceImpl.java
View file @
d3e54c0e
...
@@ -204,12 +204,30 @@ public class LanuchServiceImpl implements LanuchService {
...
@@ -204,12 +204,30 @@ public class LanuchServiceImpl implements LanuchService {
throw
new
RuntimeException
(
"未找到排程结果"
);
throw
new
RuntimeException
(
"未找到排程结果"
);
}
}
ProdSceneConfig
sceneConfig
=
prodSceneConfigService
.
getById
(
sceneId
);
// 构建orderId到departmentId的映射
Map
<
String
,
Integer
>
orderDepartmentMap
=
new
HashMap
<>();
List
<
Entry
>
allEntries
=
chromosome
.
getAllOperations
();
if
(
allEntries
!=
null
)
{
for
(
Entry
entry
:
allEntries
)
{
if
(
entry
.
getOrderId
()
!=
null
&&
entry
.
getDepartmentId
()
!=
null
)
{
orderDepartmentMap
.
put
(
entry
.
getOrderId
(),
entry
.
getDepartmentId
());
}
}
}
List
<
Order
>
prodLanuchList
=
chromosome
.
getOrders
();
List
<
Order
>
prodLanuchList
=
chromosome
.
getOrders
();
List
<
MesOrder
>
mesOrderList
=
new
ArrayList
<>();
List
<
MesOrder
>
mesOrderList
=
new
ArrayList
<>();
for
(
Order
prodLaunchOrder
:
prodLanuchList
)
{
for
(
Order
prodLaunchOrder
:
prodLanuchList
)
{
MesOrder
mesOrder
=
new
MesOrder
();
MesOrder
mesOrder
=
new
MesOrder
();
mesOrder
.
setCreatorUserId
(
Long
.
valueOf
(
sceneConfig
.
getCreateUser
()));
// 设置部门信息(使用upId字段存储部门ID)
Integer
departmentId
=
orderDepartmentMap
.
get
(
prodLaunchOrder
.
getOrderId
());
if
(
departmentId
!=
null
)
{
mesOrder
.
setUpId
(
Long
.
valueOf
(
departmentId
));
}
mesOrder
.
setMesCode
(
prodLaunchOrder
.
getOrderId
());
mesOrder
.
setMesCode
(
prodLaunchOrder
.
getOrderId
());
mesOrder
.
setMaterialId
(
prodLaunchOrder
.
getMaterialId
());
mesOrder
.
setMaterialId
(
prodLaunchOrder
.
getMaterialId
());
mesOrder
.
setQuantity
(
prodLaunchOrder
.
getQuantity
());
mesOrder
.
setQuantity
(
prodLaunchOrder
.
getQuantity
());
...
@@ -219,7 +237,7 @@ public class LanuchServiceImpl implements LanuchService {
...
@@ -219,7 +237,7 @@ public class LanuchServiceImpl implements LanuchService {
mesOrder
.
setDrawnNumber
(
prodLaunchOrder
.
getMaterialCode
());
mesOrder
.
setDrawnNumber
(
prodLaunchOrder
.
getMaterialCode
());
mesOrder
.
setOrderCode
(
prodLaunchOrder
.
getOrderCode
());
mesOrder
.
setOrderCode
(
prodLaunchOrder
.
getOrderCode
());
mesOrder
.
setStatus
(
12L
);
mesOrder
.
setStatus
(
12L
);
mesOrder
.
setIsDeleted
(
0L
);
mesOrder
.
setTaskType
(
prodLaunchOrder
.
getFinishOrderId
()
!=
null
?
"半成品"
:
"成品"
);
mesOrder
.
setTaskType
(
prodLaunchOrder
.
getFinishOrderId
()
!=
null
?
"半成品"
:
"成品"
);
mesOrderList
.
add
(
mesOrder
);
mesOrderList
.
add
(
mesOrder
);
}
}
...
@@ -262,12 +280,14 @@ public class LanuchServiceImpl implements LanuchService {
...
@@ -262,12 +280,14 @@ public class LanuchServiceImpl implements LanuchService {
dispatch
.
setBeginTime
(
baseTime
.
plusSeconds
(
gaResult
.
getStartTime
()));
dispatch
.
setBeginTime
(
baseTime
.
plusSeconds
(
gaResult
.
getStartTime
()));
dispatch
.
setEndTime
(
baseTime
.
plusSeconds
(
gaResult
.
getEndTime
()));
dispatch
.
setEndTime
(
baseTime
.
plusSeconds
(
gaResult
.
getEndTime
()));
dispatch
.
setENof
(
gaResult
.
getOrderId
());
dispatch
.
setENof
(
gaResult
.
getOrderId
());
dispatch
.
setCreatorUserId
(
Long
.
parseLong
(
sceneConfig
.
getCreateUser
()));
// 设置状态等其他字段
// 设置状态等其他字段
dispatch
.
setTaskSeq
(
entry1
.
getTaskSeq
());
dispatch
.
setTaskSeq
(
entry1
.
getTaskSeq
());
dispatch
.
setMesCode
(
gaResult
.
getOrderId
());
dispatch
.
setMesCode
(
gaResult
.
getOrderId
());
dispatch
.
setRoutingDetailId
(
entry1
.
getRoutingDetailId
());
dispatch
.
setRoutingDetailId
(
entry1
.
getRoutingDetailId
());
dispatch
.
setOpe
(
entry1
.
getRoutingDetailName
());
dispatch
.
setOpe
(
entry1
.
getRoutingDetailName
());
dispatch
.
setRoutingDetailId
(
entry1
.
getRoutingDetailId
());
dispatch
.
setRoutingDetailId
(
entry1
.
getRoutingDetailId
());
dispatch
.
setIsDeleted
(
0L
);
dispatch
.
setStatus
(
12L
);
dispatch
.
setStatus
(
12L
);
// PART_TASK_READY_ID:取对应 mes_order 的主键 id(按 orderId/mesCode 关联)
// PART_TASK_READY_ID:取对应 mes_order 的主键 id(按 orderId/mesCode 关联)
Long
partTaskReadyId
=
mesOrderIdByOrderId
.
get
(
gaResult
.
getOrderId
());
Long
partTaskReadyId
=
mesOrderIdByOrderId
.
get
(
gaResult
.
getOrderId
());
...
@@ -285,7 +305,38 @@ public class LanuchServiceImpl implements LanuchService {
...
@@ -285,7 +305,38 @@ public class LanuchServiceImpl implements LanuchService {
boolean
savedDispatch
=
dispatchService
.
saveOrUpdateBatch
(
dispatches
);
boolean
savedDispatch
=
dispatchService
.
saveOrUpdateBatch
(
dispatches
);
List
<
OrderMaterialRequirement
>
orderMaterials
=
chromosome
.
getOrderMaterials
();
// 构建ExecId到GAScheduleResult的映射,用于获取工序开始时间
Map
<
String
,
GAScheduleResult
>
execIdToScheduleMap
=
new
HashMap
<>();
for
(
GAScheduleResult
gaResult
:
chromosome
.
getResult
())
{
execIdToScheduleMap
.
put
(
gaResult
.
getExecId
(),
gaResult
);
}
List
<
OrderMaterialRequirement
>
orderMaterials
=
new
ArrayList
<>();
// 获取所有entry下的物料需求
if
(
chromosome
.
getAllOperations
()
!=
null
)
{
for
(
Entry
entry
:
chromosome
.
getAllOperations
())
{
if
(
entry
.
getMaterialRequirements
()
!=
null
&&
!
entry
.
getMaterialRequirements
().
isEmpty
())
{
// 获取该Entry对应的GAScheduleResult
GAScheduleResult
gaResult
=
execIdToScheduleMap
.
get
(
entry
.
getExecId
());
LocalDateTime
operationStartTime
=
null
;
// 计算工序开始时间
if
(
gaResult
!=
null
)
{
LocalDateTime
baseTime
=
chromosome
.
getBaseTime
()
!=
null
?
chromosome
.
getBaseTime
()
:
LocalDateTime
.
now
();
operationStartTime
=
baseTime
.
plusSeconds
(
gaResult
.
getStartTime
());
}
// 遍历物料需求,设置shortageTime
for
(
OrderMaterialRequirement
omr
:
entry
.
getMaterialRequirements
())
{
if
(
operationStartTime
!=
null
)
{
omr
.
setShortageTime
(
operationStartTime
);
}
orderMaterials
.
add
(
omr
);
}
}
}
}
// 先删除表中所有数据
// 先删除表中所有数据
orderMaterialRequirementService
.
remove
(
new
LambdaQueryWrapper
<>());
orderMaterialRequirementService
.
remove
(
new
LambdaQueryWrapper
<>());
...
...
src/main/java/com/aps/service/plan/PlanResultService.java
View file @
d3e54c0e
...
@@ -1397,8 +1397,8 @@ private GlobalParam InitGlobalParam()
...
@@ -1397,8 +1397,8 @@ private GlobalParam InitGlobalParam()
LocalDateTime
lastEntryEndTime
=
getEntryEndTime
(
lastEntry
,
results
,
baseTime
);
LocalDateTime
lastEntryEndTime
=
getEntryEndTime
(
lastEntry
,
results
,
baseTime
);
Map
<
String
,
Object
>
item
=
new
HashMap
<>();
Map
<
String
,
Object
>
item
=
new
HashMap
<>();
item
.
put
(
"taskIdFrom"
,
String
.
valueOf
(
lastEntry
.
getId
()));
item
.
put
(
"taskIdFrom"
,
String
.
valueOf
(
lastEntry
.
get
Order
Id
()));
item
.
put
(
"taskIdTo"
,
String
.
valueOf
(
currentEntry
.
getId
()));
item
.
put
(
"taskIdTo"
,
String
.
valueOf
(
currentEntry
.
get
Order
Id
()));
item
.
put
(
"fromTime"
,
lastEntryEndTime
!=
null
?
lastEntryEndTime
.
toString
()
:
"2025-12-13"
);
item
.
put
(
"fromTime"
,
lastEntryEndTime
!=
null
?
lastEntryEndTime
.
toString
()
:
"2025-12-13"
);
item
.
put
(
"toTime"
,
currentStartTime
!=
null
?
currentStartTime
.
toString
()
:
"2026-12-13"
);
item
.
put
(
"toTime"
,
currentStartTime
!=
null
?
currentStartTime
.
toString
()
:
"2026-12-13"
);
item
.
put
(
"fromIdFrom"
,
String
.
valueOf
(
lastEntry
.
getId
()));
item
.
put
(
"fromIdFrom"
,
String
.
valueOf
(
lastEntry
.
getId
()));
...
@@ -1423,8 +1423,8 @@ private GlobalParam InitGlobalParam()
...
@@ -1423,8 +1423,8 @@ private GlobalParam InitGlobalParam()
LocalDateTime
targetStartTime
=
getEntryStartTime
(
targetEntry
,
results
,
baseTime
);
LocalDateTime
targetStartTime
=
getEntryStartTime
(
targetEntry
,
results
,
baseTime
);
Map
<
String
,
Object
>
item
=
new
HashMap
<>();
Map
<
String
,
Object
>
item
=
new
HashMap
<>();
item
.
put
(
"taskIdFrom"
,
String
.
valueOf
(
currentEntry
.
getId
()));
item
.
put
(
"taskIdFrom"
,
String
.
valueOf
(
currentEntry
.
get
Order
Id
()));
item
.
put
(
"taskIdTo"
,
String
.
valueOf
(
targetEntry
.
getId
()));
item
.
put
(
"taskIdTo"
,
String
.
valueOf
(
targetEntry
.
get
Order
Id
()));
item
.
put
(
"fromTime"
,
currentEndTime
!=
null
?
currentEndTime
.
toString
()
:
"2025-12-13"
);
item
.
put
(
"fromTime"
,
currentEndTime
!=
null
?
currentEndTime
.
toString
()
:
"2025-12-13"
);
item
.
put
(
"toTime"
,
targetStartTime
!=
null
?
targetStartTime
.
toString
()
:
"2026-12-13"
);
item
.
put
(
"toTime"
,
targetStartTime
!=
null
?
targetStartTime
.
toString
()
:
"2026-12-13"
);
item
.
put
(
"fromIdFrom"
,
String
.
valueOf
(
currentEntry
.
getId
()));
item
.
put
(
"fromIdFrom"
,
String
.
valueOf
(
currentEntry
.
getId
()));
...
...
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