ZengTao
2025-09-16 d48de59b57bce614e17e91f1845789c071930a2f
hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/service/impl/DamageServiceImpl.java
@@ -53,13 +53,18 @@
    @Resource
    WorkAssignmentMapper workAssignmentMapper;
    /**
     * 查询报工信息
     */
    @Override
    public List<Damage> selectDamage(String startTime, String endTime, int type, int status, String workingProcedure) {
        LambdaQueryWrapper<Damage> damageSelectWrapper = new LambdaQueryWrapper<>();
        if (endTime != null && !endTime.isEmpty()) {
            endTime = endTime + " 23:59:59";
        }
        damageSelectWrapper.between(Damage::getDamageTime, startTime, endTime);
        damageSelectWrapper.ne(Damage::getStatus, 7);
        if (type != 0) {
            damageSelectWrapper.eq(Damage::getType, type);
        }
@@ -68,11 +73,6 @@
        }
        if (!"0".equals(workingProcedure)) {
            damageSelectWrapper.eq(Damage::getWorkingProcedure, workingProcedure);
        }
        List<Damage> damageList = baseMapper.selectList(damageSelectWrapper);
        for (Damage damage : damageList) {
            damage.setStatus(2);
        }
        return baseMapper.selectList(damageSelectWrapper);
    }
@@ -133,7 +133,7 @@
                }
            }
            reportingWorkDetails.add(reportingWorkDetail);
            reportingWorkDetail.setDamageDetailsList(damageDetailses);
            reportingWorkDetail.setDamageDetails(damageDetailses);
            sendToERP(reportingWork, reportingWorkDetails);
        }
    }
@@ -169,14 +169,23 @@
     */
    @Override
    public void insertDamage(Damage damage) {
        List<Damage> damage1 = baseMapper.selectList(
                new LambdaQueryWrapper<Damage>()
                        .ne(Damage::getType, Const.GLASS_STATE_DAMAGE)
                        .ne(Damage::getType, Const.GLASS_STATE_TAKE)
                        .eq(Damage::getLine, damage.getLine())
                        .eq(Damage::getWorkingProcedure, damage.getWorkingProcedure())
                        .eq(Damage::getGlassId, damage.getGlassId())
        );
        List<Damage> damage1 = null;
        if (Const.GLASS_STATE_DAMAGE.equals(damage.getType()) || Const.GLASS_STATE_TAKE.equals(damage.getType())) {
            damage1 = baseMapper.selectList(
                    new LambdaQueryWrapper<Damage>()
                            .in(Damage::getType, Const.GLASS_STATE_DAMAGE, Const.GLASS_STATE_TAKE)
                            .lt(Damage::getStatus, 7)
                            .eq(Damage::getGlassId, damage.getGlassId())
            );
        } else {
            damage1 = baseMapper.selectList(
                    new LambdaQueryWrapper<Damage>()
                            .notIn(Damage::getType, Const.GLASS_STATE_DAMAGE, Const.GLASS_STATE_TAKE)
                            .eq(Damage::getLine, damage.getLine())
                            .eq(Damage::getWorkingProcedure, damage.getWorkingProcedure())
                            .eq(Damage::getGlassId, damage.getGlassId())
            );
        }
        if (damage1 == null || damage1.size() == 0) {
            LambdaQueryWrapper<GlassInfo> glassInfoSelectWrapper = new LambdaQueryWrapper<>();
            glassInfoSelectWrapper.eq(GlassInfo::getGlassId, damage.getGlassId());
@@ -201,7 +210,7 @@
            }
            if (damage.getType() == 1) {
                if (submitReport(damage)) {
                    damage.setStatus(2);
                    damage.setStatus(3);
                } else {
                    damage.setStatus(1);
                }
@@ -274,7 +283,8 @@
        baseMapper.delete(
                new LambdaQueryWrapper<Damage>()
                        .eq(Damage::getGlassId, glassId)
                        .in(Damage::getType, Const.GLASS_STATE_DAMAGE, Const.GLASS_STATE_TAKE)
                        .in(Damage::getType, Const.GLASS_STATE_DAMAGE_TAKE)
                        .lt(Damage::getStatus, 7)
        );
    }
@@ -307,7 +317,7 @@
            // 将 JSON 对象和数组添加到结果对象中
            result.put("title", reportingWorkJson);
            result.put("detail", detailsJsonArray);
            result.put("type", 0);
            result.put("type", 1);
            result.put("userId", "admin");
            result.put("userName", "admin");
            result.put("qualityInsStatus", 0);