严智鑫
2025-03-11 67cbfd8f7c2ed9598eef92470313f3cf31028ea1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
package com.mes.md.service.impl;
 
import cn.smallbun.screw.core.util.CollectionUtils;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.yulichang.base.MPJBaseServiceImpl;
import com.mes.md.entity.KBBTProgramsOperationLogBP;
import com.mes.md.entity.TaskingLog;
import com.mes.md.mapper.KBBTProgramsOperationLogBPMapper;
import com.mes.md.mapper.TaskingLogMapper;
import com.mes.md.service.TaskingLogService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
 
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
 
/**
 * <p>
 *  服务实现类
 * </p>
 *
 * @author wu
 * @since 2024-08-28
 */
@Slf4j
@Service
public class TaskingLogServiceImpl extends MPJBaseServiceImpl<TaskingLogMapper, TaskingLog> implements TaskingLogService {
 
    @Autowired
    KBBTProgramsOperationLogBPMapper kBBTProgramsOperationLogBPMapper;
 
    public List<TaskingLog> findTaskingLog(){
        return new ArrayList<TaskingLog>();
    }
 
    /**
     * 回传报工数据+ 设备玻璃过片记录给 九牧
     */
    @Override
    public Integer reportTaskingLog() {
        TaskingLog updateTaskingLog = new TaskingLog();
        updateTaskingLog.setIsSend(1);
        baseMapper.update(updateTaskingLog, new QueryWrapper<TaskingLog>().lambda().
                eq(TaskingLog::getIsSend, 0));
        List<TaskingLog> listTasking = baseMapper.selectList(new QueryWrapper<TaskingLog>().lambda()
                .eq(TaskingLog::getIsSend, 1));
        // 判端是否为空
        if (CollectionUtils.isNotEmpty(listTasking)) {
            // 进行拆解封装
            List<KBBTProgramsOperationLogBP> report = listTasking.stream().map(item -> {
                KBBTProgramsOperationLogBP newData = new KBBTProgramsOperationLogBP();
                newData.setGlassId(item.getGlassId());
                newData.setState(item.getState());
                newData.setWorkState(item.getWorkState());
                newData.setGlassState(item.getGlassState());
                newData.setState(item.getState());
                newData.setScanId(item.getScanId());
                newData.setProgramId(item.getProgramId());
                newData.setBatchNumber(item.getBatchNumber() == null ? "" : item.getBatchNumber());
                newData.setLineConfigurationId(item.getLineConfigurationId());
                newData.setTaskType(item.getTaskType());
                newData.setLength(item.getLength());
                newData.setWidth(item.getWidth());
                newData.setThickness(item.getThickness());
                newData.setDrawingMarking(item.getDrawingMarking());
                newData.setIsSilkScreen(item.getIsSilkScreen());
                newData.setIsWorking(1);
                newData.setSilkScreenX(item.getSilkScreenX());
                newData.setSilkScreenY(item.getSilkScreenY());
                newData.setR_1_1(item.getR_1_1());
                newData.setR_1_2(item.getR_1_2());
                newData.setR_2_1(item.getR_2_1());
                newData.setR_2_2(item.getR_2_2());
                newData.setR_3_1(item.getR_3_1());
                newData.setR_3_2(item.getR_3_2());
                newData.setR_4_1(item.getR_4_1());
                newData.setR_4_2(item.getR_4_2());
                newData.setSilkScreenY(item.getSilkScreenY());
                newData.setOperationRecord(item.getOperationRecord());
                newData.setOperationMode(item.getOperationMode());
                newData.setOperationRecordTime(item.getOperationRecordTime());
                newData.setCreateDate(new Date());
                kBBTProgramsOperationLogBPMapper.insert(newData);
                return newData;
            }).collect(Collectors.toList());
            updateTaskingLog.setIsSend(2);
 
            int successfulCount = baseMapper.update(updateTaskingLog, new QueryWrapper<TaskingLog>().lambda().
                    eq(TaskingLog::getIsSend, 1));
            log.info("未提交的数量:{}   提交数量: {}   成功数量:{}", listTasking.size(), report.size(), successfulCount);
            return successfulCount;
        }
        return 0;
    }
}