啊鑫
4 天以前 0ffe0aed06cb7cfdb18cbc21091ab5aa7f425142
src/main/java/com/gs/xky/service/Impl/DingtalkInfoServiceImpl.java
@@ -22,6 +22,7 @@
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.List;
import java.util.Optional;
import java.util.stream.Collectors;
/**
@@ -58,9 +59,18 @@
                    dateFormat.format(dingtalkMsg.getCreateDate()) : "未知";
            // 构建消息内容
            String message = String.format("供应商[%s] 来料日期[%s] 项目[%s] 料号[%s]的不合格检验单被[%s]审批为[%s],请查收!",
                    dingtalkMsg.getSuppName(), createDateStr, dingtalkMsg.getProjectCodes(),
                    dingtalkMsg.getItemNo(), dingtalkMsg.getFname(), dingtalkMsg.getFngHandle());
//            String message = String.format("供应商[%s] 来料日期[%s] 项目[%s] 料号[%s]的不合格检验单被[%s]审批为[%s],请查收!",
//                    dingtalkMsg.getSuppName(), createDateStr, dingtalkMsg.getProjectCodes(),
//                    dingtalkMsg.getItemNo(), dingtalkMsg.getFname(), dingtalkMsg.getFngHandle());
            String message = String.format(
                    "供应商[%s] 来料日期[%s] 项目[%s] 料号[%s]的不合格检验单被[%s]审批为[%s],请查收!",
                    Optional.ofNullable(dingtalkMsg.getSuppName()).orElse(" 未知供应商"),
                    createDateStr,
                    Optional.ofNullable(dingtalkMsg.getProjectCodes()).orElse(" 未知项目"),
                    Optional.ofNullable(dingtalkMsg.getItemNo()).orElse(" 未知料号"),
                    Optional.ofNullable(dingtalkMsg.getFname()).orElse(" 未知审批人"),
                    Optional.ofNullable(dingtalkMsg.getFngHandle()).orElse(" 未知审批结果"));
            // 收集需要推送的人员sid
            List<Long> sidList = new ArrayList<>();
@@ -76,11 +86,11 @@
            // 2. 采购人员(employeeName)
            if (StringUtils.hasText(dingtalkMsg.getEmployeeName())) {
                MesStaff buyer = mesStaffMapper.selectOne(
                        new LambdaQueryWrapper<MesStaff>().eq(MesStaff::getStaffName, dingtalkMsg.getEmployeeName())
                        new LambdaQueryWrapper<MesStaff>().eq(MesStaff::getStaffName, dingtalkMsg.getEmployeeName()), false
                );
                if (buyer != null) {
                    DingtalkInfo buyerInfo = baseMapper.selectOne(
                            new LambdaQueryWrapper<DingtalkInfo>().eq(DingtalkInfo::getSid, buyer.getId())
                            new LambdaQueryWrapper<DingtalkInfo>().eq(DingtalkInfo::getSid, buyer.getId()), false
                    );
                    if (buyerInfo != null) sidList.add(buyerInfo.getSid());
                }