Houjie
2025-07-09 777162c6adf6e923611669aa9cc51b3ad71a90a3
Merge remote-tracking branch 'origin/master'
已修改2个文件
181 ■■■■ 文件已修改
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java 147 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamRepairOrderServiceImpl.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java
@@ -225,9 +225,10 @@
            triggerProcess(eamInspectionOrder);
            //更新设备保养状态
            eamEquipmentExtendService.updateEquipmentInspectionStatus(eamInspectionOrder.getEquipmentId(), EquipmentMaintenanceStatus.UNDER_INSPECTION.name());
            //推送企业微信消息
            sendQywxTemplateCardMessage(eamInspectionOrder, null);
        }
        //推送企业微信消息
        sendQywxTemplateCardMessage(eamInspectionOrder, null);
        return true;
    }
@@ -236,26 +237,27 @@
        String inspectionStatus = eamInspectionOrder.getInspectionStatus();
        EamEquipment equipment = eamEquipmentService.getById(eamInspectionOrder.getEquipmentId());
        eamInspectionOrder.setEquipmentCode(equipment.getEquipmentCode());
        if (InspectionStatus.WAIT_INSPECTION.name().equals(inspectionStatus)) {
            //工单待领取,推送消息给所有操作工
            String orgId = Optional.ofNullable(eamEquipmentService.getById(eamInspectionOrder.getEquipmentId()))
                    .map(EamEquipment::getOrgId)
                    .orElse(null);
            if (orgId == null) {
                throw new IllegalArgumentException("未找到设备的组织 ID");
            }
            //查询该设备所属产线的所有操作工
            List<SysUser> sysUserList = mdcUserProductionService.queryByPostAndProId("PCR0001", orgId);
            List<String> usernameList = sysUserList.stream().map(SysUser::getUsername).collect(Collectors.toList());
            if (usernameList.isEmpty()) {
                throw new IllegalArgumentException("未找到该设备所属产线的操作工,请联系管理员处理");
            }
            String nextAssigneeStr = usernameList.stream()
                    .filter(Objects::nonNull) // 可选:过滤 null 值
                    .collect(Collectors.joining(","));
            String touser = wechatEnterpriseService.getTouser(nextAssigneeStr, false);
            templateCard.setTouser(touser);
        }
        //todo 目前确认,待领取工单不推送
        //if (InspectionStatus.WAIT_INSPECTION.name().equals(inspectionStatus)) {
        //    //工单待领取,推送消息给所有操作工
        //    String orgId = Optional.ofNullable(eamEquipmentService.getById(eamInspectionOrder.getEquipmentId()))
        //            .map(EamEquipment::getOrgId)
        //            .orElse(null);
        //    if (orgId == null) {
        //        throw new IllegalArgumentException("未找到设备的组织 ID");
        //    }
        //    //查询该设备所属产线的所有操作工
        //    List<SysUser> sysUserList = mdcUserProductionService.queryByPostAndProId("PCR0001", orgId);
        //    List<String> usernameList = sysUserList.stream().map(SysUser::getUsername).collect(Collectors.toList());
        //    if (usernameList.isEmpty()) {
        //        throw new IllegalArgumentException("未找到该设备所属产线的操作工,请联系管理员处理");
        //    }
        //    String nextAssigneeStr = usernameList.stream()
        //            .filter(Objects::nonNull) // 可选:过滤 null 值
        //            .collect(Collectors.joining(","));
        //    String touser = wechatEnterpriseService.getTouser(nextAssigneeStr, false);
        //    templateCard.setTouser(touser);
        //}
        if (InspectionStatus.UNDER_INSPECTION.name().equals(inspectionStatus)) {
            //工单已开始点检,推送消息给具体操作工(新增工单时指定、领取工单的操作工)
            String operator = eamInspectionOrder.getOperator();
@@ -274,11 +276,12 @@
            String touser = wechatEnterpriseService.getTouser(nextAssigneeStr, false);
            templateCard.setTouser(touser);
        }
        if (InspectionStatus.COMPLETE.name().equals(inspectionStatus)) {
            //工单已确认完成,推送消息给点检人
            String touser = wechatEnterpriseService.getTouser(eamInspectionOrder.getOperator(), false);
            templateCard.setTouser(touser);
        }
        //todo 工单完成,不推送消息
        //if (InspectionStatus.COMPLETE.name().equals(inspectionStatus)) {
        //    //工单已确认完成,推送消息给点检人
        //    String touser = wechatEnterpriseService.getTouser(eamInspectionOrder.getOperator(), false);
        //    templateCard.setTouser(touser);
        //}
        TemplateCardEntity templateCardEntity = new TemplateCardEntity();
        templateCard.setTemplate_card(templateCardEntity);
@@ -287,23 +290,23 @@
        mainTitle.setTitle("设备点检");
        templateCardEntity.setMain_title(mainTitle);
        if (InspectionStatus.WAIT_INSPECTION.name().equals(inspectionStatus)) {
            templateCardEntity.setSub_title_text("新增设备点检工单: " + eamInspectionOrder.getOrderNum() + " ,请进入系统领取");
        }
        //if (InspectionStatus.WAIT_INSPECTION.name().equals(inspectionStatus)) {
        //    templateCardEntity.setSub_title_text("新增设备点检工单: " + eamInspectionOrder.getOrderNum() + " ,请进入系统领取");
        //}
        if (InspectionStatus.UNDER_INSPECTION.name().equals(inspectionStatus)) {
            if (Objects.nonNull(request) && StrUtil.isNotBlank(request.getConfirmDealType())) {
                //是驳回的单子
                templateCardEntity.setSub_title_text("工单: " + eamInspectionOrder.getOrderNum() + " 被驳回,请重新进行设备点检");
            } else {
                templateCardEntity.setSub_title_text("工单: " + eamInspectionOrder.getOrderNum() + " 已被领取,开始进行设备点检");
                templateCardEntity.setSub_title_text("已领取工单: " + eamInspectionOrder.getOrderNum() + ",开始进行设备点检");
            }
        }
        if (InspectionStatus.WAIT_CONFIRM.name().equals(inspectionStatus)) {
            templateCardEntity.setSub_title_text("工单: " + eamInspectionOrder.getOrderNum() + " 已完成设备点检,请进入系统确认");
        }
        if (InspectionStatus.COMPLETE.name().equals(inspectionStatus)) {
            templateCardEntity.setSub_title_text("工单: " + eamInspectionOrder.getOrderNum() + " 已完成点检后确认");
        }
        //if (InspectionStatus.COMPLETE.name().equals(inspectionStatus)) {
        //    templateCardEntity.setSub_title_text("工单: " + eamInspectionOrder.getOrderNum() + " 已完成点检后确认");
        //}
        List<TemplateCardEntity.HorizontalContent> horizontalContentList = CollectionUtil.newArrayList();
        TemplateCardEntity.HorizontalContent content1 = new TemplateCardEntity.HorizontalContent();
@@ -332,39 +335,51 @@
            horizontalContentList.add(content4);
        }
        TemplateCardEntity.HorizontalContent content5 = new TemplateCardEntity.HorizontalContent();
        TemplateCardEntity.HorizontalContent content6 = new TemplateCardEntity.HorizontalContent();
        TemplateCardEntity.HorizontalContent content7 = new TemplateCardEntity.HorizontalContent();
        if (InspectionStatus.WAIT_INSPECTION.name().equals(inspectionStatus)) {
            content5.setKeyname("发起人");
            SysUser sysUser = sysUserService.getUserByName(eamInspectionOrder.getCreateBy());
            content5.setValue(sysUser.getRealname());
            horizontalContentList.add(content5);
        }
        if (InspectionStatus.UNDER_INSPECTION.name().equals(inspectionStatus) && (Objects.isNull(request) || StrUtil.isBlank(request.getConfirmDealType()))) {
            content6.setKeyname("领取人");
            SysUser sysUser = sysUserService.getUserByName(eamInspectionOrder.getOperator());
            content6.setValue(sysUser.getRealname());
            horizontalContentList.add(content6);
        //if (InspectionStatus.WAIT_INSPECTION.name().equals(inspectionStatus)) {
        //    TemplateCardEntity.HorizontalContent content3 = new TemplateCardEntity.HorizontalContent();
        //    content3.setKeyname("发起人");
        //    SysUser sysUser = sysUserService.getUserByName(eamInspectionOrder.getCreateBy());
        //    content3.setValue(sysUser.getRealname());
        //    horizontalContentList.add(content3);
        //}
        if (InspectionStatus.UNDER_INSPECTION.name().equals(inspectionStatus)) {
            if (Objects.isNull(request)) {
                TemplateCardEntity.HorizontalContent content = new TemplateCardEntity.HorizontalContent();
                content.setKeyname("领取人");
                SysUser sysUser = sysUserService.getUserByName(eamInspectionOrder.getOperator());
                content.setValue(sysUser.getRealname());
                horizontalContentList.add(content);
            } else {
                TemplateCardEntity.HorizontalContent content3 = new TemplateCardEntity.HorizontalContent();
                TemplateCardEntity.HorizontalContent content4 = new TemplateCardEntity.HorizontalContent();
                content3.setKeyname("确认人");
                String confirmAssignee = request.getAssignee();
                SysUser confirmUser = sysUserService.getUserByName(confirmAssignee);
                content3.setValue(confirmUser.getRealname());
                horizontalContentList.add(content3);
                content4.setKeyname("确认意见");
                content4.setValue("驳回");
                horizontalContentList.add(content4);
            }
        }
        if (InspectionStatus.WAIT_CONFIRM.name().equals(inspectionStatus)) {
            content5.setKeyname("点检人");
            TemplateCardEntity.HorizontalContent content3 = new TemplateCardEntity.HorizontalContent();
            content3.setKeyname("点检人");
            SysUser sysUser = sysUserService.getUserByName(eamInspectionOrder.getOperator());
            content5.setValue(sysUser.getRealname());
            horizontalContentList.add(content5);
            content3.setValue(sysUser.getRealname());
            horizontalContentList.add(content3);
        }
        if ((InspectionStatus.COMPLETE.name().equals(inspectionStatus) || InspectionStatus.UNDER_INSPECTION.name().equals(inspectionStatus)) && (Objects.nonNull(request) && StrUtil.isNotBlank(request.getConfirmDealType()))) {
            content5.setKeyname("确认人");
            SysUser sysUser = sysUserService.getUserByName(eamInspectionOrder.getCreateBy());
            content5.setValue(sysUser.getRealname());
            horizontalContentList.add(content5);
        }
        if ((InspectionStatus.COMPLETE.name().equals(inspectionStatus) || InspectionStatus.UNDER_INSPECTION.name().equals(inspectionStatus)) && (Objects.nonNull(request) && StrUtil.isNotBlank(request.getConfirmDealType()))) {
            content7.setKeyname("确认意见");
            content7.setValue("1".equals(request.getConfirmDealType()) ? "通过" : "驳回");
            horizontalContentList.add(content7);
        }
        //if ((InspectionStatus.COMPLETE.name().equals(inspectionStatus))) {
        //    TemplateCardEntity.HorizontalContent content3 = new TemplateCardEntity.HorizontalContent();
        //    TemplateCardEntity.HorizontalContent content4 = new TemplateCardEntity.HorizontalContent();
        //    content3.setKeyname("确认人");
        //    SysUser sysUser = sysUserService.getUserByName(eamInspectionOrder.getCreateBy());
        //    content3.setValue(sysUser.getRealname());
        //    horizontalContentList.add(content3);
        //    content4.setKeyname("确认意见");
        //    content4.setValue("通过");
        //    horizontalContentList.add(content4);
        //}
        templateCardEntity.setHorizontal_content_list(horizontalContentList);
@@ -539,8 +554,10 @@
            // 更新工单信息
            updateEamInspectionOrder(eamInspectionOrder);
            //微信消息推送
            sendQywxTemplateCardMessage(eamInspectionOrder, eamInspectionOrderRequest);
            //微信消息推送(工单完成不推送)
            if (!InspectionStatus.COMPLETE.name().equals(eamInspectionOrder.getInspectionStatus())) {
                sendQywxTemplateCardMessage(eamInspectionOrder, eamInspectionOrderRequest);
            }
            //查询数据,进行设备维修处理
            if (eamInspectionOrder.getInspectionStatus().equals(InspectionStatus.WAIT_CONFIRM.name())) {
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamRepairOrderServiceImpl.java
@@ -302,7 +302,7 @@
        if (ReportRepairEnum.UNDER_REPAIR.name().equals(repairStatus)) {
            if (Objects.isNull(reportRepair) && Objects.isNull(request)) {
                templateCardEntity.setSub_title_text("收到指派维修工单: " + eamRepairOrder.getRepairCode() + " 请开始进行维修");
                templateCardEntity.setSub_title_text("收到指派工单: " + eamRepairOrder.getRepairCode() + " 请开始进行维修");
            } else if (Objects.isNull(request)) {
                templateCardEntity.setSub_title_text("已领取维修工单: " + eamRepairOrder.getRepairCode() + " 开始进行维修");
            }
@@ -344,42 +344,32 @@
            horizontalContentList.add(content4);
        }
        TemplateCardEntity.HorizontalContent content5 = new TemplateCardEntity.HorizontalContent();
        TemplateCardEntity.HorizontalContent content6 = new TemplateCardEntity.HorizontalContent();
        if (ReportRepairEnum.UNDER_REPAIR.name().equals(repairStatus)) {
            TemplateCardEntity.HorizontalContent content3 = new TemplateCardEntity.HorizontalContent();
            SysUser sysUser = sysUserService.getUserByName(eamRepairOrder.getRepairer());
            if (Objects.isNull(reportRepair) && Objects.isNull(request)) {
                content5.setKeyname("指派人");
                content3.setKeyname("指派人");
                SysUser assignUser = sysUserService.getUserByName(eamRepairOrder.getCreateBy());
                content5.setValue(assignUser.getRealname());
                horizontalContentList.add(content5);
                content3.setValue(assignUser.getRealname());
                horizontalContentList.add(content3);
            } else if (Objects.isNull(request)) {
                TemplateCardEntity.HorizontalContent content = new TemplateCardEntity.HorizontalContent();
                content.setKeyname("领取人");
                content.setValue(sysUser.getRealname());
                horizontalContentList.add(content);
            } else {
                content5.setKeyname("备件领取人");
                content3.setKeyname("备件领取人");
                SysUser assignUser = sysUserService.getUserByName(request.getAssignee());
                content5.setValue(assignUser.getRealname());
                horizontalContentList.add(content5);
                content3.setValue(assignUser.getRealname());
                horizontalContentList.add(content3);
            }
            content6.setKeyname("维修人");
            content6.setValue(sysUser.getRealname());
            horizontalContentList.add(content6);
        }
        if (ReportRepairEnum.WAIT_SPARES.name().equals(repairStatus) || ReportRepairEnum.WAIT_CONFIRM.name().equals(repairStatus)) {
            content5.setKeyname("维修人");
            TemplateCardEntity.HorizontalContent content3 = new TemplateCardEntity.HorizontalContent();
            content3.setKeyname("维修人");
            SysUser repairUser = sysUserService.getUserByName(eamRepairOrder.getRepairer());
            content5.setValue(repairUser.getRealname());
            horizontalContentList.add(content5);
        }
        if (ReportRepairEnum.WAIT_CONFIRM.name().equals(repairStatus)) {
            content6.setKeyname("确认人");
            SysUser sysUser = sysUserService.getUserByName(reportRepair.getCreateBy());
            content6.setValue(sysUser.getRealname());
            horizontalContentList.add(content6);
            content3.setValue(repairUser.getRealname());
            horizontalContentList.add(content3);
        }
        templateCardEntity.setHorizontal_content_list(horizontalContentList);