From 060d627cbae0bbff898026e4db4da315fea9518c Mon Sep 17 00:00:00 2001 From: z Date: Tue, 30 Sep 2025 14:21:09 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B7=A5=E8=89=BA=E6=8A=A5=E5=B7=A5=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../TaskDispatchDetailLogDO.java | 1 + .../materialplan/MaterialPlanServiceImpl.java | 2 + .../service/screen/ScreenServiceImpl.java | 46 +++++++------- .../src/views/heli/materialplan/part.vue | 1 + .../src/views/heli/plan/productionPrint.vue | 20 +++--- .../src/views/heli/processdesign/detail.vue | 63 +++++++++++++++++-- 6 files changed, 96 insertions(+), 37 deletions(-) diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/taskdispatchdetaillog/TaskDispatchDetailLogDO.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/taskdispatchdetaillog/TaskDispatchDetailLogDO.java index 50972f7a..d275e69c 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/taskdispatchdetaillog/TaskDispatchDetailLogDO.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/taskdispatchdetaillog/TaskDispatchDetailLogDO.java @@ -55,5 +55,6 @@ public class TaskDispatchDetailLogDO extends BaseDO { * 工序名称 */ private String procedureName; + private String type; } \ No newline at end of file diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/materialplan/MaterialPlanServiceImpl.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/materialplan/MaterialPlanServiceImpl.java index 71135155..a8951855 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/materialplan/MaterialPlanServiceImpl.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/materialplan/MaterialPlanServiceImpl.java @@ -342,6 +342,7 @@ public class MaterialPlanServiceImpl implements MaterialPlanService { taskDispatchDetailDO.setPlanStatus(1); taskDispatchDetailDO.setMatPlanProcess("Y"); taskDispatchDetailDO.setProjectMaterialPlanNo(planDO.getProjectMaterialPlanNo()); + taskDispatchDetailDO.setType("提交"); saveLog(taskDispatchDetailDO); } // materialPlanBoomMapper.insertBatch(materialPlanBoomDOList); @@ -588,6 +589,7 @@ public class MaterialPlanServiceImpl implements MaterialPlanService { log.setBlueprintNo(detailDO.getBlueprintNo()); log.setProcedureName(detailDO.getProcedureName()); log.setProjectSubName(detailDO.getProjectSubName()); + log.setType(detailDO.getType()); taskDispatchDetailLogMapper.insert(log); return true; } diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/screen/ScreenServiceImpl.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/screen/ScreenServiceImpl.java index 4cf89ea2..f4147da6 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/screen/ScreenServiceImpl.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/screen/ScreenServiceImpl.java @@ -370,32 +370,32 @@ public class ScreenServiceImpl implements ScreenService { Calendar calendar = Calendar.getInstance(); LocalDateTime firstDayInNewYearTime = LocalDateTime.of(calendar.get(Calendar.YEAR), 1, 1, 0, 0); -// MPJLambdaWrapper query = new MPJLambdaWrapper<>(); -// query.selectAll(ProjectOrderDO.class) -//// .selectCount(ProjectOrderDO::getId, "projectCount") -// .select("DATE_FORMAT(create_time, '%m') as projectMonth") -// .ge(ProjectOrderDO::getCreateTime, firstDayInNewYearTime) -// .eq(ProjectOrderDO::getProperty,1) -// .eq(ProjectOrderDO::getIsSnapshot,0) -// .eq(ProjectOrderDO::getOrderStatus, ProjectOrderStatusEnum.APPROVE.getCode()) -//// .groupBy("t.business_line", "DATE_FORMAT(create_time, '%m')") -// ; -// List projectOrderDOList = projectOrderMapper.selectList(query); - MPJLambdaWrapper planQuery = new MPJLambdaWrapper<>(); - planQuery.selectAll(PlanSubDO.class) - .select("DATE_FORMAT(t.create_time, '%m') as projectMonth") - .select("po.business_line as businessLine") - .leftJoin(ProjectOrderDO.class,"po",ProjectOrderDO::getId,PlanSubDO::getProjectId) - .ge(PlanSubDO::getCreateTime, firstDayInNewYearTime) + MPJLambdaWrapper query = new MPJLambdaWrapper<>(); + query.selectAll(ProjectOrderDO.class) +// .selectCount(ProjectOrderDO::getId, "projectCount") + .select("DATE_FORMAT(create_time, '%m') as projectMonth") + .ge(ProjectOrderDO::getCreateTime, firstDayInNewYearTime) + .eq(ProjectOrderDO::getProperty,1) .eq(ProjectOrderDO::getIsSnapshot,0) - .innerJoin(PlanDO.class, "a", PlanDO::getId, PlanSubDO::getProjectPlanId) - .notIn(PlanDO::getStatus, ProjectPlanStatusEnum.TERMINATE.getCode(), ProjectPlanStatusEnum.COMPLETE.getCode()); - List planSubDOS = planSubMapper.selectList(planQuery); + .eq(ProjectOrderDO::getOrderStatus, ProjectOrderStatusEnum.APPROVE.getCode()) +// .groupBy("t.business_line", "DATE_FORMAT(create_time, '%m')") + ; + List projectOrderDOList = projectOrderMapper.selectList(query); +// MPJLambdaWrapper planQuery = new MPJLambdaWrapper<>(); +// planQuery.selectAll(PlanSubDO.class) +// .select("DATE_FORMAT(t.create_time, '%m') as projectMonth") +// .select("po.business_line as businessLine") +// .leftJoin(ProjectOrderDO.class,"po",ProjectOrderDO::getId,PlanSubDO::getProjectId) +// .ge(PlanSubDO::getCreateTime, firstDayInNewYearTime) +// .eq(ProjectOrderDO::getIsSnapshot,0) +// .innerJoin(PlanDO.class, "a", PlanDO::getId, PlanSubDO::getProjectPlanId) +// .notIn(PlanDO::getStatus, ProjectPlanStatusEnum.TERMINATE.getCode(), ProjectPlanStatusEnum.COMPLETE.getCode()); +// List planSubDOS = planSubMapper.selectList(planQuery); - Map> countWithByBusinessLineGroupMonth = planSubDOS.stream().collect(Collectors.groupingBy(PlanSubDO::getProjectMonth)); + Map> countWithByBusinessLineGroupMonth = projectOrderDOList.stream().collect(Collectors.groupingBy(ProjectOrderDO::getProjectMonth)); months.forEach(month -> { - List monthProjectList = countWithByBusinessLineGroupMonth.get(Integer.valueOf(month.replace("月",""))); + List monthProjectList = countWithByBusinessLineGroupMonth.get(Integer.valueOf(month.replace("月",""))); if (CollUtil.isEmpty(monthProjectList)){ total.add(0); black.add(0); @@ -404,7 +404,7 @@ public class ScreenServiceImpl implements ScreenService { } int coloredCount = 0; int blackCount=0; - Map> countWithByBusinessLine = monthProjectList.stream().collect(Collectors.groupingBy(PlanSubDO::getBusinessLine)); + Map> countWithByBusinessLine = monthProjectList.stream().collect(Collectors.groupingBy(ProjectOrderDO::getBusinessLine)); if(CollUtil.isNotEmpty(countWithByBusinessLine.get(BusinessLineEnum.BLACK.getCode()))){ blackCount = countWithByBusinessLine.get(BusinessLineEnum.BLACK.getCode()).size() ; } diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/part.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/part.vue index ca7bbc25..233084e7 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/part.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/part.vue @@ -238,6 +238,7 @@ const change =(row:any)=>{ } } if (row){ + row.type='修改' MaterialPlanApi.saveLog(row) } } diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/plan/productionPrint.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/plan/productionPrint.vue index afad49ee..3c067739 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/plan/productionPrint.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/plan/productionPrint.vue @@ -25,7 +25,7 @@ {{ formData.customerName }}({{ formData.customer.brief}}) - 编码: + 编码 {{ formData.customer.code }} @@ -35,7 +35,7 @@ {{ formData.projectName }} - 业务员: + 业务员 {{ formData.businessManName }} @@ -46,17 +46,17 @@ {{ formatDate(new Date(formData.projectEndTime), 'YYYY-MM-DD') }} 天数 {{ betweenDay(new Date(formData.projectStartTime), new Date(formData.projectEndTime)) +1 }} - 是否有价格: + 是否有价格 {{ getDictLabel(DICT_TYPE.HELI_COMMON_IS_OR_NOT, formData.hasPrice) }} - 项目负责人: + 项目负责人 {{ userInit.find((user) => user.id == planData.projectOwner)?.nickname }}
-
类别:
-
性质:
+
类别
+
性质
@@ -69,7 +69,7 @@
-
自客户提供资料:
+
自客户提供资料
@@ -87,7 +87,7 @@ - 是否要工艺: + 是否要工艺 {{ getDictLabel(DICT_TYPE.HELI_COMMON_IS_OR_NOT, planData.hasCraft) }} @@ -107,7 +107,7 @@ 备注 - + {{ formData.remark }} @@ -116,7 +116,7 @@ -
子项目信息:
+
子项目信息
diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/processdesign/detail.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/processdesign/detail.vue index 0fb4ec1c..a8c31e11 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/processdesign/detail.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/processdesign/detail.vue @@ -754,10 +754,65 @@ const updateFlag = async(row:any) =>{ } await ProcessDesignApi.updateFlag(row) //更新一下这条数据的状态 - message.success(t('common.operationSuccess')) - commonStore.setStore('active', 'update'); - commonStore.setStore('id', processDesignId); - reload() + formData.value.processDesignProgressList = await ProcessDesignApi.getProcessDesignProgressListByProcessDesignId(formData.value.id) + const newVar = await UserApi.isAdministrator(); + if (newVar==true){ + ststus.value=true + } + if( formData.value.processDesignProgressList != null && formData.value.processDesignProgressList.length > 0){ + var maxTime = null; + if(formData.value.processDesignProgressList.length == 1){ + formData.value.processDesignProgressList[0].hasNext = false; + console.log(ststus.value) + if(formData.value.processDesignProgressList[0].endTime != null && formData.value.processDesignProgressList[0].endTime != ''){ + if (ststus.value){ + formData.value.processDesignProgressList[0].flag=0 + }else { + if (formData.value.processDesignProgressList[0].isOver == 1 || formData.value.isOverProcess == 1) { + formData.value.processDesignProgressList[0].flag = 1 + } + } + + formData.value.processDesignProgressList[0].maxTime = (formData.value.processDesignProgressList[0].endTime - formData.value.processDesignProgressList[0].beginTime)/ (1000 * 60 * 60); + }else { + formData.value.processDesignProgressList[0].flag=1 + + } + } else{ + console.log(ststus.value) + + var maxIndex = 0; + for (let index = 0; index < formData.value.processDesignProgressList.length; index++) { + var item = formData.value.processDesignProgressList[index]; + if(item.endTime != null && item.endTime != ''){ + item.maxTime = (item.endTime - item.beginTime)/ (1000 * 60 * 60); + if (ststus.value){ + item.flag=0 + }else { + if (item.isOver==1||formData.value.isOverProcess == 1) + item.flag=1 + } + }else { + formData.value.processDesignProgressList[0].flag=1 + + } + if(maxTime == null){ + maxIndex = index; + maxTime = item.createTime; + item.hasNext = false; + }else{ + if(item.createTime > maxTime){ + formData.value.processDesignProgressList[maxIndex].hasNext = true; + maxIndex = index; + item.hasNext = false; + }else{ + item.hasNext = true; + } + } + + } + } + } } const overProcess = () =>{ if(formData.value.processDesignProgressList != null && formData.value.processDesignProgressList.length > 0){