严智鑫
2025-09-04 5bd56f3ebf96aa9a71e4a452cd2402df59d17384
1.全部页面增加线下数据查询
2.增加一键删除线下玻璃按钮
13个文件已修改
187 ■■■■ 已修改文件
JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/controller/TaskingController.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/service/TaskingService.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/service/impl/TaskingServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UI-Project/src/lang/zh.js 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UI-Project/src/stores/tool.js 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UI-Project/src/views/Cleaning/cleaning.vue 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UI-Project/src/views/Edging/edging.vue 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UI-Project/src/views/FlipSlice/flipSlice.vue 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UI-Project/src/views/GlueDispenser/glueDispenser.vue 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UI-Project/src/views/Lamination/lamination.vue 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UI-Project/src/views/ManualReporting/manualReporting.vue 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UI-Project/src/views/Marking/marking.vue 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UI-Project/src/views/Rotate/rotate.vue 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/controller/TaskingController.java
@@ -46,7 +46,6 @@
        private KBBTLensSortingMapper kBBTLensSortingMapper;
        @ApiOperation("查询库位信息 返回结果")
        @PostMapping("/findKBBTLensSorting")
        @ResponseBody
@@ -63,6 +62,7 @@
                return Result.build(199,"异常",map);
            }
        }
        @ApiOperation("扫码成功后返回结果 machineId,scanId")
        @PostMapping("/scanMachineAdd")
        @ResponseBody
@@ -80,6 +80,7 @@
                return Result.build(199,"异常",map);
            }
        }
        @ApiOperation("报工提交 ")
        @PostMapping("/reportForWork")
        @ResponseBody
@@ -99,6 +100,7 @@
                return Result.build(199,"异常",machine);
            }
        }
        @ApiOperation("查询当前设备,未完工状态的线上任务")
        @PostMapping("/findMachineTask")
        @ResponseBody
@@ -122,6 +124,7 @@
            int count =taskingService.damagedTask(tasking);
            return Result.build(200,"修改成功:"+count,count);
        }
        @ApiOperation("修改任务状态 【正在工作】")
        @PostMapping("/startMachineTask")
        @ResponseBody
@@ -129,6 +132,7 @@
            Tasking tasking =taskingService.startMachineTask(machine);
            return Result.build(200,"修改成功:",tasking);
        }
        @ApiOperation("修改任务状态 【失败】")
        @PostMapping("/loseMachineTask")
        @ResponseBody
@@ -136,6 +140,7 @@
            int count =taskingService.loseMachineTask(machine);
            return Result.build(200,"修改成功:"+count,count);
        }
        @ApiOperation("修改任务状态 【完工】")
        @PostMapping("/finishMachineTask")
        @ResponseBody
@@ -167,6 +172,7 @@
            int count =taskingService.glassDownLine(tasking);
            return Result.build(200,"修改成功:"+count,count);
        }
        @ApiOperation("玻璃 【下线】")
        @PostMapping("/glassAgainTopLine")
        @ResponseBody
@@ -175,6 +181,22 @@
            return Result.build(200,"修改成功:"+count,count);
        }
    @ApiOperation("查询【线下】玻璃 ")
    @PostMapping("/selectGlassDownLine")
    @ResponseBody
    public Result selectGlassDownLine() {
        List<Tasking> downLineTask = taskingService.findDownLineTask();
        return Result.build(200, "查询成功:", downLineTask);
    }
    @ApiOperation("删除【线下】玻璃 ")
    @PostMapping("/deleteGlassDownLine")
    @ResponseBody
    public Result deleteGlassDownLine() {
        int count = taskingService.deleteGlassDownLine();
        return Result.build(200, "清除成功:"+count, count);
    }
        @ApiOperation("提交 扫码报工 ")
        @PostMapping("/scanReport")
        @ResponseBody
JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/service/TaskingService.java
@@ -121,6 +121,12 @@
    int glassTopLine(List<Tasking> taskingList);
    /**
     * 批量删除玻璃 【线下】
     * @return
     */
    int deleteGlassDownLine();
    /**
     * @param tasking
     * 批量修改状态 【上线】
     * @return
JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/service/impl/TaskingServiceImpl.java
@@ -468,6 +468,11 @@
        return resultCount;
    }
    @Override
    public int deleteGlassDownLine() {
        return baseMapper.delete(new QueryWrapper<Tasking>().lambda().eq(Tasking::getState,"线下"));
    }
    /**
     * @param taskingList
     * 批量修改状态 【上线】
UI-Project/src/lang/zh.js
@@ -173,6 +173,7 @@
    functionState:{
        deleteTips:'是否确认破损?',
        delete :'删除',
        deleteDownLineGlass :'删除线下玻璃',
        tips:'是否确认?',
        yes:'是',
        sure :'确认',
UI-Project/src/stores/tool.js
@@ -1,11 +1,18 @@
import moment from "moment";
//格式化表格时间戳 毫秒
// export function gridDateFormatter(row,column,cellValue,index){
//     const daterc = row[column.property];
//     //alert(daterc);
//     return moment(Number(daterc)).format('YYYY-MM-DD HH:mm:ss');
// }
//格式化表格时间戳 毫秒
export function gridDateFormatter(row,column,cellValue,index){
    const daterc = row[column.property];
    //alert(daterc);
    return moment(Number(daterc)).format('YYYY-MM-DD HH:mm:ss');
    return moment.utc(daterc).utcOffset(8).format("YYYY-MM-DD HH:mm:ss");
}
export function getDataSort(dataSort){
    dataSort.sort((a, b) => a.operationRecordTime - b.operationRecordTime);
}
UI-Project/src/views/Cleaning/cleaning.vue
@@ -42,24 +42,17 @@
        // 假设后端返回的数据格式与 handleMessage 预期一致
        const responseData = res.data || {};
        findMachine.value =responseData;
        if (Object.keys(findMachine.value).length === 0){
          if(findMachine.value.remark.toString()!=errorScanId&&findMachine.value.remark.toString()!=""&&findMachine.value.remark.toString()!=undefined){
            //有数据就弹窗
            if(errorOpen){
              ElMessageBox.close();
            }
            errorScanId=findMachine.value.remark.toString();
            errorInfoFuntion(findMachine.value.remark.toString());
            errorOpen=true;
          }else if(findMachine.value.remark.toString()==""&&errorOpen){
            ElMessageBox.close();
            errorOpen=false;
          }
        }
      }
    });
    // 线下数据
    request.post("/deviceInteraction/tasking/selectGlassDownLine").then((res) => { // 替换为你的API端点
      if (res.code === 200) {
        // 假设后端返回的数据格式与 handleMessage 预期一致
        const responseData = res.data || {};
        downLineTask.value =responseData;
      }
    });
  } catch (err) {
    console.error('定时请求后端接口失败:', err);
  }
@@ -256,7 +249,7 @@
    <div id="search" >
      <!-- 功能 -->
      <el-button :type="(findMachine['state']=='暂停'?'danger':'success')" id="ButtonMachineStatus" @click="machineStatus((findMachine['state']=='暂停'?'开工':'暂停'))">{{findMachine['state']=='开工'?$t('functionState.start'):$t('functionState.stop')}}</el-button>
      <el-button type="primary" id="ButtonTopLine" @click="topLine">{{$t('functionState.topLine')}}</el-button>
<!--      <el-button type="primary" id="ButtonTopLine" @click="topLine">{{$t('functionState.topLine')}}</el-button>-->
      <!-- <el-button type="primary" id="searchButton" @click="downLine('下线')">下线</el-button>
      <el-button type="primary" id="searchButton" @click="workStatus('破损')">破损</el-button>
      <el-button type="primary" id="searchButton" @click="workStatus('完工')">完工</el-button> -->
UI-Project/src/views/Edging/edging.vue
@@ -76,6 +76,13 @@
    });
    // 线下数据
    request.post("/deviceInteraction/tasking/selectGlassDownLine").then((res) => { // 替换为你的API端点
      if (res.code === 200) {
        // 假设后端返回的数据格式与 handleMessage 预期一致
        const responseData = res.data || {};
        downLineTask.value =responseData;
      }
    });
  } catch (err) {
    console.error('定时请求后端接口失败:', err);
  }
UI-Project/src/views/FlipSlice/flipSlice.vue
@@ -76,6 +76,13 @@
      }
    });
    // 线下数据
    request.post("/deviceInteraction/tasking/selectGlassDownLine").then((res) => { // 替换为你的API端点
      if (res.code === 200) {
        // 假设后端返回的数据格式与 handleMessage 预期一致
        const responseData = res.data || {};
        downLineTask.value =responseData;
      }
    });
  } catch (err) {
    console.error('定时请求后端接口失败:', err);
  }
@@ -349,6 +356,35 @@
        })
      })
}
//删除线下玻璃
const deleteGlassDownLine = async () => {
  ElMessageBox.confirm(
      t('functionState.tips'),
      t('delivery.prompt'),
      {
        confirmButtonText: t('functionState.sure'),
        cancelButtonText: t('functionState.cancel'),
        type: 'warning',
      }
  )
      .then(() => {
        //上线接口
        request.post("/deviceInteraction/tasking/deleteGlassDownLine").then((res) => { // 替换为你的API端点
          if (res.code === 200) {
            ElMessage.success(res.message);
          } else {
            ElMessage.warning(res.message)
          }
        })
      })
      .catch(() => {
        ElMessage({
          type: 'info',
          message: t('functionState.cancel'),
        })
      })
}
const handleDialogClose = () => {
}
@@ -389,8 +425,8 @@
      <el-button :type="(findMachine['mode'] == '定制' ? 'danger' : 'success')" id="ButtonMachineMode"
                 @click="machineMode((findMachine['mode'] == 0 ? 1 : 0))">{{ findMachine['mode'] == 0 ?
          $t('functionState.modeD') : $t('functionState.modeB') }}</el-button>
      <el-button type="primary" id="ButtonTopLine" @click="topLineShow">{{ $t('functionState.topLine') }}</el-button>
      <el-button type="primary" id="deleteGlassDownLine" @click="deleteGlassDownLine">{{ $t('functionState.deleteDownLineGlass') }}</el-button>
      <!-- <el-button type="primary" id="searchButton" @click="downLine('下线')">下线</el-button>
      <el-button type="primary" id="searchButton" @click="workStatus('破损')">破损</el-button>
      <el-button type="primary" id="searchButton" @click="workStatus('完工')">完工</el-button> -->
UI-Project/src/views/GlueDispenser/glueDispenser.vue
@@ -59,6 +59,13 @@
    });
    // 线下数据
    request.post("/deviceInteraction/tasking/selectGlassDownLine").then((res) => { // 替换为你的API端点
      if (res.code === 200) {
        // 假设后端返回的数据格式与 handleMessage 预期一致
        const responseData = res.data || {};
        downLineTask.value =responseData;
      }
    });
  } catch (err) {
    console.error('定时请求后端接口失败:', err);
  }
UI-Project/src/views/Lamination/lamination.vue
@@ -76,6 +76,13 @@
    });
    // 线下数据
    request.post("/deviceInteraction/tasking/selectGlassDownLine").then((res) => { // 替换为你的API端点
      if (res.code === 200) {
        // 假设后端返回的数据格式与 handleMessage 预期一致
        const responseData = res.data || {};
        downLineTask.value =responseData;
      }
    });
  } catch (err) {
    console.error('定时请求后端接口失败:', err);
  }
UI-Project/src/views/ManualReporting/manualReporting.vue
@@ -105,7 +105,16 @@
        }
      }
    });
    // 线下数据
    request.post("/deviceInteraction/tasking/selectGlassDownLine").then((res) => { // 替换为你的API端点
      if (res.code === 200) {
        // 假设后端返回的数据格式与 handleMessage 预期一致
        const responseData = res.data || {};
        downLineTask.value =responseData;
        groupAndCount();
      }
    });
  } catch (err) {
    console.error('定时请求后端接口失败:', err);
  }
UI-Project/src/views/Marking/marking.vue
@@ -17,6 +17,7 @@
const loadData = ref([]);
const findMachine = ref([]);
const sendRecords = ref([]);
const downLineTask = ref([]);
const userInfo=JSON.parse(window.localStorage.getItem('userInfo'));
const pageParams=userInfo.user.menus[0].pages[3].params;
@@ -55,6 +56,13 @@
    });
    // 线下数据
    request.post("/deviceInteraction/tasking/selectGlassDownLine").then((res) => { // 替换为你的API端点
      if (res.code === 200) {
        // 假设后端返回的数据格式与 handleMessage 预期一致
        const responseData = res.data || {};
        downLineTask.value =responseData;
      }
    });
  } catch (err) {
    console.error('定时请求后端接口失败:', err);
  }
@@ -252,7 +260,7 @@
      <el-button :type="(findMachine['state']=='暂停'?'danger':'success')" id="ButtonMachineStatus" 
      @click="machineStatus((findMachine['state']=='暂停'?'开工':'暂停'))">
      {{findMachine['state']=='开工'?$t('functionState.start'):$t('functionState.stop')}}</el-button>
      <el-button type="primary" id="ButtonTopLine" @click="topLine">{{$t('functionState.topLine')}}</el-button>
<!--      <el-button type="primary" id="ButtonTopLine" @click="topLine">{{$t('functionState.topLine')}}</el-button>-->
      <!-- <el-button type="primary" id="searchButton" @click="downLine('下线')">下线</el-button>
      <el-button type="primary" id="searchButton" @click="workStatus('破损')">破损</el-button>
      <el-button type="primary" id="searchButton" @click="workStatus('完工')">完工</el-button> -->
UI-Project/src/views/Rotate/rotate.vue
@@ -75,6 +75,13 @@
    });
    // 线下数据
    request.post("/deviceInteraction/tasking/selectGlassDownLine").then((res) => { // 替换为你的API端点
      if (res.code === 200) {
        // 假设后端返回的数据格式与 handleMessage 预期一致
        const responseData = res.data || {};
        downLineTask.value =responseData;
      }
    });
  } catch (err) {
    console.error('定时请求后端接口失败:', err);
  }
@@ -343,6 +350,7 @@
const topLineShow = async () => {
  blind.value = true; 
}
//上线
const topLine = async (row) => {
  ElMessageBox.confirm(
@@ -375,6 +383,36 @@
      })
    })
}
//删除线下玻璃
const deleteGlassDownLine = async () => {
  ElMessageBox.confirm(
      t('functionState.tips'),
      t('delivery.prompt'),
      {
        confirmButtonText: t('functionState.sure'),
        cancelButtonText: t('functionState.cancel'),
        type: 'warning',
      }
  )
      .then(() => {
        //上线接口
        request.post("/deviceInteraction/tasking/deleteGlassDownLine").then((res) => { // 替换为你的API端点
          if (res.code === 200) {
            ElMessage.success(res.message);
          } else {
            ElMessage.warning(res.message)
          }
        })
      })
      .catch(() => {
        ElMessage({
          type: 'info',
          message: t('functionState.cancel'),
        })
      })
}
const handleDialogClose = () => {  
    
}
@@ -433,6 +471,7 @@
      <el-button type="primary" id="ButtonTopLine" @click="topLineShow">{{ $t('functionState.topLine') }}</el-button>
      <el-button type="primary" id="deleteGlassDownLine" @click="deleteGlassDownLine">{{ $t('functionState.deleteDownLineGlass') }}</el-button>
      <!-- <el-button type="primary" id="searchButton" @click="downLine('下线')">下线</el-button>
      <el-button type="primary" id="searchButton" @click="workStatus('破损')">破损</el-button>
      <el-button type="primary" id="searchButton" @click="workStatus('完工')">完工</el-button> -->