Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
maintain_service
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
刘帅
maintain_service
Commits
3839c385
Commit
3839c385
authored
Sep 12, 2025
by
张昊飞
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
保修单详情修改
parent
9b4e8403
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
88 additions
and
11 deletions
+88
-11
ErpRepairFormProjectDispatchController.java
...ss/controller/ErpRepairFormProjectDispatchController.java
+11
-0
IErpRepairFormProjectDispatchService.java
...usiness/service/IErpRepairFormProjectDispatchService.java
+5
-0
ErpRepairFormProjectDispatchServiceImpl.java
...service/impl/ErpRepairFormProjectDispatchServiceImpl.java
+40
-1
repairFormProjectDispatch.js
maintain-ui/src/api/business/repairFormProjectDispatch.js
+10
-0
index.vue
...ui/src/views/business/repairFormProjectDispatch/index.vue
+22
-10
No files found.
maintain-business/src/main/java/com/maintain/business/controller/ErpRepairFormProjectDispatchController.java
View file @
3839c385
...
...
@@ -103,6 +103,17 @@ public class ErpRepairFormProjectDispatchController extends BaseController {
return
toAjax
(
iErpRepairFormProjectDispatchService
.
updateByBo
(
bo
));
}
/**
* 修改报修单-报修项目-派工
*/
@SaCheckPermission
(
"business:repairFormProjectDispatch:edit"
)
@Log
(
title
=
"报修单-报修项目-派工"
,
businessType
=
BusinessType
.
UPDATE
)
@RepeatSubmit
()
@PutMapping
(
"/batch"
)
public
R
<
Void
>
edit
(
@Validated
(
EditGroup
.
class
)
@RequestBody
List
<
ErpRepairFormProjectDispatchBo
>
bo
)
{
return
toAjax
(
iErpRepairFormProjectDispatchService
.
updateBatchByBo
(
bo
));
}
/**
* 删除报修单-报修项目-派工
*
...
...
maintain-business/src/main/java/com/maintain/business/service/IErpRepairFormProjectDispatchService.java
View file @
3839c385
...
...
@@ -47,6 +47,11 @@ public interface IErpRepairFormProjectDispatchService {
*/
Boolean
updateByBo
(
ErpRepairFormProjectDispatchBo
bo
);
/**
* 修改报修单-报修项目-派工
*/
Boolean
updateBatchByBo
(
List
<
ErpRepairFormProjectDispatchBo
>
boList
);
/**
* 校验并批量删除报修单-报修项目-派工信息
*/
...
...
maintain-business/src/main/java/com/maintain/business/service/impl/ErpRepairFormProjectDispatchServiceImpl.java
View file @
3839c385
package
com
.
maintain
.
business
.
service
.
impl
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.collection.CollUtil
;
import
com.maintain.business.domain.ErpRepairFormProject
;
import
com.maintain.business.domain.bo.ErpRepairFormProjectDispatchBatchBo
;
import
com.maintain.business.domain.vo.ErpUserVo
;
...
...
@@ -158,12 +159,50 @@ public class ErpRepairFormProjectDispatchServiceImpl implements IErpRepairFormPr
* 修改报修单-报修项目-派工
*/
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
Boolean
updateByBo
(
ErpRepairFormProjectDispatchBo
bo
)
{
ErpRepairFormProjectDispatch
projectDispatch
=
baseMapper
.
selectById
(
bo
.
getId
());
projectDispatch
.
setDispatchManHour
(
bo
.
getDispatchManHour
());
projectDispatch
.
setActualManHour
(
bo
.
getDispatchManHour
().
subtract
(
bo
.
getDeductManHour
()));
projectDispatch
.
setDeductManHour
(
bo
.
getDeductManHour
());
return
baseMapper
.
updateById
(
projectDispatch
)
>
0
;
boolean
flag
=
baseMapper
.
updateById
(
projectDispatch
)
>
0
;
List
<
ErpRepairFormProjectDispatch
>
formProjectDispatches
=
baseMapper
.
selectList
(
Wrappers
.<
ErpRepairFormProjectDispatch
>
lambdaQuery
()
.
eq
(
ErpRepairFormProjectDispatch:
:
getRepairFormProjectId
,
projectDispatch
.
getRepairFormProjectId
()));
//计算总工时
BigDecimal
reduce
=
formProjectDispatches
.
stream
().
map
(
ErpRepairFormProjectDispatch:
:
getActualManHour
).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
);
ErpRepairFormProject
project
=
new
ErpRepairFormProject
();
project
.
setId
(
projectDispatch
.
getRepairFormProjectId
());
project
.
setActualTime
(
reduce
);
projectMapper
.
updateById
(
project
);
return
flag
;
}
@Override
public
Boolean
updateBatchByBo
(
List
<
ErpRepairFormProjectDispatchBo
>
boList
)
{
if
(
CollUtil
.
isEmpty
(
boList
)){
return
false
;
}
List
<
ErpRepairFormProjectDispatch
>
dispatchList
=
boList
.
stream
().
map
(
bo
->
{
ErpRepairFormProjectDispatch
projectDispatch
=
new
ErpRepairFormProjectDispatch
();
projectDispatch
.
setId
(
bo
.
getId
());
projectDispatch
.
setDispatchManHour
(
bo
.
getDispatchManHour
());
projectDispatch
.
setActualManHour
(
bo
.
getDispatchManHour
().
subtract
(
bo
.
getDeductManHour
()));
projectDispatch
.
setDeductManHour
(
bo
.
getDeductManHour
());
return
projectDispatch
;
}).
collect
(
Collectors
.
toList
());
baseMapper
.
updateBatchById
(
dispatchList
);
//计算总工时
BigDecimal
reduce
=
dispatchList
.
stream
().
map
(
ErpRepairFormProjectDispatch:
:
getActualManHour
).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
);
ErpRepairFormProject
project
=
new
ErpRepairFormProject
();
project
.
setId
(
boList
.
get
(
0
).
getRepairFormProjectId
());
project
.
setActualTime
(
reduce
);
projectMapper
.
updateById
(
project
);
return
true
;
}
/**
...
...
maintain-ui/src/api/business/repairFormProjectDispatch.js
View file @
3839c385
...
...
@@ -44,6 +44,16 @@ export function updateRepairFormProjectDispatch(data) {
})
}
// 批量修改报修单-报修项目-派工
export
function
updateRepairFormProjectDispatchBatch
(
data
)
{
return
request
({
url
:
'
/business/repairFormProjectDispatch/batch
'
,
method
:
'
put
'
,
data
:
data
})
}
// 删除报修单-报修项目-派工
export
function
delRepairFormProjectDispatch
(
id
)
{
return
request
({
...
...
maintain-ui/src/views/business/repairFormProjectDispatch/index.vue
View file @
3839c385
...
...
@@ -90,7 +90,8 @@ import {
delRepairFormProjectDispatch
,
addRepairFormProjectDispatch
,
updateRepairFormProjectDispatch
,
addRepairFormProjectDispatchP
addRepairFormProjectDispatchP
,
updateRepairFormProjectDispatchBatch
}
from
'
@/api/business/repairFormProjectDispatch
'
import
user
from
"
../user/index
"
...
...
@@ -205,7 +206,7 @@ export default {
const
totalDispatchManHour
=
this
.
repairFormProjectDispatchList
.
reduce
((
total
,
item
)
=>
{
return
total
+
(
Number
(
item
.
dispatchManHour
)
||
0
);
},
0
);
return
totalDispatchManHour
!==
Number
(
this
.
data
.
standardManHour
);
return
totalDispatchManHour
.
toFixed
(
1
)
!==
Number
(
this
.
data
.
standardManHour
).
toFixed
(
1
);
}
},
created
()
{
...
...
@@ -291,7 +292,7 @@ export default {
const
totalDispatchManHour
=
this
.
repairFormProjectDispatchList
.
reduce
((
total
,
item
)
=>
{
return
total
+
(
Number
(
item
.
dispatchManHour
)
||
0
);
},
0
);
return
totalDispatchManHour
===
Number
(
this
.
data
.
standardManHour
);
return
totalDispatchManHour
.
toFixed
(
1
)
===
Number
(
this
.
data
.
standardManHour
).
toFixed
(
1
);
},
/** 分配工时变化处理 */
handleDispatchManHourChange
(
row
)
{
...
...
@@ -301,23 +302,34 @@ export default {
},
0
);
// 如果总分配工时不等于标准工时,显示提示
if
(
this
.
data
.
standardManHour
&&
totalDispatchManHour
!==
Number
(
this
.
data
.
standardManHour
))
{
this
.
$message
.
warning
(
`总分配工时(
${
totalDispatchManHour
}
)不等于项目标准工时(
${
this
.
data
.
standardManHour
}
)`
);
if
(
this
.
data
.
standardManHour
&&
totalDispatchManHour
.
toFixed
(
1
)
!==
Number
(
this
.
data
.
standardManHour
).
toFixed
(
1
))
{
this
.
$message
.
warning
(
`总分配工时(
${
totalDispatchManHour
.
toFixed
(
1
)}
)不等于项目标准工时(
${
Number
(
this
.
data
.
standardManHour
).
toFixed
(
1
)
}
)`
);
return
false
;
}
// 更新实际工时
row
.
actualManHour
=
(
Number
(
row
.
dispatchManHour
)
-
Number
(
row
.
deductManHour
)).
toFixed
(
1
);
// 提交更新
this
.
submit
Form
(
row
);
// 提交更新
所有数据
this
.
submit
AllForm
(
);
},
/**
提交按钮
*/
/**
扣罚工时变化处理
*/
submitForm
(
row
)
{
// 更新实际工时
row
.
actualManHour
=
(
Number
(
row
.
dispatchManHour
)
-
Number
(
row
.
deductManHour
)).
toFixed
(
1
);
// 提交更新所有数据
this
.
submitAllForm
();
},
/** 提交所有数据 */
submitAllForm
()
{
this
.
buttonLoading
=
true
;
updateRepairFormProjectDispatch
(
row
).
then
(
response
=>
{
// 使用批量更新接口提交所有行数据
updateRepairFormProjectDispatchBatch
(
this
.
repairFormProjectDispatchList
).
then
(
response
=>
{
this
.
$modal
.
msgSuccess
(
"
修改成功
"
);
this
.
open
=
false
;
this
.
getList
();
}).
catch
(
error
=>
{
console
.
error
(
error
);
this
.
$modal
.
msgError
(
"
修改失败
"
);
}).
finally
(()
=>
{
this
.
buttonLoading
=
false
;
});
...
...
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