jinlin
2025-04-24 a857feef16fdd2ea9295f0be82a8fdaa34f13595
修改
12个文件已修改
281 ■■■■ 已修改文件
src/main/java/com/example/client/service/HandoverAddOrUpdate.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/example/client/service/Level3AddOrUpdate.java 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/example/client/service/Level3ManageService.java 62 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/example/client/service/ProgressPromptService.java 110 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/example/client/service/TrackRecordAddOrUpdate.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/example/client/service/TrackRecordManageService.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/example/server/progressTrack/dao/DjJdgzTrackRecordDao.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/example/server/progressTrack/model/DjJdgzTrackRecord.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/example/server/progressTrack/service/DjJdgzTrackRecordService.java 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/db/csiczb1.db 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/progressTrack/DjJdgzNetworkLevel3Dao.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/progressTrack/DjJdgzTrackRecordDao.xml 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/example/client/service/HandoverAddOrUpdate.java
@@ -2,6 +2,7 @@
import com.example.client.dto.ColumnDto;
import com.example.client.dto.JComboBoxItem;
import com.example.client.utils.BoxIteUtils;
import com.example.client.utils.CommonTable;
import com.example.client.utils.GBC;
import com.example.client.utils.UploadFile;
@@ -64,7 +65,7 @@
        JLabel JLabel0 = new JLabel("工程");
        JComboBox<JComboBoxItem> comboBox = new JComboBox<>(projectList);
        if(data.getLevel1NetworkId()!=null){
            comboBox.setSelectedItem(new JComboBoxItem(data.getLevel1NetworkId(),data.getProjectName()));
            comboBox.setSelectedItem(BoxIteUtils.GetSelectItemById(projectList, data.getLevel1NetworkId()));
        }
        JLabel JLabel1 = new JLabel("交方T队");
src/main/java/com/example/client/service/Level3AddOrUpdate.java
@@ -36,7 +36,7 @@
    @Autowired
    private DjJdgzNetworkLevel3ListService level3ListService;
    @Autowired
    private SysTeamGroupClassService sysTeamGroupClassService;
    private Level3ManageService level3ManageService;
    public void openDialog(DjJdgzNetworkLevel3 data, JFrame jFrame) {
        JFrame frame1 = new JFrame("三级网络图编辑");
@@ -60,9 +60,9 @@
        JSpinner.DateEditor timeEditor = new JSpinner.DateEditor(timeSpinner, "yyyy-MM-dd");
        timeSpinner.setEditor(timeEditor);
        //JButton btnInsert = new JButton("新增");
        JButton btnUpdate = new JButton("修改设备信息");
        JButton btnSave = new JButton("保存数据");
        //topJpanel.add(btnInsert);
        topJpanel.add(btnUpdate);
        topJpanel.add(btnSave);
        // 创建子表格
@@ -176,6 +176,17 @@
                JOptionPane.showMessageDialog(null, "保存成功", "提示", JOptionPane.WARNING_MESSAGE);
            }
        });
        btnUpdate.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                SysUser user = (SysUser) UserAndSiteUtils.get("user", "user");
                if (user == null) {
                    JOptionPane.showMessageDialog(null, "用户失效请退出并重新登录", "提示", JOptionPane.WARNING_MESSAGE);
                    return;
                }
                level3ManageService.insert(jFrame,data);
            }
        });
    }
}
src/main/java/com/example/client/service/Level3ManageService.java
@@ -3,10 +3,7 @@
import com.example.client.dto.ColumnDto;
import com.example.client.dto.JComboBoxItem;
import com.example.client.model.TableButton;
import com.example.client.utils.CommonTable;
import com.example.client.utils.Compute;
import com.example.client.utils.GBC;
import com.example.client.utils.MultiSelectComboBox;
import com.example.client.utils.*;
import com.example.server.cabin.service.CabinService;
import com.example.server.progressTrack.model.DjJdgzNetworkLevel1;
import com.example.server.progressTrack.model.DjJdgzNetworkLevel3;
@@ -314,7 +311,8 @@
            @Override
            public void actionPerformed(ActionEvent e) {
                jFrame.setEnabled(false);
                insert(jFrame);
                DjJdgzNetworkLevel3 data = new DjJdgzNetworkLevel3();
                insert(jFrame,data);
            }
        });
@@ -346,7 +344,7 @@
        return panel;
    }
    private void insert(JFrame jFrame) {
    public void insert(JFrame jFrame,DjJdgzNetworkLevel3 data) {
        JFrame frame1 = new JFrame("新增三级网络图");
        frame1.setSize(500, 460);
        frame1.setResizable(true);
@@ -379,38 +377,84 @@
        JComboBox<JComboBoxItem> comboBox0 = new JComboBox<>(projectList);
        comboBox0.setPreferredSize(new Dimension(185, 28));
        comboBox0.setSelectedIndex(-1);
        if (data.getLevel1NetworkId()!=null){
            comboBox0.setSelectedItem(BoxIteUtils.GetSelectItemById(projectList, data.getLevel1NetworkId()));
        }
        JLabel JLabel2 = new JLabel("二级网络图");
        JComboBox<JComboBoxItem> comboBox1 = new JComboBox<>();
        comboBox1.setPreferredSize(new Dimension(185, 28));
        if (data.getLevel2NetworkId()!=null){
            JComboBoxItem[] level2List = level2Service.getLevel2List(data.getLevel1NetworkId());
            comboBox1.setModel(new DefaultComboBoxModel<>(level2List));
            comboBox1.setSelectedItem(BoxIteUtils.GetSelectItemById(level2List, data.getLevel2NetworkId()));
        }
        JLabel JLabel3 = new JLabel("二级网络图节点");
        JComboBox<JComboBoxItem> comboBox2 = new JComboBox<>();
        comboBox2.setPreferredSize(new Dimension(185, 28));
        if (data.getLevel2NodeId()!=null){
            JComboBoxItem[] level2NodeList = level2ListService.getNode(data.getLevel2NetworkId());
            comboBox2.setModel(new DefaultComboBoxModel<>(level2NodeList));
            comboBox2.setSelectedItem(BoxIteUtils.GetSelectItemById(level2NodeList, data.getLevel2NodeId()));
        }
        JLabel JLabel4 = new JLabel("部门");
        JComboBox<JComboBoxItem> comboBox3 = new JComboBox<>(deptList);
        comboBox3.setPreferredSize(new Dimension(185, 28));
        if (data.getDeptId()!=null){
            comboBox3.setSelectedItem(BoxIteUtils.GetSelectItemById(deptList, data.getDeptId()));
        }
        JComboBoxItem[] teamList1 = sysTeamGroupClassService.getTeamList(deptList[0].getId());
        JLabel JLabel5 = new JLabel("专业");
        JComboBox<JComboBoxItem> comboBox4 = new JComboBox<>(teamList1);
        comboBox4.setPreferredSize(new Dimension(185, 28));
        if (data.getTeamgroupId()!=null){
            JComboBoxItem[] teamList3 = sysTeamGroupClassService.getTeamList(data.getDeptId());
            comboBox4.setModel(new DefaultComboBoxModel<>(teamList3));
            comboBox4.setSelectedItem(BoxIteUtils.GetSelectItemById(teamList3, data.getTeamgroupId()));
        }
        JLabel JLabel6 = new JLabel("舱室");
        MultiSelectComboBox comboBox5 = new MultiSelectComboBox(cabinList);
        comboBox5.setPreferredSize(new Dimension(200, 25));
        if (data.getCabinId()!=null){
            Set<Long> selectedIds = new HashSet<>();
            String[] idParts = data.getCabinId().split(",");
            for (String idPart : idParts) {
                selectedIds.add(Long.parseLong(idPart.trim())); // 将字符串转换为 Long 类型并添加到集合中
            }
            // 将 ID 转换为对应的 JComboBoxItem 对象
            Set<JComboBoxItem> selectedItems = new HashSet<>();
            for (JComboBoxItem item : cabinList) {
                if (selectedIds.contains(item.getId())) { // 检查 Long 类型的 ID 是否匹配
                    selectedItems.add(item); // 添加到选中项集合
                }
            }
            comboBox5.setSelectedItems(selectedItems);
        }
        JLabel JLabel7 = new JLabel("类别");
        JComboBox<String> comboBox6 = new JComboBox<>(typeList);
        if (data.getType()!=null){
            comboBox6.setSelectedItem(data.getType());
        }
        JLabel JLabel78 = new JLabel("是否影响封舱");
        JComboBox<JComboBoxItem> comboBox7 = new JComboBox<>(isealCabin);
        comboBox7.setPreferredSize(new Dimension(185, 28));
        if (data.getIsealCabin()!=null){
            comboBox7.setSelectedItem(BoxIteUtils.GetSelectItemById(isealCabin, Long.valueOf(data.getIsealCabin())));
        }
        JLabel JLabel8 = new JLabel("三级网络图名称");
        JTextField level3Name = new JTextField(16);
        if (StringUtils.isNotBlank(data.getName())){
            level3Name.setText(data.getName());
        }
        comboBox0.addItemListener(new ItemListener() {
            @Override
@@ -501,7 +545,6 @@
                selectedIds.append(item.getId()).append(",");
            }
            String name = level3Name.getText();
            DjJdgzNetworkLevel3 data = new DjJdgzNetworkLevel3();
            DjJdgzNetworkLevel1 level1Data = level1Service.get(level1.getId());
            data.setLevel1NetworkId(level1.getId());
            data.setLevel2NetworkId(level2.getId());
@@ -513,7 +556,12 @@
            data.setTeamgroupName(team.getName());
            data.setCabinId(String.valueOf(selectedIds));
            data.setType(comboBox6.getSelectedItem().toString());
            if (data.getId()!=null){
                level3Service.update(data);
            }else{
            level3Service.insert(data);
            }
            list = level3Service.getList(level1Data.getShipId(), deptList[0].getId(), teamList[0].getId(), cabinList[0].getId(), typeList[0], Math.toIntExact(isealCabin[0].getId()), null);
            CommonTable.refreshTable(list, columnDto, table);
            table.setRowHeight(25);
src/main/java/com/example/client/service/ProgressPromptService.java
@@ -1,16 +1,19 @@
package com.example.client.service;
import com.example.client.dto.ColumnDto;
import com.example.client.dto.JComboBoxItem;
import com.example.client.utils.CommonTable;
import com.example.server.progressTrack.Dto.StatistReportsDto;
import com.example.client.utils.Compute;
import com.example.client.utils.GBC;
import com.example.server.progressTrack.model.DjJdgzTrackRecord;
import com.example.server.progressTrack.service.DjJdgzTrackRecordService;
import com.example.server.teamGroup.service.SysTeamGroupClassService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.swing.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.*;
import java.awt.event.*;
import java.util.ArrayList;
import java.util.List;
@@ -21,6 +24,9 @@
    private DjJdgzTrackRecordService djJdgzTrackRecordService;
    private JTable table;
    private List<DjJdgzTrackRecord> list;
    @Autowired
    private SysTeamGroupClassService sysTeamGroupClassService;
    public void createTable(JFrame jFrame,Long level1NetworkId) {
        JFrame frame1 = new JFrame("进度检查");
@@ -37,8 +43,53 @@
            }
        });
        JPanel topJpanel = new JPanel();
        GridBagLayout layout = new GridBagLayout();
        topJpanel.setLayout(layout);
        topJpanel.setPreferredSize(new Dimension(1200 - 20, 40));
        topJpanel.setBackground(Color.WHITE);
        JPanel centerJpanel = new JPanel();
        centerJpanel.setPreferredSize(new Dimension(1200 - 20,700-40));
        centerJpanel.setBackground(Color.WHITE);
        frame1.add(topJpanel, BorderLayout.NORTH);
        frame1.add(centerJpanel, BorderLayout.CENTER);
        JComboBoxItem[] deptList = sysTeamGroupClassService.getDeptList();
        JComboBoxItem[] teamList = sysTeamGroupClassService.getTeamList(null);
        JLabel JLabel1 = new JLabel("部门");
        JComboBox<JComboBoxItem> comboBox1 = new JComboBox<>(deptList);
        comboBox1.setPreferredSize(new Dimension(140, 28));
        comboBox1.setMaximumSize(new Dimension(140, 28));
        JComboBoxItem[] teamList1 = sysTeamGroupClassService.getTeamList(deptList[0].getId());
        JLabel JLabel2 = new JLabel("专业");
        JComboBox<JComboBoxItem> comboBox2 = new JComboBox<>(teamList1);
        comboBox2.setPreferredSize(new Dimension(140, 28));
        comboBox2.setMaximumSize(new Dimension(140, 28));
        JTextField sb = new JTextField(16);
        sb.setPreferredSize(new Dimension(140, 28));
        sb.setMaximumSize(new Dimension(140, 28));
        JButton query = new JButton("查询");
        query.setPreferredSize(new Dimension(90, 28));
        topJpanel.add(JLabel1, new GBC(0, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
        topJpanel.add(comboBox1, new GBC(1, 0, 2, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
        topJpanel.add(JLabel2, new GBC(3, 0, 1, 1).setAnchor(GBC.SOUTHEAST).setInsets(5));
        topJpanel.add(comboBox2, new GBC(4, 0, 2, 1).setAnchor(GBC.SOUTHWEST).setInsets(5));
        topJpanel.add(sb, new GBC(8, 0, 3, 1).setInsets(5));
        topJpanel.add(query, new GBC(15, 0, 1, 1).setInsets(5));
        List<ColumnDto> columnDto = new ArrayList<>();
        List<DjJdgzTrackRecord> list = djJdgzTrackRecordService.prompt(level1NetworkId);
        list = djJdgzTrackRecordService.prompt(level1NetworkId, null, null, null);
        //columnDto.add(new ColumnDto("ID", "id", -1, null,false));
        columnDto.add(new ColumnDto("工程名称", "ProjectName", 280, null, false, null,null));
@@ -48,14 +99,59 @@
        columnDto.add(new ColumnDto("项目名称", "level3NetworkName", 150, null, false, null,null));
        columnDto.add(new ColumnDto("当前节点", "level3NodeName", 150, null, false, null,null));
        columnDto.add(new ColumnDto("状态", "status", 150, null, false, null,null));
        table = CommonTable.createCommonTable(list, columnDto);
        table.setRowHeight(25);
        comboBox1.addItemListener(new ItemListener() {
            public void itemStateChanged(final ItemEvent event) {
                JComboBoxItem dept = (JComboBoxItem) comboBox1.getSelectedItem();
                Long deptId = dept.getId();
                JComboBoxItem[] teamList = sysTeamGroupClassService.getTeamList(deptId);
                comboBox2.setModel(new DefaultComboBoxModel<>(teamList));
                JComboBoxItem team = (JComboBoxItem) comboBox2.getSelectedItem();
                list = djJdgzTrackRecordService.prompt(level1NetworkId,deptId,team.getId(),null);
                CommonTable.refreshTable(list, columnDto, table);
                table.setRowHeight(25);
                table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
            }
        });
        comboBox2.addItemListener(new ItemListener() {
            public void itemStateChanged(final ItemEvent event) {
                JComboBoxItem dept = (JComboBoxItem) comboBox1.getSelectedItem();
                JComboBoxItem team = (JComboBoxItem) comboBox2.getSelectedItem();
                list = djJdgzTrackRecordService.prompt(level1NetworkId,dept.getId(),team.getId(),null);
                CommonTable.refreshTable(list, columnDto, table);
                table.setRowHeight(25);
                table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
            }
        });
        query.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                list = djJdgzTrackRecordService.prompt(level1NetworkId, null, null,sb.getText());
                CommonTable.refreshTable(list, columnDto, table);
                table.setRowHeight(25);
                table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
            }
        });
        table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
        JScrollPane scrollTable = new JScrollPane(table);
        frame1.add(scrollTable);
        scrollTable.setPreferredSize(new Dimension(1200 - 20,700-40));
        centerJpanel.add(scrollTable);
        frame1.setVisible(true);
    }
src/main/java/com/example/client/service/TrackRecordAddOrUpdate.java
@@ -176,7 +176,7 @@
        JComboBox<JComboBoxItem> comboBox1 = new JComboBox<>(statusList);
        comboBox1.setPreferredSize(new Dimension(185, 28));
        if (data.getCurrentStatus() != null) {
            comboBox0.setSelectedItem(new JComboBoxItem(data.getCurrentStatus().longValue(), statusMap.get(data.getCurrentStatus())));
            comboBox1.setSelectedItem(statusList[data.getCurrentStatus()]);
        }
@@ -184,7 +184,7 @@
        JComboBox<JComboBoxItem> comboBox2 = new JComboBox<>(hasDelayRiskList);
        comboBox2.setPreferredSize(new Dimension(185, 28));
        if (data.getHasDelayRisk() != null) {
            comboBox0.setSelectedItem(new JComboBoxItem(data.getHasDelayRisk().longValue(), hasDelayRiskMap.get(data.getHasDelayRisk())));
            comboBox2.setSelectedItem(hasDelayRiskList[data.getHasDelayRisk()]);
        }
@@ -341,7 +341,7 @@
                data.setProblem(problem.getText());
                data.setFollowupPlan(plan.getText());
                data.setRemark(remark.getText());
                Long id = djJdgzTrackRecordService.save(data);
                Long id = djJdgzTrackRecordService.save(data,"save");
                uploadFile.save(id);
                List<DjJdgzTrackRecord> list = djJdgzTrackRecordService.getList(level1Id, level3.getDeptId(), null, null, level3.getType(), 0,0, null);
                CommonTable.refreshTable(list, columnDto, table);
src/main/java/com/example/client/service/TrackRecordManageService.java
@@ -284,7 +284,14 @@
            @Override
            public void actionPerformed(ActionEvent e) {
                JComboBoxItem project = (JComboBoxItem) comboBox.getSelectedItem();
                list = djJdgzTrackRecordService.getList(project.getId(), null, null, null, null, 0, 0,sb.getText());
                JComboBoxItem dept = (JComboBoxItem) comboBox1.getSelectedItem();
                JComboBoxItem team = (JComboBoxItem) comboBox2.getSelectedItem();
                JComboBoxItem cabin = (JComboBoxItem) comboBox3.getSelectedItem();
                String type = comboBox4.getSelectedItem().toString();
                JComboBoxItem status = (JComboBoxItem) comboBox5.getSelectedItem();
                JComboBoxItem isealCabinItem = (JComboBoxItem) comboBox7.getSelectedItem();
                list = djJdgzTrackRecordService.getList(project.getId(), dept.getId(), team.getId(), cabin.getId(), type, Math.toIntExact(status.getId()),Math.toIntExact(isealCabinItem.getId()),sb.getText());
                CommonTable.refreshTable(list, columnDto, table);
                table.setRowHeight(25);
@@ -400,7 +407,7 @@
                // 检查是否点击了有效单元格
                if (row >= 0 && column >= 0) {
                    if (column == 13) { // 列索引从0开始
                    if (column == 14) { // 列索引从0开始
                        // 获取该单元格的值
                        Object cellValue = table.getValueAt(row, column);
                        Integer value = Integer.parseInt(cellValue.toString());
@@ -466,7 +473,7 @@
    public void history(JFrame jFrame, Long level3NodeId) {
        jFrame.setEnabled(false);
        JFrame frame1 = new JFrame("历史跟踪记录");
        frame1.setSize(1500, 800);
        frame1.setSize(2000, 800);
        frame1.setResizable(true);
        frame1.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
        frame1.setLocationRelativeTo(null);
@@ -496,17 +503,17 @@
        columnDto.add(new ColumnDto("序号", "", 50, "autoCreate", false, null, null));
        columnDto.add(new ColumnDto("跟踪方式", "trackMethod", 80, "dict", false, null, trackList));
        columnDto.add(new ColumnDto("跟踪地点", "trackLocation", 160, null, false, null, null));
        columnDto.add(new ColumnDto("助修人及其联系方式", "trackPerson", 160, null, false, null, null));
        columnDto.add(new ColumnDto("厂方及其联系方式", "trackedPerson", 160, null, false, null, null));
        columnDto.add(new ColumnDto("跟踪地点", "trackLocation", 180, null, false, null, null));
        columnDto.add(new ColumnDto("助修人及其联系方式", "trackPerson", 200, null, false, null, null));
        columnDto.add(new ColumnDto("厂方及其联系方式", "trackedPerson", 200, null, false, null, null));
        columnDto.add(new ColumnDto("总承修单位", "generalRepair", 160, null, false, null, null));
        columnDto.add(new ColumnDto("分承修单位", "repair", 160, null, false, null, null));
        columnDto.add(new ColumnDto("节点进展", "currentStatus", 100, "dict", false, null, statusList));
        columnDto.add(new ColumnDto("有无脱期风险", "hasDelayRisk", 50, "dict", false, null, hasDelayRiskList));
        columnDto.add(new ColumnDto("预计完成时间", "estimatedCompletionTime", 120, "selectDate", false, null, null));
        columnDto.add(new ColumnDto("存在问题", "problem", 120, null, false, null, null));
        columnDto.add(new ColumnDto("后续计划", "followupPlan", 120, null, false, null, null));
        columnDto.add(new ColumnDto("备注", "remark", 120, null, false, null, null));
        columnDto.add(new ColumnDto("节点进展", "currentStatus", 120, "dict", false, null, statusList));
        columnDto.add(new ColumnDto("有无脱期风险", "hasDelayRisk", 70, "dict", false, null, hasDelayRiskList));
        columnDto.add(new ColumnDto("预计完成时间", "estimatedCompletionTime", 220, "selectDate", false, null, null));
        columnDto.add(new ColumnDto("存在问题", "problem", 200, null, false, null, null));
        columnDto.add(new ColumnDto("后续计划", "followupPlan", 200, null, false, null, null));
        columnDto.add(new ColumnDto("备注", "remark", 200, null, false, null, null));
        JTable subTable = CommonTable.createCommonTable(list, columnDto);
        subTable.setRowHeight(25);
src/main/java/com/example/server/progressTrack/dao/DjJdgzTrackRecordDao.java
@@ -26,7 +26,7 @@
    List<StatistReportsDto> getReport(Long level1NetworkId);
    List<DjJdgzTrackRecord> prompt(Long level1NetworkId, int weekNo, Long userId);
    List<DjJdgzTrackRecord> prompt(Long level1NetworkId, int weekNo, Long userId,Long deptId,Long teamId,String name);
    List<DjJdgzTrackRecord> getdata(String teamgroupId, Long level1NetworkId, Long level3NetworkId, Long level3NodeId, Integer status, Date beginDate, Date endDate, Integer istq);
@@ -39,4 +39,6 @@
    void retract(Long id);
    List<ReportRecordDto> getReportRecord(Long level1NetworkId, int column, Long teamgroupId);
    Long getIsExit(Long level3NetworkId, String processName);
}
src/main/java/com/example/server/progressTrack/model/DjJdgzTrackRecord.java
@@ -181,7 +181,7 @@
    private String fileName;
    @TableField(exist = false)
    private Long cabinId;
    private String cabinId;
    @TableField(exist = false)
    private String type;
src/main/java/com/example/server/progressTrack/service/DjJdgzTrackRecordService.java
@@ -102,7 +102,7 @@
        super.deleteLogic(ids);
    }
    public Long save(DjJdgzTrackRecord djJdgzTrackRecord) {
    public Long save(DjJdgzTrackRecord djJdgzTrackRecord,String type) {
        Long id = null;
        int weekNo = this.getWeekNo(djJdgzTrackRecord.getLevel1NetworkId());
        LocalDate currentDate = LocalDate.now();
@@ -111,7 +111,7 @@
        // 将当前日期格式化为字符串
        String formattedDate = currentDate.format(formatter);
        djJdgzTrackRecord.setUpdateDate(formattedDate);
        if (djJdgzTrackRecord.getCurrentStatus() == 1) {
        if (djJdgzTrackRecord.getCurrentStatus() == 1 && type.equals("save")) {
            //时间比较
            djJdgzTrackRecord.setEstimatedCompletionTime(formattedDate);
        }
@@ -198,7 +198,7 @@
        return baseDao.getReport(level1NetworkId);
    }
    public List<DjJdgzTrackRecord> prompt(Long level1NetworkId) {
    public List<DjJdgzTrackRecord> prompt(Long level1NetworkId, Long deptId, Long teamId, String name) {
        Long userId = null;
       /* Map adminRole = sysUserService.adminRole();
        Object isTyRole = adminRole.get("isTyRole");
@@ -207,7 +207,7 @@
            userId = UserContext.getUser().getId();
        }*/
        int weekNo = this.getWeekNo(level1NetworkId);
        List<DjJdgzTrackRecord> data = baseDao.prompt(level1NetworkId, weekNo, userId);
        List<DjJdgzTrackRecord> data = baseDao.prompt(level1NetworkId, weekNo, userId,deptId,teamId,name);
        for (DjJdgzTrackRecord record : data) {
            int i = weekNo - record.getWeekNo();
            record.setStatus(i + "周未完成");
@@ -511,8 +511,15 @@
                }
                if (!isErr) {
                    Long oldId = baseDao.getIsExit(data.getLevel3NetworkId(),data.getProcessName());
                    if (oldId!=null) {
                        data.setId(oldId);
                        data.setIsUpdate(true);
                    }else{
                    data.setIsUpdate(false);
                    this.save(data);
                    }
                    this.save(data,"import");
                }
                if (isErr) {
                    err++;
src/main/resources/db/csiczb1.db
Binary files differ
src/main/resources/mapper/progressTrack/DjJdgzNetworkLevel3Dao.xml
@@ -47,7 +47,7 @@
            and a.TEAMGROUP_ID = ${teamId}
        </if>
        <if test="cabinId!=null">
            and a.cabin_id = ${cabinId}
            and ',' || a.cabin_id || ',' LIKE '%,${cabinId},%';
        </if>
        <if test="isealCabin!=10000 and isealCabin!=null">
            and a.iseal_cabin = ${isealCabin}
src/main/resources/mapper/progressTrack/DjJdgzTrackRecordDao.xml
@@ -96,10 +96,10 @@
            and c.TEAMGROUP_ID = ${teamId}
        </if>
        <if test="cabinId!=null">
            and c.cabin_id = ${cabinId}
            and ',' || c.cabin_id || ',' LIKE '%,${cabinId},%'
        </if>
        <if test="type!=null and type!=''">
            and c.type = #{type}
            and c.type = '${type}'
        </if>
        <if test="name!=null and name!=''">
            and c.name LIKE '%${name}%'
@@ -205,6 +205,15 @@
        and a.is_delete = 0
        <if test="userId!=null">
            AND a.TEAMGROUP_ID in (select teamgroup from sys_user where is_delete=0 and id=#{userId})
        </if>
        <if test="deptId!=null">
            AND b.DEPT_ID  = ${deptId}
        </if>
        <if test="teamId!=null">
            AND b.TEAMGROUP_ID  = ${teamId}
        </if>
        <if test="name!=null">
            AND b.name LIKE '%${name}%'
        </if>
        AND b.IS_DELETE = 0
        AND c.IS_DELETE = 0
@@ -492,5 +501,19 @@
            AND b.REQUIRED_COMPLETION_TIME &gt; b.ACTUAL_COMPLETION
        </if>
    </select>
    <select id="getIsExit" resultType="java.lang.Long">
        SELECT id
        FROM dj_jdgz_track_record
        WHERE LEVEL3_NETWORK_ID = ${level3NetworkId}
          AND process_name = #{processName}
          AND is_delete = 0
          AND update_date = (
            SELECT MAX(update_date)
            FROM dj_jdgz_track_record
            WHERE LEVEL3_NETWORK_ID = ${level3NetworkId}
              AND process_name = #{processName}
              AND is_delete = 0
        )
    </select>
</mapper>