ZengTao
2024-08-02 32ccf7594204fe2c47e76b7569d73bde15b34d54
修改报工新增数据方法
1个文件已修改
68 ■■■■ 已修改文件
hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/service/impl/DamageServiceImpl.java 68 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/service/impl/DamageServiceImpl.java
@@ -24,7 +24,7 @@
/**
 * <p>
 *  服务实现类
 * 服务实现类
 * </p>
 *
 * @author wu
@@ -42,17 +42,17 @@
     * 查询报工信息
     */
    @Override
    public List<Damage> selectDamage(String startTime, String endTime, int type, int status, String workingProcedure){
        LambdaQueryWrapper<Damage> damageSelectWrapper =new LambdaQueryWrapper<>();
        damageSelectWrapper.between(Damage::getDamageTime,startTime,endTime);
        if (type!=0){
            damageSelectWrapper.eq(Damage::getType,type);
    public List<Damage> selectDamage(String startTime, String endTime, int type, int status, String workingProcedure) {
        LambdaQueryWrapper<Damage> damageSelectWrapper = new LambdaQueryWrapper<>();
        damageSelectWrapper.between(Damage::getDamageTime, startTime, endTime);
        if (type != 0) {
            damageSelectWrapper.eq(Damage::getType, type);
        }
        if (status!=0){
            damageSelectWrapper.eq(Damage::getStatus,status);
        if (status != 0) {
            damageSelectWrapper.eq(Damage::getStatus, status);
        }
        if(!"0".equals(workingProcedure)){
            damageSelectWrapper.eq(Damage::getWorkingProcedure,workingProcedure);
        if (!"0".equals(workingProcedure)) {
            damageSelectWrapper.eq(Damage::getWorkingProcedure, workingProcedure);
        }
        List<Damage> damageList = baseMapper.selectList(damageSelectWrapper);
@@ -66,7 +66,7 @@
     * 提交报工
     */
    @Override
    public void submitDamage(List<Damage> damageList){
    public void submitDamage(List<Damage> damageList) {
        Map<String, Map<String, Map<String, Map<String, List<Damage>>>>> resultMap = damageList.stream()
                .collect(Collectors.groupingBy(
                        Damage::getProcessId,
@@ -110,7 +110,7 @@
                        // 获取 Damage 列表
                        List<Damage> damageListForTeamsGroupsName = teamsGroupsNameEntry.getValue();
                        //报工主表数据
                        ReportingWork reportingWork=new ReportingWork();
                        ReportingWork reportingWork = new ReportingWork();
                        reportingWork.setProcessId(processId);
                        reportingWork.setThisProcess(workingProcedure);
                        reportingWork.setDeviceName(deviceName);
@@ -155,16 +155,16 @@
                                    // 获取 Damage 列表
                                    List<Damage> damageListForBreakageType = breakageTypeEntry.getValue();
                                    int completedQuantity=0;
                                    int breakageQuantity=0;
                                    int completedQuantity = 0;
                                    int breakageQuantity = 0;
                                    // 遍历 Damage 列表
                                    for (Damage damage : damageListForBreakageType) {
                                        // 打印或处理每个 Damage 对象
                                        System.out.println("              Damage: " + damage.toString());
                                        if(damage.getType()==1){
                                            completedQuantity+=1;
                                        }else if(damage.getType()==2){
                                            breakageQuantity+=1;
                                        if (damage.getType() == 1) {
                                            completedQuantity += 1;
                                        } else if (damage.getType() == 2) {
                                            breakageQuantity += 1;
                                        }
                                    }
                                }
@@ -176,34 +176,32 @@
        }
    }
    /**
     * 添加报工信息
     */
    @Override
    public void insertDamage(Damage damage){
        LambdaQueryWrapper<GlassInfo> glassInfoSelectWrapper=new LambdaQueryWrapper<>();
        glassInfoSelectWrapper.eq(GlassInfo::getGlassId,damage.getGlassId());
        GlassInfo glassInfo=glassInfoMapper.selectOne(glassInfoSelectWrapper);
    public void insertDamage(Damage damage) {
        LambdaQueryWrapper<GlassInfo> glassInfoSelectWrapper = new LambdaQueryWrapper<>();
        glassInfoSelectWrapper.eq(GlassInfo::getGlassId, damage.getGlassId());
        GlassInfo glassInfo = glassInfoMapper.selectOne(glassInfoSelectWrapper);
        BeanUtils.copyProperties(glassInfo, damage);
        LambdaQueryWrapper<WorkAssignment> workAssignmentSelectWrapper=new LambdaQueryWrapper<>();
        LambdaQueryWrapper<WorkAssignment> workAssignmentSelectWrapper = new LambdaQueryWrapper<>();
        workAssignmentSelectWrapper
                .eq(WorkAssignment::getLine,damage.getLine())
                .eq(WorkAssignment::getWorkProcesses,damage.getWorkingProcedure());
        WorkAssignment workAssignment=workAssignmentMapper.selectOne(workAssignmentSelectWrapper);
        if(workAssignment!=null){
                .eq(WorkAssignment::getLine, damage.getLine())
                .eq(WorkAssignment::getWorkProcesses, damage.getWorkingProcedure());
        WorkAssignment workAssignment = workAssignmentMapper.selectOne(workAssignmentSelectWrapper);
        if (workAssignment != null) {
            damage.setTeamsGroupsName(workAssignment.getTeamsGroupsName());
            damage.setDeviceName(workAssignment.getDeviceName());
            damage.setProcessId(glassInfo.getFlowCardId());
            damage.setOrderNumber(glassInfo.getGlassType());
            damage.setTechnologyNumber(glassInfo.getLayer());
            damage.setDamageTime(Timestamp.valueOf(LocalDateTime.now()));
            damage.setType(2);
            baseMapper.insert(damage);
        }
        damage.setProcessId(glassInfo.getFlowCardId());
        damage.setOrderNumber(glassInfo.getGlassType());
        damage.setTechnologyNumber(glassInfo.getLayer());
        damage.setDamageTime(Timestamp.valueOf(LocalDateTime.now()));
        damage.setType(2);
        baseMapper.insert(damage);
    }
}