Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
M
mes
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
ximai
mes
Commits
3cc641d9
Commit
3cc641d9
authored
Nov 22, 2024
by
温志超
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
提交回滚排产逻辑
parent
7a58d1af
Hide whitespace changes
Inline
Side-by-side
Showing
26 changed files
with
127 additions
and
37 deletions
+127
-37
messages.properties
admin/src/main/resources/i18n/messages.properties
+2
-1
messages_en.properties
admin/src/main/resources/i18n/messages_en.properties
+2
-1
messages_th.properties
admin/src/main/resources/i18n/messages_th.properties
+2
-1
messages_zh_CN.properties
admin/src/main/resources/i18n/messages_zh_CN.properties
+2
-1
ProTaskController.java
.../com/ximai/mes/pro/controller/task/ProTaskController.java
+9
-1
ProProductQrcodeRecord.java
...java/com/ximai/mes/pro/domain/ProProductQrcodeRecord.java
+1
-1
ProTask.java
mes/src/main/java/com/ximai/mes/pro/domain/task/ProTask.java
+1
-0
WorkorderScheduleParamsRollBACK.java
.../mes/pro/domain/task/WorkorderScheduleParamsRollBACK.java
+13
-0
ProProductQrcodeRecordCreate.java
...a/com/ximai/mes/pro/dto/ProProductQrcodeRecordCreate.java
+1
-0
ProProductQrcodeRecordDto.java
...java/com/ximai/mes/pro/dto/ProProductQrcodeRecordDto.java
+2
-0
ProProductQrcodeRuleCreate.java
...ava/com/ximai/mes/pro/dto/ProProductQrcodeRuleCreate.java
+1
-1
ProFeedbackMapper.java
...main/java/com/ximai/mes/pro/mapper/ProFeedbackMapper.java
+2
-0
ProProductQrcodeRecordMapper.java
...om/ximai/mes/pro/mapper/ProProductQrcodeRecordMapper.java
+6
-0
ProWorkorderMapper.java
...ximai/mes/pro/mapper/proWorkOrder/ProWorkorderMapper.java
+4
-0
ProTaskMapper.java
...ain/java/com/ximai/mes/pro/mapper/task/ProTaskMapper.java
+2
-0
ProTaskWorkorderMapper.java
...com/ximai/mes/pro/mapper/task/ProTaskWorkorderMapper.java
+2
-0
ProTaskWorkunitMapper.java
.../com/ximai/mes/pro/mapper/task/ProTaskWorkunitMapper.java
+1
-0
ProductQrcodeBuild.java
.../ximai/mes/pro/schedule/impl/busi/ProductQrcodeBuild.java
+3
-24
ProTaskServiceImpl.java
...m/ximai/mes/pro/service/impl/task/ProTaskServiceImpl.java
+29
-4
IProTaskService.java
.../java/com/ximai/mes/pro/service/task/IProTaskService.java
+2
-0
ProFeedbackMapper.xml
mes/src/main/resources/mapper/pro/ProFeedbackMapper.xml
+7
-0
ProProductQrcodeRecordMapper.xml
...ain/resources/mapper/pro/ProProductQrcodeRecordMapper.xml
+12
-1
ProWorkorderMapper.xml
.../resources/mapper/pro/proWorkOrder/ProWorkorderMapper.xml
+3
-0
ProTaskMapper.xml
mes/src/main/resources/mapper/pro/task/ProTaskMapper.xml
+6
-1
ProTaskWorkorderMapper.xml
...main/resources/mapper/pro/task/ProTaskWorkorderMapper.xml
+6
-0
ProTaskWorkunitMapper.xml
.../main/resources/mapper/pro/task/ProTaskWorkunitMapper.xml
+6
-0
No files found.
admin/src/main/resources/i18n/messages.properties
View file @
3cc641d9
...
...
@@ -229,4 +229,5 @@ md.workUnit.error.workunitCode.unique = \u5DE5\u5355\u5355\u5143\u7F16\u7801\u5D
delete.data.error.occupied =
\u
8be5
\u6570\u
636e
\u
5df2
\u
7ecf
\u
88ab
\u5173\u8054\u
4f7f
\u7528\u
ff0c
\u
65e0
\u
6cd5
\u5220\u9664
#权限复制,复制用户和被复制用户重叠
user.copyuser.repeat =
\u
590d
\u5236\u7528\u6237\u
4e2d
\u
5b58
\u5728\u
60a8
\u
52fe
\u9009\u7684\u
88ab
\u
590d
\u5236\u7528\u6237\u
ff0c
\u7528\u6237\u
540d :{0}
user.lack.of.permissions =
\u
5c97
\u
4f4d
\u
8d44
\u
6e90
\u6216\u
89d2
\u8272\u
4e3a
\u
7a7a
\u
ff0c
\u
60a8
\u
786e
\u
5b9a
\u9700\u8981\u
590d
\u5236\u5417\u
ff1f
\ No newline at end of file
user.lack.of.permissions =
\u
5c97
\u
4f4d
\u
8d44
\u
6e90
\u6216\u
89d2
\u8272\u
4e3a
\u
7a7a
\u
ff0c
\u
60a8
\u
786e
\u
5b9a
\u9700\u8981\u
590d
\u5236\u5417\u
ff1f
rollback.schedule.status.err =
\u
4efb
\u
52a1
\u
7ec4
\u5408\u
5df2
\u
7ecf
\u6709\u5904\u
4e8e
\u
5f00
\u
5de5
\u6216\u8005\u
62a5
\u
5de5
\u
8bb0
\u
5f55:{0}
\ No newline at end of file
admin/src/main/resources/i18n/messages_en.properties
View file @
3cc641d9
...
...
@@ -219,4 +219,5 @@ md.workUnit.error.workunitCode.unique = unique workunitCode.
delete.data.error.occupied = The data that needs to be deleted has been used
user.copyuser.repeat = The employee with copied permission exists among the employees with copied permission :{0}
user.lack.of.permissions = Job resources or roles are empty, are you sure you need to copy them?
\ No newline at end of file
user.lack.of.permissions = Job resources or roles are empty, are you sure you need to copy them?
rollback.schedule.status.err = The order task has started :{0};
\ No newline at end of file
admin/src/main/resources/i18n/messages_th.properties
View file @
3cc641d9
...
...
@@ -228,4 +228,5 @@ md.workUnit.error.workunitCode.unique = \u0E2B\u0E21\u0E32\u0E22\u0E40\u0E25\u0E
#被删除数据已被使用错误
delete.data.error.occupied
=
\u
0e02
\u
0e49
\u
0e2d
\u
0e21
\u
0e39
\u
0e25
\u
0e17
\u
0e35
\u
0e48
\u
0e15
\u
0e49
\u
0e2d
\u
0e07
\u
0e01
\u
0e32
\u
0e23
\u
0e25
\u
0e1a
\u
0e44
\u
0e14
\u
0e49
\u
0e16
\u
0e39
\u
0e01
\u
0e43
\u
0e0a
\u
0e49
\u
0e44
\u
0e1b
\u
0e41
\u
0e25
\u
0e49
\u
0e27
user.copyuser.repeat
=
\u
0e1e
\u
0e19
\u
0e31
\u
0e01
\u
0e07
\u
0e32
\u
0e19
\u
0e17
\u
0e35
\u
0e48
\u
0e16
\u
0e39
\u
0e01
\u
0e04
\u
0e31
\u
0e14
\u
0e25
\u
0e2d
\u
0e01
\u
0e2a
\u
0e34
\u
0e17
\u
0e18
\u
0e34
\u
0e4c
\u
0e21
\u
0e35
\u
0e2d
\u
0e22
\u
0e39
\u
0e48
\u
0e43
\u
0e19
\u
0e1e
\u
0e19
\u
0e31
\u
0e01
\u
0e07
\u
0e32
\u
0e19
\u
0e17
\u
0e35
\u
0e48
\u
0e16
\u
0e39
\u
0e01
\u
0e04
\u
0e31
\u
0e14
\u
0e25
\u
0e2d
\u
0e01
\u
0e2a
\u
0e34
\u
0e17
\u
0e18
\u
0e34
\u
0e4c :{0}
user.lack.of.permissions
=
\u
0e17
\u
0e23
\u
0e31
\u
0e1e
\u
0e22
\u
0e32
\u
0e01
\u
0e23
\u
0e42
\u
0e1e
\u
0e2a
\u
0e15
\u
0e4c
\u
0e2b
\u
0e23
\u
0e37
\u
0e2d
\u
0e1a
\u
0e17
\u
0e1a
\u
0e32
\u
0e17
\u
0e27
\u
0e48
\u
0e32
\u
0e07
\u
0e40
\u
0e1b
\u
0e25
\u
0e48
\u
0e32
\u
0e04
\u
0e38
\u
0e13
\u
0e41
\u
0e19
\u
0e48
\u
0e43
\u
0e08
\u
0e2b
\u
0e23
\u
0e37
\u
0e2d
\u
0e44
\u
0e21
\u
0e48
\u
0e27
\u
0e48
\u
0e32
\u
0e04
\u
0e38
\u
0e13
\u
0e08
\u
0e33
\u
0e40
\u
0e1b
\u
0e47
\u
0e19
\u
0e15
\u
0e49
\u
0e2d
\u
0e07
\u
0e04
\u
0e31
\u
0e14
\u
0e25
\u
0e2d
\u
0e01
\u
003f
\ No newline at end of file
user.lack.of.permissions
=
\u
0e17
\u
0e23
\u
0e31
\u
0e1e
\u
0e22
\u
0e32
\u
0e01
\u
0e23
\u
0e42
\u
0e1e
\u
0e2a
\u
0e15
\u
0e4c
\u
0e2b
\u
0e23
\u
0e37
\u
0e2d
\u
0e1a
\u
0e17
\u
0e1a
\u
0e32
\u
0e17
\u
0e27
\u
0e48
\u
0e32
\u
0e07
\u
0e40
\u
0e1b
\u
0e25
\u
0e48
\u
0e32
\u
0e04
\u
0e38
\u
0e13
\u
0e41
\u
0e19
\u
0e48
\u
0e43
\u
0e08
\u
0e2b
\u
0e23
\u
0e37
\u
0e2d
\u
0e44
\u
0e21
\u
0e48
\u
0e27
\u
0e48
\u
0e32
\u
0e04
\u
0e38
\u
0e13
\u
0e08
\u
0e33
\u
0e40
\u
0e1b
\u
0e47
\u
0e19
\u
0e15
\u
0e49
\u
0e2d
\u
0e07
\u
0e04
\u
0e31
\u
0e14
\u
0e25
\u
0e2d
\u
0e01
\u
003f
rollback.schedule.status.err
=
\u
0e20
\u
0e32
\u
0e23
\u
0e01
\u
0e34
\u
0e08
\u
0e01
\u
0e32
\u
0e23
\u
0e2a
\u
0e31
\u
0e48
\u
0e07
\u
0e0b
\u
0e37
\u
0e49
\u
0e2d
\u
0e44
\u
0e14
\u
0e49
\u
0e40
\u
0e23
\u
0e34
\u
0e48
\u
0e21
\u
0e02
\u
0e36
\u
0e49
\u
0e19
\u
0e41
\u
0e25
\u
0e49
\u
0e27:{0}
\ No newline at end of file
admin/src/main/resources/i18n/messages_zh_CN.properties
View file @
3cc641d9
...
...
@@ -222,4 +222,5 @@ md.workUnit.error.workunitCode.unique = \u5de5\u5355\u5355\u5143\u7f16\u7801\u5d
delete.data.error.occupied =
\u
8be5
\u6570\u
636e
\u
5df2
\u
7ecf
\u
88ab
\u5173\u8054\u
4f7f
\u7528\u
ff0c
\u
65e0
\u
6cd5
\u5220\u9664
user.copyuser.repeat =
\u
590d
\u5236\u7528\u6237\u
4e2d
\u
5b58
\u5728\u
60a8
\u
52fe
\u9009\u7684\u
88ab
\u
590d
\u5236\u7528\u6237\u
ff0c
\u7528\u6237\u
540d :{0}
user.lack.of.permissions =
\u
5c97
\u
4f4d
\u
8d44
\u
6e90
\u6216\u
89d2
\u8272\u
4e3a
\u
7a7a
\u
ff0c
\u
60a8
\u
786e
\u
5b9a
\u9700\u8981\u
590d
\u5236\u5417\u
ff1f
\ No newline at end of file
user.lack.of.permissions =
\u
5c97
\u
4f4d
\u
8d44
\u
6e90
\u6216\u
89d2
\u8272\u
4e3a
\u
7a7a
\u
ff0c
\u
60a8
\u
786e
\u
5b9a
\u9700\u8981\u
590d
\u5236\u5417\u
ff1f
rollback.schedule.status.err =
\u
4efb
\u
52a1
\u
7ec4
\u5408\u
5df2
\u
7ecf
\u6709\u5904\u
4e8e
\u
5f00
\u
5de5
\u6216\u8005\u
62a5
\u
5de5
\u
8bb0
\u
5f55:{0}
\ No newline at end of file
mes/src/main/java/com/ximai/mes/pro/controller/task/ProTaskController.java
View file @
3cc641d9
...
...
@@ -17,6 +17,7 @@ import com.ximai.mes.pro.domain.proWorkOrder.ProWorkorder;
import
com.ximai.mes.pro.domain.task.ProTask
;
import
com.ximai.mes.pro.domain.task.ProTaskWorkunit
;
import
com.ximai.mes.pro.domain.task.WorkorderScheduleParams
;
import
com.ximai.mes.pro.domain.task.WorkorderScheduleParamsRollBACK
;
import
com.ximai.mes.pro.domain.vo.ProTaskVo
;
import
com.ximai.mes.pro.mapper.task.ProTaskMapper
;
import
com.ximai.mes.pro.service.proWorkOrder.IProWorkorderService
;
...
...
@@ -321,6 +322,13 @@ public class ProTaskController extends BaseController {
return
AjaxResult
.
success
();
}
@ApiOperation
(
"生产任务排产"
)
@PreAuthorize
(
"@ss.hasPermi('mes:pro:protask:schedule')"
)
@Log
(
title
=
"回滚删除生产任务排产"
,
businessType
=
BusinessType
.
OTHER
)
@PostMapping
(
"/rollBACKschedule"
)
public
AjaxResult
rollBACKschedule
(
@ApiParam
(
value
=
"任务"
,
required
=
true
)
@RequestBody
WorkorderScheduleParamsRollBACK
params
)
{
proTaskService
.
rollBACKschedule
(
params
);
return
AjaxResult
.
success
();
}
}
mes/src/main/java/com/ximai/mes/pro/domain/ProProductQrcodeRecord.java
View file @
3cc641d9
...
...
@@ -75,5 +75,5 @@ public class ProProductQrcodeRecord extends BaseEntity {
* 模板类型
*/
private
String
templateType
;
private
String
taskBatch
;
}
mes/src/main/java/com/ximai/mes/pro/domain/task/ProTask.java
View file @
3cc641d9
...
...
@@ -261,6 +261,7 @@ public class ProTask extends BaseEntity {
* 任务批次号
*/
private
String
taskBatch
;
@TableField
(
exist
=
false
)
private
String
taskBatchStr
;
@ApiModelProperty
(
"是否最后工序"
)
...
...
mes/src/main/java/com/ximai/mes/pro/domain/task/WorkorderScheduleParamsRollBACK.java
0 → 100644
View file @
3cc641d9
package
com
.
ximai
.
mes
.
pro
.
domain
.
task
;
import
lombok.Data
;
import
java.lang.reflect.Array
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.Set
;
@Data
public
class
WorkorderScheduleParamsRollBACK
{
private
List
<
String
>
taskBatchList
;
}
mes/src/main/java/com/ximai/mes/pro/dto/ProProductQrcodeRecordCreate.java
View file @
3cc641d9
...
...
@@ -70,6 +70,7 @@ public class ProProductQrcodeRecordCreate {
*/
private
String
templateCode
;
private
String
taskBatch
;
/**
* 模板类型
*/
...
...
mes/src/main/java/com/ximai/mes/pro/dto/ProProductQrcodeRecordDto.java
View file @
3cc641d9
...
...
@@ -103,4 +103,6 @@ public class ProProductQrcodeRecordDto {
private
String
specification
;
private
String
qrcodeSub
;
private
String
taskBatch
;
}
mes/src/main/java/com/ximai/mes/pro/dto/ProProductQrcodeRuleCreate.java
View file @
3cc641d9
...
...
@@ -78,5 +78,5 @@ public class ProProductQrcodeRuleCreate {
private
String
templateType
;
private
String
taskBatch
;
}
mes/src/main/java/com/ximai/mes/pro/mapper/ProFeedbackMapper.java
View file @
3cc641d9
...
...
@@ -137,4 +137,6 @@ public interface ProFeedbackMapper {
List
<
FeedbackResponse
>
getListByProcess
(
FeedbackRequest
feedbackRequest
);
List
<
FeedbackResponse
>
getListByUser
(
FeedbackRequest
feedbackRequest
);
int
selectCount
(
@Param
(
"taskIds"
)
List
<
Long
>
taskIds
);
}
mes/src/main/java/com/ximai/mes/pro/mapper/ProProductQrcodeRecordMapper.java
View file @
3cc641d9
...
...
@@ -8,6 +8,7 @@ import com.ximai.mes.pro.dto.ProProductQrcodeRecordDto;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.annotations.Select
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
org.springframework.security.core.parameters.P
;
/**
* 产品序列号打印记录Mapper接口
...
...
@@ -75,4 +76,9 @@ public interface ProProductQrcodeRecordMapper extends BaseMapper<ProProductQrcod
public
int
deleteProProductQrcodeRecordByRecordIds
(
Long
[]
recordIds
);
int
addPrintTime
(
@Param
(
"ids"
)
List
<
Long
>
collect
,
@Param
(
"userName"
)
String
userName
);
public
int
deleteProProductQrcodeRecordByTaskBatch
(
@Param
(
"taskBatch"
)
String
taskBatch
);
}
mes/src/main/java/com/ximai/mes/pro/mapper/proWorkOrder/ProWorkorderMapper.java
View file @
3cc641d9
...
...
@@ -3,10 +3,12 @@ package com.ximai.mes.pro.mapper.proWorkOrder;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.ximai.mes.pro.domain.proWorkOrder.ProWorkorder
;
import
com.ximai.mes.pro.domain.task.ProTask
;
import
com.ximai.mes.pro.domain.vo.*
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.annotations.Select
;
import
java.math.BigDecimal
;
import
java.util.Date
;
import
java.util.List
;
...
...
@@ -146,4 +148,6 @@ public interface ProWorkorderMapper extends BaseMapper<ProWorkorder> {
Date
maxErpUpdateTime
();
int
updateProductionSolution
(
@Param
(
"productionSolutionId"
)
Long
productionSolutionId
,
@Param
(
"productionSolutionCode"
)
String
productionSolutionCode
,
@Param
(
"productionSolutionName"
)
String
productionSolutionName
,
@Param
(
"workorderId"
)
Long
workorderId
);
void
rollBACKschedule
(
@Param
(
"workorderCode"
)
String
workorderCode
,
@Param
(
"quantity"
)
BigDecimal
quantity
,
@Param
(
"username"
)
String
username
);
}
mes/src/main/java/com/ximai/mes/pro/mapper/task/ProTaskMapper.java
View file @
3cc641d9
...
...
@@ -195,4 +195,6 @@ public interface ProTaskMapper extends BaseMapper<ProTask> {
List
<
ProTask
>
selectByTaskIds
(
@Param
(
"taskIds"
)
List
<
Long
>
taskIds
);
List
<
ProTask
>
selectByTaskBatch
(
@Param
(
"taskBatch"
)
String
taskBatch
);
void
deleteByTaskBatch
(
@Param
(
"taskBatch"
)
String
taskBatch
);
}
mes/src/main/java/com/ximai/mes/pro/mapper/task/ProTaskWorkorderMapper.java
View file @
3cc641d9
...
...
@@ -97,4 +97,6 @@ public interface ProTaskWorkorderMapper
@Select
(
value
=
"select * from pro_task_workorder where task_id=#{taskId} "
)
List
<
ProTaskWorkorder
>
selectProTaskWorkorderTaskId
(
@Param
(
"taskId"
)
Long
taskId
);
void
deleteByTaskIds
(
@Param
(
"taskIds"
)
List
<
Long
>
taskIds
);
}
mes/src/main/java/com/ximai/mes/pro/mapper/task/ProTaskWorkunitMapper.java
View file @
3cc641d9
...
...
@@ -212,4 +212,5 @@ public interface ProTaskWorkunitMapper extends BaseMapper<ProTaskWorkunit> {
"${ew.customSqlSegment} "
)
List
<
ProTaskWorkunitDto
>
selectTaskWorkUnitWithKanban
(
@Param
(
"ew"
)
QueryWrapper
<
ProTaskWorkunit
>
query
);
void
deleteByTaskIds
(
@Param
(
"taskIds"
)
List
<
Long
>
taskIds
);
}
mes/src/main/java/com/ximai/mes/pro/schedule/impl/busi/ProductQrcodeBuild.java
View file @
3cc641d9
...
...
@@ -29,36 +29,14 @@ public class ProductQrcodeBuild implements ScheduleBusiProcess{
private
IProProductQrcodeRuleService
proProductQrcodeRuleService
;
@Override
public
void
execute
(
List
<
JobResult
>
jobResults
)
{
jobResults
.
forEach
(
job
->{
String
taskBatch
=
job
.
taskResultList
!=
null
&&
job
.
taskResultList
.
size
()
>
0
?
job
.
taskResultList
.
get
(
0
).
getProTask
().
getTaskBatch
()
:
null
;
job
.
getWorkorderList
().
forEach
(
workorder
->{
ProProductQrcodeRule
rule
=
productQrcodeRuleService
.
selectProProductQrcodeRuleNewest
(
workorder
.
getProductId
(),
workorder
.
getClientCode
());
if
(
rule
==
null
){
return
;
}
// //wzc修改 有客户优先按照产品+客户匹配序列号规则绑定的最新打印模板,如果没有匹配到 按照产品匹配序列号规则绑定的最新打印模板(客户字段为空的)
// ProProductQrcodeRuleDto proProductQrcodeRuleDto= null;
// List<ProProductQrcodeRuleDto> list = null;
// if(StringUtils.isNotEmpty(workorder.getClientCode())){
// QueryWrapper<ProProductQrcodeRule> query = new QueryWrapper<>();
// query.eq("m.item_id", workorder.getProductId());
// query.eq( "m.client_code", workorder.getClientCode());
// query.orderByDesc("m.rule_id");
// list = proProductQrcodeRuleService.selectProProductQrcodeRuleDtoList(query);
// }else{
// QueryWrapper<ProProductQrcodeRule> query = new QueryWrapper<>();
// query.eq("m.item_id", workorder.getProductId());
// query.isNull( "m.client_code");
// query.orderByDesc("m.rule_id");
// list = proProductQrcodeRuleService.selectProProductQrcodeRuleDtoList(query);
// }
// if(list != null && list.size() > 0){
// proProductQrcodeRuleDto = list.get(0);
// }
// if (proProductQrcodeRuleDto == null || StringUtils.isEmpty(proProductQrcodeRuleDto.getTemplateName())){
// //后续再看是否需要报错
//// ExceptionUtil.checkTrueThrowException(true,
//// "未能匹配到打印模板,请先到产品二维码规则维护");
// }
List
<
String
>
qrcodes
=
productQrcodeRuleService
.
buildQrcode
(
rule
,
job
.
getQuantity
().
intValue
());
for
(
String
qrcode
:
qrcodes
){
ProProductQrcodeRecordCreate
create
=
new
ProProductQrcodeRecordCreate
();
...
...
@@ -70,6 +48,7 @@ public class ProductQrcodeBuild implements ScheduleBusiProcess{
create
.
setTemplateCode
(
rule
!=
null
?
rule
.
getTemplateCode
()
:
null
);
create
.
setTemplateName
(
rule
!=
null
?
rule
.
getTemplateName
()
:
null
);
create
.
setTemplateType
(
rule
!=
null
?
rule
.
getTemplateType
()
:
null
);
create
.
setTaskBatch
(
taskBatch
);
productQrcodeRecordService
.
insertProProductQrcodeRecord
(
create
);
}
});
...
...
mes/src/main/java/com/ximai/mes/pro/service/impl/task/ProTaskServiceImpl.java
View file @
3cc641d9
...
...
@@ -31,10 +31,7 @@ import com.ximai.mes.pro.domain.vo.*;
import
com.ximai.mes.pro.domain.vo.task.FeedbackValidateSerialNoParams
;
import
com.ximai.mes.pro.dto.ProProductQrcodeRecordDto
;
import
com.ximai.mes.pro.dto.task.ProTaskLinkFile
;
import
com.ximai.mes.pro.mapper.ProProcessMapper
;
import
com.ximai.mes.pro.mapper.ProProductQrcodeRecordMapper
;
import
com.ximai.mes.pro.mapper.ProProductionLogMapper
;
import
com.ximai.mes.pro.mapper.ProRouteMapper
;
import
com.ximai.mes.pro.mapper.*
;
import
com.ximai.mes.pro.mapper.proWorkOrder.ProWorkOrderProcessMapper
;
import
com.ximai.mes.pro.mapper.proWorkOrder.ProWorkOrderProcessToolMapper
;
import
com.ximai.mes.pro.mapper.proWorkOrder.ProWorkorderMapper
;
...
...
@@ -143,6 +140,8 @@ public class ProTaskServiceImpl implements IProTaskService {
private
ProWorkOrderProcessToolMapper
proWorkOrderProcessToolMapper
;
@Autowired
private
IProFeedbackService
proFeedbackService
;
@Autowired
private
ProFeedbackMapper
proFeedbackMapper
;
@Resource
private
SysUserMapper
sysUserMapper
;
@Autowired
...
...
@@ -1456,4 +1455,30 @@ public class ProTaskServiceImpl implements IProTaskService {
return
null
;
}
@Override
@Transactional
public
void
rollBACKschedule
(
WorkorderScheduleParamsRollBACK
params
)
{
if
(
params
.
getTaskBatchList
()
==
null
||
params
.
getTaskBatchList
().
size
()
<
1
)
return
;
params
.
setTaskBatchList
(
params
.
getTaskBatchList
().
stream
().
distinct
().
collect
(
Collectors
.
toList
()));
//1.pro_task 2.pro_task_workorder ,3.pro_task_workunit 4.pro_product_qrcode_record 5.pro_workorder
//获取该批次下所有数据
for
(
String
taskBatch
:
params
.
getTaskBatchList
()){
ProTask
proTaskCheck
=
new
ProTask
();
proTaskCheck
.
setTaskBatch
(
taskBatch
);
List
<
ProTask
>
proTasks
=
proTaskMapper
.
selectProTaskList
(
proTaskCheck
);
if
(
proTasks
.
size
()
<
1
)
continue
;
ExceptionUtil
.
checkTrueThrowException
(
proTasks
.
stream
().
filter
(
proTask
->
!
proTask
.
getStatus
().
equals
(
"NORMARL"
)).
count
()
>
0
,
MessageUtils
.
message
(
"rollback.schedule.status.err"
,
taskBatch
));
ExceptionUtil
.
checkTrueThrowException
(
proFeedbackMapper
.
selectCount
(
proTasks
.
stream
().
map
(
proTask
->
proTask
.
getTaskId
()).
collect
(
Collectors
.
toList
()))
>
0
,
MessageUtils
.
message
(
"rollback.schedule.status.err"
,
taskBatch
));
proTaskMapper
.
deleteByTaskBatch
(
taskBatch
);
proTaskWorkunitMapper
.
deleteByTaskIds
(
proTasks
.
stream
().
map
(
proTask
->
proTask
.
getTaskId
()).
collect
(
Collectors
.
toList
()));
proTaskWorkorderMapper
.
deleteByTaskIds
(
proTasks
.
stream
().
map
(
proTask
->
proTask
.
getTaskId
()).
collect
(
Collectors
.
toList
()));
proProductQrcodeRecordMapper
.
deleteProProductQrcodeRecordByTaskBatch
(
taskBatch
);
proWorkorderMapper
.
rollBACKschedule
(
proTasks
.
get
(
0
).
getArrangeCode
(),
proTasks
.
get
(
0
).
getQuantity
(),
SecurityUtils
.
getUsername
());
}
}
}
mes/src/main/java/com/ximai/mes/pro/service/task/IProTaskService.java
View file @
3cc641d9
...
...
@@ -6,6 +6,7 @@ import com.ximai.mes.pro.domain.ProFeedback;
import
com.ximai.mes.pro.domain.task.ProTask
;
import
com.ximai.mes.pro.domain.task.ProTaskWorkunit
;
import
com.ximai.mes.pro.domain.task.WorkorderScheduleParams
;
import
com.ximai.mes.pro.domain.task.WorkorderScheduleParamsRollBACK
;
import
com.ximai.mes.pro.domain.vo.ProPackagePrintResult
;
import
com.ximai.mes.pro.domain.vo.ProTaskQuery
;
import
com.ximai.mes.pro.domain.vo.ProTaskVo
;
...
...
@@ -192,4 +193,5 @@ public interface IProTaskService {
List
<
ProTaskLinkFile
>
getTaskLinkFile
(
ProTaskQuery
proTask
);
void
rollBACKschedule
(
WorkorderScheduleParamsRollBACK
params
);
}
mes/src/main/resources/mapper/pro/ProFeedbackMapper.xml
View file @
3cc641d9
...
...
@@ -430,6 +430,13 @@
f.user_name,
f.nick_name
</select>
<select
id=
"selectCount"
resultType=
"java.lang.Integer"
>
select count(1) from pro_feedback
where task_Id in
<foreach
collection=
"taskIds"
open=
"("
item=
"taskId"
close=
")"
separator=
","
>
#{taskId}
</foreach>
</select>
<insert
id=
"insertProFeedback"
parameterType=
"ProFeedback"
useGeneratedKeys=
"true"
keyProperty=
"recordId"
>
insert into pro_feedback
...
...
mes/src/main/resources/mapper/pro/ProProductQrcodeRecordMapper.xml
View file @
3cc641d9
...
...
@@ -42,7 +42,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
select record_id, item_id, item_code, work_order_id, work_order_no,
print_time, qrcode, client_code, client_name, item_desc, create_by,
create_time, update_by, update_time ,template_id,template_type,
template_code,template_name
template_code,template_name
,task_batch
from pro_product_qrcode_record
</sql>
...
...
@@ -94,6 +94,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"templateType != null"
>
template_type,
</if>
<if
test=
"taskBatch != null"
>
task_batch,
</if>
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"itemId != null"
>
#{itemId},
</if>
...
...
@@ -121,6 +124,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"templateType != null"
>
#{templateType,jdbcType=VARCHAR},
</if>
<if
test=
"taskBatch != null"
>
#{taskBatch,jdbcType=VARCHAR},
</if>
</trim>
</insert>
<update
id=
"addPrintTime"
>
...
...
@@ -161,4 +167,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
#{recordId}
</foreach>
</delete>
<delete
id=
"deleteProProductQrcodeRecordByTaskBatch"
parameterType=
"String"
>
delete from pro_product_qrcode_record where task_batch =#{taskBatch}
</delete>
</mapper>
\ No newline at end of file
mes/src/main/resources/mapper/pro/proWorkOrder/ProWorkorderMapper.xml
View file @
3cc641d9
...
...
@@ -440,6 +440,9 @@
update pro_workorder set production_solution_id = #{productionSolutionId},production_solution_code = #{productionSolutionCode} ,production_solution_name = #{productionSolutionName}
where workorder_id = #{workorderId}
</update>
<update
id=
"rollBACKschedule"
>
update pro_workorder set quantity_scheduled = quantity_scheduled - #{quantity} , update_By = #{quantity}, update_time = now() where workorder_code = #{workorderCode}
</update>
<delete
id=
"deleteProWorkorderByWorkorderId"
parameterType=
"Long"
>
delete
...
...
mes/src/main/resources/mapper/pro/task/ProTaskMapper.xml
View file @
3cc641d9
...
...
@@ -296,7 +296,9 @@
<if
test=
"taskBatchStr != null and taskBatchStr != ''"
>
and t.task_batch like concat('%', #{taskBatchStr},
'%')
</if>
<if
test=
"taskBatch != null and taskBatch != ''"
>
and t.task_batch= #{taskBatch}
</if>
<if
test=
"itemId != null "
>
and t.item_id = #{itemId}
</if>
<if
test=
"itemCode != null and itemCode != ''"
>
and i.item_code = #{itemCode}
</if>
<if
test=
"itemName != null and itemName != ''"
>
and i.item_name like concat('%', #{itemName}, '%')
</if>
...
...
@@ -506,4 +508,7 @@
#{taskId}
</foreach>
</delete>
<delete
id=
"deleteByTaskBatch"
>
delete from pro_task where task_batch = #{taskBatch}
</delete>
</mapper>
mes/src/main/resources/mapper/pro/task/ProTaskWorkorderMapper.xml
View file @
3cc641d9
...
...
@@ -63,4 +63,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
#{taskWorkorderId}
</foreach>
</delete>
<delete
id=
"deleteByTaskIds"
>
delete from pro_task_workorder where task_id in
<foreach
item=
"taskId"
collection=
"taskIds"
open=
"("
separator=
","
close=
")"
>
#{taskId}
</foreach>
</delete>
</mapper>
mes/src/main/resources/mapper/pro/task/ProTaskWorkunitMapper.xml
View file @
3cc641d9
...
...
@@ -199,4 +199,10 @@
#{taskWorkunitId}
</foreach>
</delete>
<delete
id=
"deleteByTaskIds"
>
delete from pro_task_workunit where task_id in
<foreach
item=
"taskId"
collection=
"taskIds"
open=
"("
separator=
","
close=
")"
>
#{taskId}
</foreach>
</delete>
</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