diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/taskdispatch/TaskDispatchController.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/taskdispatch/TaskDispatchController.java index 5fc8638..2b3cfac 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/taskdispatch/TaskDispatchController.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/taskdispatch/TaskDispatchController.java @@ -155,7 +155,7 @@ public class TaskDispatchController { @Parameter(name = "id", description = "编号", required = true) @Parameter(name = "dispatchType", description = "派工单类型",required = false) @PreAuthorize("@ss.hasPermission('heli:task-dispatch:delete')") - public CommonResult deleteTaskDispatchDetail(@RequestParam("id") Long id,@RequestParam("dispatchType") String dispatchType) { + public CommonResult deleteTaskDispatchDetail(@RequestParam("id") Long id,@RequestParam(value ="dispatchType", required = false) String dispatchType) { if (dispatchType != null){ taskDispatchService.deleteTaskDispatchDetailOwner(id); }else { diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/taskdispatch/TaskDispatchDO.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/taskdispatch/TaskDispatchDO.java index e3cff5a..3bd6e7c 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/taskdispatch/TaskDispatchDO.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/taskdispatch/TaskDispatchDO.java @@ -130,7 +130,7 @@ public class TaskDispatchDO extends BaseDO { private String blueprintNo; @TableField(exist = false) - private Integer amount; + private BigDecimal amount; @TableField(exist = false) private String unit; diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/taskdispatch/TaskDispatchMapper.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/taskdispatch/TaskDispatchMapper.java index db405ac..71aeb67 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/taskdispatch/TaskDispatchMapper.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/taskdispatch/TaskDispatchMapper.java @@ -161,7 +161,7 @@ public interface TaskDispatchMapper extends BaseMapperX { default List getListJg(Long id, Long projectSubId){ MPJLambdaWrapper query = new MPJLambdaWrapper<>(); query.selectAll(TaskDispatchDO.class) - .select("z.name as materialName", "z.procedure_type as materialType", "CASE WHEN d.work_type = 1 THEN SUM(COALESCE(d.work_time, 0)) ELSE '' as amount") + .select("z.name as materialName", "z.procedure_type as materialType", "CASE WHEN d.work_type = 1 THEN SUM(COALESCE(d.work_time, 0)) ELSE NULL END as amount") .select("p.grade_cost as shiJiMoney","u1.nickname as ownerName","p.name as name") .select(" ROUND(SUM(CASE WHEN d.work_type = 1 THEN COALESCE(d.work_time, 0) * p.grade_cost ELSE COALESCE(d.work_time, 0) END), 2) as zanGuMoney") .leftJoin(TaskDispatchDetailDO.class, "x", TaskDispatchDetailDO::getDispatchId,TaskDispatchDO::getId) diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/taskdispatch/TaskDispatchServiceImpl.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/taskdispatch/TaskDispatchServiceImpl.java index d199dc3..29f80e3 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/taskdispatch/TaskDispatchServiceImpl.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/taskdispatch/TaskDispatchServiceImpl.java @@ -242,7 +242,7 @@ public class TaskDispatchServiceImpl implements TaskDispatchService { TaskDispatchDO taskDispatchDO = taskDispatchMapper.selectById(id); Integer num = projectOrderSubMapper.selectById(taskDispatchDO.getProjectSubId()).getAmount(); taskDispatchDO.setProjectSubAmount(num); - taskDispatchDO.setAmount(num*taskDispatchDO.getAmount()); + taskDispatchDO.setAmount(taskDispatchDO.getAmount().multiply(BigDecimal.valueOf(num))); convertAssembleProcedure(taskDispatchDO); return taskDispatchDO; } @@ -311,7 +311,7 @@ public class TaskDispatchServiceImpl implements TaskDispatchService { }else { num= numMap.get(taskDispatchDO.getProjectSubId()); } - taskDispatchDO.setAmount(taskDispatchDO.getAmount()*num); + taskDispatchDO.setAmount(taskDispatchDO.getAmount().multiply(BigDecimal.valueOf(num))); } return taskDispatchDOPageResult; diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/taskdispatch/detailDialog.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/taskdispatch/detailDialog.vue index 07dffb2..dd90dd2 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/taskdispatch/detailDialog.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/taskdispatch/detailDialog.vue @@ -1278,28 +1278,41 @@ const submitForm = async (operate) => { message.error('派工明细不能为空') return } - for(var i = 0 ; i < formData.value.taskDispatchDetails.length ; i++){ - if( formData.value.taskDispatchDetails[i].endTime != undefined &&formData.value.taskDispatchDetails[i].endTime != null &&formData.value.taskDispatchDetails[i].endTime != ''){ + let hasChecked = false; // 标记是否已经检查过超期日期 + for (var i = 0; i < formData.value.taskDispatchDetails.length; i++) { + if (hasChecked) break; // 如果已经检查过超期日期并处理,直接跳出循环 - const d1 = new Date(formData.value.taskDispatchDetails[i].endTime); - const d2 = new Date(formData.value.requiredCompletedDate); + if ( + formData.value.taskDispatchDetails[i].endTime != undefined && + formData.value.taskDispatchDetails[i].endTime != null && + formData.value.taskDispatchDetails[i].endTime != '' + ) { + const d1 = new Date(formData.value.taskDispatchDetails[i].endTime); + const d2 = new Date(formData.value.requiredCompletedDate); - d1.setHours(0, 0, 0, 0); - d2.setHours(0, 0, 0, 0); + d1.setHours(0, 0, 0, 0); + d2.setHours(0, 0, 0, 0); + if (d1 > d2) { + let name; + procedureList.value.forEach((items) => { + if (items.id == formData.value.taskDispatchDetails[i].procedureId) { + name = items.name; + } + }); - if( d1>=d2){ - let name; - procedureList.value.forEach(items =>{ - if (items.id==formData.value.taskDispatchDetails[i].procedureId){ - name=items.name + const result = await message.confirm( + "工序(" + name + ")预计结束日期超过生产计划日期" + formatDate1(d2) + ",是否继续?" + ); + + if (!result) { + return; // 用户点击取消,停止执行 + } else { + hasChecked = true; // 用户点击确认,标记为已处理,跳出循环 + break; } - }) - - await message.confirm('工序('+name+")预计结束日期超过生产计划日期"+formatDate1(d2)+"是否继续 '") - return - } + } } } var ownerIsNull = false;