Просмотр исходного кода

3d数据展示接口及数据组装

yejian 3 лет назад
Родитель
Сommit
fad54a3cc1

+ 3 - 0
imcs-admin-boot/imcs-business-biz/src/main/java/com/github/zuihou/business/externalApi/service/AgvHikOrderInfoService.java

@@ -49,4 +49,7 @@ public interface AgvHikOrderInfoService extends SuperCacheService<AgvHikOrderInf
      * @return
      */
     R queryAgvStatus(Map<String, String> data);
+
+
+    R query3dResouceDataInfo(Map<String, String> data);
 }

+ 38 - 5
imcs-admin-boot/imcs-business-biz/src/main/java/com/github/zuihou/business/externalApi/service/impl/AgvHikOrderInfoServiceImpl.java

@@ -14,6 +14,7 @@ import com.github.zuihou.business.externalApi.entity.AgvHikOrderDetailInfo;
 import com.github.zuihou.business.externalApi.entity.AgvHikOrderInfo;
 import com.github.zuihou.business.externalApi.service.AgvHikOrderDetailInfoService;
 import com.github.zuihou.business.externalApi.service.AgvHikOrderInfoService;
+import com.github.zuihou.business.operationManagementCenter.dao.TTaskMapper;
 import com.github.zuihou.business.util.MsgUtil;
 import com.github.zuihou.common.constant.BizConstant;
 import com.github.zuihou.common.constant.CacheKey;
@@ -63,6 +64,8 @@ public class AgvHikOrderInfoServiceImpl extends SuperCacheServiceImpl<AgvHikOrde
     private AgvHikOrderDetailInfoService agvHikOrderDetailInfoService;
     @Autowired
     private MsgUtil msgUtil;
+    @Autowired
+    private TTaskMapper taskMapper;
 
     @Override
     protected String getRegion() {
@@ -265,17 +268,28 @@ public class AgvHikOrderInfoServiceImpl extends SuperCacheServiceImpl<AgvHikOrde
             for(int i = 0; i < retAgvStatusArray.size(); i++){
                 JSONObject agvStatus =  new JSONObject();
                 JSONObject retAgvStatus = retAgvStatusArray.getJSONObject(i);
-                agvStatus.put("robotCode",retAgvStatus.getString("robotCode"));
+                agvStatus.put("id",retAgvStatus.getString("robotCode"));
                 String taskStatus = retAgvStatus.getString("status");
+                agvStatus.put("deviceName",retAgvStatus.getString("robotCode"));
+                agvStatus.put("deviceType","agv");
                 if(agvWorkList.contains(taskStatus)){
-                    agvStatus.put("status","生产中");
+                    agvStatus.put("monitoringStatus","生产中");
                 }else if(agvNoWorkList.contains(taskStatus)){
-                    agvStatus.put("status","空闲");
+                    agvStatus.put("monitoringStatus","空闲");
                 }else if(agvchargingList.contains(taskStatus)){
-                    agvStatus.put("status","充电中");
+                    agvStatus.put("monitoringStatus","充电中");
                 }else{
-                    agvStatus.put("status","报警");
+                    agvStatus.put("monitoringStatus","报警");
                 }
+                agvStatus.put("orderName","");
+                agvStatus.put("orderNumber","");
+                agvStatus.put("operationName","");
+                agvStatus.put("productName","");
+                agvStatus.put("productNumber","");
+                agvStatus.put("feedRate","");
+                agvStatus.put("spindleMagnification","");
+                agvStatus.put("spindleSpeed","");
+                agvStatus.put("spindleLoad","");
                 agvStatusArray.add(agvStatus);
             }
             return R.success(agvStatusArray.toJSONString());
@@ -283,4 +297,23 @@ public class AgvHikOrderInfoServiceImpl extends SuperCacheServiceImpl<AgvHikOrde
             return  R.fail("agv查询状态失败");
         }
     }
+
+    /**
+     * 设备3D展示数据
+     * @param data
+     * @return
+     */
+    @Override
+    public R query3dResouceDataInfo(Map<String, String> data){
+        BaseContextHandler.setTenant(BizConstant.TENANT);
+        JSONArray retData = new JSONArray();
+        // 查询当前设备任务及订单信息taskMapper
+        List<Map> resouceDataInfo = taskMapper.query3dResourceData(data);
+        retData.addAll(resouceDataInfo);
+        R retAgvStatus  = queryAgvStatus(data);
+        if(retAgvStatus.getIsSuccess()){
+            retData.addAll(JSONArray.parseArray(retAgvStatus.getData().toString()));
+        }
+        return R.success(retData);
+    }
 }

+ 2 - 0
imcs-admin-boot/imcs-business-biz/src/main/java/com/github/zuihou/business/operationManagementCenter/dao/TTaskMapper.java

@@ -59,4 +59,6 @@ public interface TTaskMapper extends SuperMapper<TTask> {
     List<Map> getStationTasks(Map<String, Object> map);
 
     int selectTotalMachineUseTime(Map params);
+
+    List<Map> query3dResourceData(Map<String, String> data);
 }

+ 2 - 2
imcs-admin-boot/imcs-business-biz/src/main/java/com/github/zuihou/business/productionResourceCenter/service/impl/RobotNodeServiceImpl.java

@@ -243,8 +243,8 @@ public class RobotNodeServiceImpl implements NodeOperationService {
                 dataMap.put("deviceUrl", ZK_ip_zndy);
                 break;
             case "舱体类加工单元":
-                //操作舱体线边库 具有取、移动、放三种指令
-                //取放加工设备
+                // 操作舱体线边库 具有取、移动、放三种指令
+                // 取放加工设备
                 dataMap = this.commandHandle(dataMap,agvStartStationStorge, functionName);
                 break;
             case "智能生产保障系统":

+ 30 - 0
imcs-admin-boot/imcs-business-biz/src/main/resources/mapper_business/base/operationManagementCenter/TTaskMapper.xml

@@ -341,4 +341,34 @@
         AND ibbp.id = itt.procedure_id
     </select>
 
+    <select id="query3dResourceData" resultType="java.util.Map">
+        SELECT
+          irdr.`3d_resource_id` AS id,
+          'cnc' AS deviceType,
+          itp.name AS deviceName,
+          ioo.order_name AS orderName,
+          ioo.order_no AS orderNumber,
+          tmp1.productName,
+          tmp1.productNumber
+        FROM imcs_resource_3d_relation irdr
+          LEFT JOIN imcs_tenant_productionresource itp
+            ON (irdr.resource_id = itp.id)
+          LEFT JOIN (SELECT
+              itt.resource_id,
+              itt.order_id,
+              ibbp.name AS operationName,
+              ibb.name AS productName,
+              ibb.no AS productNumber
+            FROM imcs_t_task itt,
+                 imcs_b_bom_procedure ibbp,
+                 imcs_b_bom ibb
+            WHERE itt.procedure_id = ibbp.id
+            AND itt.bom_id = ibb.id
+            AND ibb.status = '2'
+            ORDER BY ibb.status DESC) tmp1
+            ON (irdr.resource_id = tmp1.resource_id)
+          LEFT JOIN imcs_o_order ioo
+            ON (tmp1.order_id = ioo.id)
+    </select>
+
 </mapper>

+ 5 - 0
imcs-admin-boot/imcs-business-controller/src/main/java/com/github/zuihou/business/controller/externalApi/HikAgvControl.java

@@ -255,4 +255,9 @@ public class HikAgvControl extends SuperController<AgvHikOrderInfoService, Long,
     public R queryAgvStatus(@RequestBody Map<String, String> data) {
         return baseService.queryAgvStatus(data);
     }
+
+    @PostMapping("/query3dResouceDataInfo")
+    public R query3dResouceDataInfo(@RequestBody Map<String, String> data) {
+        return baseService.query3dResouceDataInfo(data);
+    }
 }