admin
2024-07-11 653b17eac39c339774cd46291a9345493b253a1f
100-1工位 接收工单 人工操作页面优化
已修改3个文件
66 ■■■■ 文件已修改
jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/controller/OmProductionOrdeInfoController.java 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jcdm-main/src/main/java/com/jcdm/main/plcserver/sub/OPCUaSubscription.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jcdm-ui/src/views/main/kb/stationTerminal/index.vue 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/controller/OmProductionOrdeInfoController.java
@@ -121,49 +121,6 @@
        util.exportExcel(response, list, "生产工单数据");
    }
    @GetMapping("/receivingWorkOrders")
    public AjaxResult receivingWorkOrders() throws Exception {
        String paramProductNum = "";
        Object productTypeObjcet = miloService.readFromOpcUa("thoroughfare" + "." + "device" + ".ProductType").getValue();//产品类型
        if (ObjectUtil.isNull(productTypeObjcet)) {
            return AjaxResult.error("接单失败,PLC未传输生产类型,请联系管理员");
        }
        String productType = productTypeObjcet.toString();//产品类型
        String materialCode = Constants.materialMap.get(productType);
        // 查询最新的工单信息
        OmProductionOrdeInfo lastOrder = omProductionOrdeInfoService.getLastOrder();
        String orderJsonString = RestfulService.getProductionWorkOrderRequest(lastOrder.getProductNum(), "M1OP100",materialCode);
        JSONObject jsonObject = new JSONObject(orderJsonString);
        // 从JSONObject中获取data对象
        JSONObject dataObject = jsonObject.getJSONObject("data");
        String code = jsonObject.getStr("code");
        // 判断接单是否成功
        if(code.equals("success")){
            logger.info("请求工厂MES工单:入参pack{}出参pack:{}",paramProductNum,dataObject.getStr("productNum"));
            List<OmProductionOrdeInfo> check = omProductionOrdeInfoService.list(new LambdaQueryWrapper<OmProductionOrdeInfo>().eq(OmProductionOrdeInfo::getProductNum,dataObject.getStr("productNum")));
            if(check.size() == 0){
                OmProductionOrdeInfo omProductionOrdeInfo = new OmProductionOrdeInfo();
                omProductionOrdeInfo.setWorkOrderNo(dataObject.getStr("productionOrderNum"));
                omProductionOrdeInfo.setProductNum(dataObject.getStr("productNum"));
                omProductionOrdeInfo.setStationCode(dataObject.getStr("stationCode"));
                omProductionOrdeInfo.setMaterialCode(dataObject.getStr("materialCode"));
                omProductionOrdeInfo.setOnlineCompletionMark("0");
                omProductionOrdeInfo.setSfResult("0");
                if(dataObject.getStr("model").equals("PE01A")){
                    omProductionOrdeInfo.setProductCode("1P102S");
                }else {
                    omProductionOrdeInfo.setProductCode(dataObject.getStr("model"));
                }
                omProductionOrdeInfo.setCreateTime(new Date());
                omProductionOrdeInfo.setCreateUser("工厂MES");
                omProductionOrdeInfoService.save(omProductionOrdeInfo);
            }
        }else {
            return AjaxResult.error("接单失败,请联系管理员");
        }
        return AjaxResult.success(dataObject.getStr("productNum"));
    }
    @GetMapping("/mozuReceivingWorkOrders")
    public AjaxResult mozuReceivingWorkOrders(OmProductionOrdeInfo paramOrder) throws Exception {
        String paramProductNum = "";
@@ -192,6 +149,7 @@
                    omProductionOrdeInfo.setProductNum(dataObject.getStr("productNum"));
                    omProductionOrdeInfo.setStationCode(dataObject.getStr("stationCode"));
                    omProductionOrdeInfo.setMaterialCode(dataObject.getStr("materialCode"));
                    omProductionOrdeInfo.setPlanQty(Long.valueOf(dataObject.getStr("plannedQuantity")));
                    omProductionOrdeInfo.setOnlineCompletionMark("0");
                    omProductionOrdeInfo.setSfResult("0");
                    omProductionOrdeInfo.setProductCode(dataObject.getStr("model"));
jcdm-main/src/main/java/com/jcdm/main/plcserver/sub/OPCUaSubscription.java
@@ -280,6 +280,7 @@
                omProductionOrdeInfo.setProductNum(dataObject.getStr("productNum"));
                omProductionOrdeInfo.setStationCode(dataObject.getStr("stationCode"));
                omProductionOrdeInfo.setMaterialCode(dataObject.getStr("materialCode"));
                omProductionOrdeInfo.setPlanQty(Long.valueOf(dataObject.getStr("plannedQuantity")));
                omProductionOrdeInfo.setOnlineCompletionMark("0");
                omProductionOrdeInfo.setSfResult("0");
                omProductionOrdeInfo.setProductCode(dataObject.getStr("model"));
jcdm-ui/src/views/main/kb/stationTerminal/index.vue
@@ -30,22 +30,15 @@
           <span style="font-weight: bold">当前工件信息</span>
         </div>
         <el-descriptions :column="1" border :content-style="{'min-width': '140px'}">
<!--         <el-descriptions :column="1" :label-style="{'font-size': '15px'}" border :content-style="{'min-width': '150px'}">-->
           <el-descriptions-item label="工单编号">
               <span>{{workpieceInformation.workOrderNo}}</span>
           </el-descriptions-item>
           <el-descriptions-item label="产品型号">
             <span>{{workpieceInformation.productCode}}</span>
           <el-descriptions-item label="物料编码">
             <span>{{workpieceInformation.materialCode}}</span>
           </el-descriptions-item>
           <el-descriptions-item label="小车码">
             <span>{{headContent.cardCode}}</span>
           <el-descriptions-item label="计划数量">
             <span>{{workpieceInformation.planQty}}</span>
           </el-descriptions-item>
<!--           <el-descriptions-item label="产品型号">-->
<!--             <span>{{workpieceInformation.productModel}}</span>-->
<!--           </el-descriptions-item>-->
<!--           <el-descriptions-item label="产品名称">-->
<!--             <span>{{workpieceInformation.productName}}</span>-->
<!--           </el-descriptions-item>-->
           <el-descriptions-item label="开始时间">
             <span>{{workpieceInformation.inboundTime}}</span>
           </el-descriptions-item>
@@ -367,6 +360,8 @@
        productModel: null,
        productName: null,
        inboundTime: null,
        materialCode: null,
        planQty: null,
      },
      // 查询参数
      queryParams: {
@@ -623,8 +618,8 @@
        console.log(rowsData)
        this.workpieceInformation.workOrderNo = rowsData.workOrderNo;
        this.workpieceInformation.productCode = rowsData.productCode;
        this.workpieceInformation.productModel = rowsData.productModel;
        this.workpieceInformation.productName = rowsData.productName;
        this.workpieceInformation.materialCode = rowsData.materialCode;
        this.workpieceInformation.planQty = rowsData.planQty;
        this.headContent.cardCode = rowsData.trolleyYard;
      });
      this.getListFormulaChild()