TRX 1 سال پیش
والد
کامیت
0c8808dcc2

+ 2 - 8
FullCardServer/src/main/java/com/zhongshu/card/server/core/controller/fix/FixDataController.java

@@ -1,16 +1,15 @@
 package com.zhongshu.card.server.core.controller.fix;
 
-import com.github.microservice.net.ResultContent;
 import com.zhongshu.card.server.core.service.fix.FixDataService;
-import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.tags.Tag;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RestController;
 
 /**
+ * 修复数据
+ *
  * @author TRX
  * @date 2024/6/27
  */
@@ -23,9 +22,4 @@ public class FixDataController {
     @Autowired
     private FixDataService fixDataService;
 
-    @Operation(summary = "同步全部项目到物联网平台")
-    @RequestMapping(value = "fixSyncDevice", method = {RequestMethod.GET})
-    public ResultContent fixSyncDevice() {
-        return fixDataService.fixSyncProjectToIot();
-    }
 }

+ 67 - 0
FullCardServer/src/main/java/com/zhongshu/card/server/core/domain/devices/thing/IotThing.java

@@ -0,0 +1,67 @@
+package com.zhongshu.card.server.core.domain.devices.thing;
+
+import com.github.microservice.types.deviceUse.DeviceCategory;
+import com.github.microservice.types.deviceUse.DeviceType;
+import com.github.microservice.types.deviceUse.ThingType;
+import com.zhongshu.card.server.core.domain.base.SuperMain;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import org.springframework.data.mongodb.core.mapping.Document;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 物模型数据
+ *
+ * @author TRX
+ * @date 2025/3/3
+ */
+@Data
+@Document
+@NoArgsConstructor
+@AllArgsConstructor
+public class IotThing extends SuperMain {
+
+    @Schema(description = "物模型类型:自动、手动创建")
+    private ThingType thingType;
+
+    @Schema(description = "编码")
+    private String code;
+
+    @Schema(description = "名称")
+    private String name;
+
+    @Schema(description = "设备数量")
+    private Long deviceCount = 0L;
+
+    @Schema(description = "所属分组")
+    private String projectCode;
+
+    //-----------------所属产品 start-----------
+    @Schema(description = "所属产品数据id")
+    private String iotTemplateId;
+
+    @Schema(description = "关联code,产品code")
+    private String productCode;
+
+    @Schema(description = "产品名称")
+    private String productName;
+
+    //-----------------管理的设备类型 start ---------
+
+    @Schema(description = "设备id")
+    private String deviceId;
+
+    @Schema(description = "设备品类")
+    private DeviceCategory deviceCategory;
+
+    @Schema(description = "设备id集合")
+    private List<String> deviceIds = new ArrayList<>();
+
+    @Schema(description = "设备类型集合")
+    private List<DeviceType> deviceTypes = new ArrayList<>();
+
+}

+ 0 - 90
FullCardServer/src/main/java/com/zhongshu/card/server/core/service/devices/ProjectSyncIotCenterService.java

@@ -1,90 +0,0 @@
-package com.zhongshu.card.server.core.service.devices;
-
-import com.github.microservice.auth.security.type.AuthType;
-import com.github.microservice.models.project.ProjectSyncParam;
-import com.github.microservice.types.common.CommonState;
-import com.github.microservice.net.ResultContent;
-import com.zhongshu.card.client.type.OrganizationState;
-import com.zhongshu.card.server.core.dao.org.OrganizationDao;
-import com.zhongshu.card.server.core.domain.org.Organization;
-import com.zhongshu.card.server.core.event.ProjectSyncEvent;
-import com.zhongshu.card.server.core.httpRequest.ApiRequestService;
-import lombok.SneakyThrows;
-import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang3.ObjectUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.ApplicationContext;
-import org.springframework.context.event.EventListener;
-import org.springframework.scheduling.annotation.Async;
-import org.springframework.stereotype.Service;
-
-import java.util.List;
-import java.util.stream.Collectors;
-
-/**
- * @author TRX
- * @date 2024/6/27
- */
-@Slf4j
-@Service
-public class ProjectSyncIotCenterService {
-
-    @Autowired
-    OrganizationDao organizationDao;
-
-    @Autowired
-    ApplicationContext applicationContext;
-
-    @Autowired
-    ApiRequestService apiRequestService;
-
-    public ResultContent noticeSyncProjects(List<Organization> list) {
-        if (ObjectUtils.isNotEmpty(list)) {
-            List<String> projectOIds = list.stream().map(it -> it.getOid()).collect(Collectors.toList());
-            ProjectSyncEvent event = new ProjectSyncEvent(this, projectOIds);
-            applicationContext.publishEvent(event);
-        }
-        return ResultContent.buildSuccess();
-    }
-
-    public ResultContent noticeSyncProject(Organization organization) {
-        if (ObjectUtils.isNotEmpty(organization) && organization.getAuthType() == AuthType.Project) {
-            List<String> projectOIds = List.of(organization.getOid());
-            ProjectSyncEvent event = new ProjectSyncEvent(this, projectOIds);
-            applicationContext.publishEvent(event);
-        }
-        return ResultContent.buildSuccess();
-    }
-
-    @EventListener(classes = ProjectSyncEvent.class)
-    @Async
-    @SneakyThrows
-    public void syncProjectInfo(ProjectSyncEvent event) {
-        List<String> projectOIds = event.getProjectOIds();
-        log.info("syncProjectInfo: {}", projectOIds.size());
-        if (ObjectUtils.isNotEmpty(projectOIds)) {
-            List<Organization> organizations = organizationDao.findByOidIn(projectOIds);
-            List<ProjectSyncParam.ProjectSyncInfo> list = organizations.stream().map(it -> {
-                ProjectSyncParam.ProjectSyncInfo info = new ProjectSyncParam.ProjectSyncInfo();
-                info.setCode(it.getCode());
-                info.setName(it.getName());
-                OrganizationState state = it.getState();
-                if (state == OrganizationState.Normal) {
-                    info.setState(CommonState.Enable);
-                } else {
-                    info.setState(CommonState.Disable);
-                }
-                return info;
-            }).collect(Collectors.toList());
-            ProjectSyncParam param = new ProjectSyncParam();
-            param.setList(list);
-            // 请求iot平台
-//            APIResponseModel api = apiRequestService.sendIotCenterAPI(IotCenterAPIConfig.syncFromFullCardProjects, param);
-//            if (api.isSuccess()) {
-//                log.info("同步项目成功");
-//            } else {
-//                log.error("同步项目失败:{}", api.getMsg());
-//            }
-        }
-    }
-}

+ 18 - 0
FullCardServer/src/main/java/com/zhongshu/card/server/core/service/devices/thing/IotThingService.java

@@ -0,0 +1,18 @@
+package com.zhongshu.card.server.core.service.devices.thing;
+
+import com.zhongshu.card.server.core.service.base.SuperService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+
+/**
+ * 物模型管理服务
+ *
+ * @author TRX
+ * @date 2025/3/3
+ */
+@Slf4j
+@Service
+public class IotThingService extends SuperService {
+
+
+}

+ 0 - 21
FullCardServer/src/main/java/com/zhongshu/card/server/core/service/fix/FixDataService.java

@@ -1,17 +1,10 @@
 package com.zhongshu.card.server.core.service.fix;
 
-import com.github.microservice.auth.security.type.AuthType;
-import com.github.microservice.net.ResultContent;
 import com.zhongshu.card.server.core.dao.org.OrganizationDao;
-import com.zhongshu.card.server.core.domain.org.Organization;
-import com.zhongshu.card.server.core.service.devices.ProjectSyncIotCenterService;
 import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang3.ObjectUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
-import java.util.List;
-
 /**
  * @author TRX
  * @date 2024/6/28
@@ -26,19 +19,5 @@ public class FixDataService {
     @Autowired
     ProjectSyncIotCenterService projectSyncIotCenterService;
 
-    /**
-     * 同步项目信息到物联网平台
-     *
-     * @return
-     */
-    public ResultContent fixSyncProjectToIot() {
-        int count = 0;
-        List<Organization> list = organizationDao.findByAuthType(AuthType.Project);
-        if (ObjectUtils.isNotEmpty(list)) {
-            count = list.size();
-            projectSyncIotCenterService.noticeSyncProjects(list);
-        }
-        return ResultContent.buildSuccess(String.format("同步项目:%d", count));
-    }
 
 }

+ 0 - 1
FullCardServer/src/main/java/com/zhongshu/card/server/core/service/org/OrganizationServiceImpl.java

@@ -26,7 +26,6 @@ import com.zhongshu.card.server.core.dao.org.*;
 import com.zhongshu.card.server.core.dataConfig.CardSystemDefault;
 import com.zhongshu.card.server.core.domain.org.*;
 import com.zhongshu.card.server.core.service.base.SuperService;
-import com.zhongshu.card.server.core.service.devices.ProjectSyncIotCenterService;
 import com.zhongshu.card.server.core.service.orgManager.OrganizationManagerServiceImpl;
 import com.zhongshu.card.server.core.service.orgManager.ProjectBindOrgServiceImpl;
 import com.zhongshu.card.server.core.service.projectAbout.ProjectCommonConfigService;

+ 0 - 1
FullCardServer/src/main/java/com/zhongshu/card/server/core/service/orgManager/OrganizationManagerServiceImpl.java

@@ -16,7 +16,6 @@ import com.zhongshu.card.server.core.domain.org.Organization;
 import com.zhongshu.card.server.core.domain.org.OrganizationRelation;
 import com.zhongshu.card.server.core.domain.org.Region;
 import com.zhongshu.card.server.core.service.base.SuperService;
-import com.zhongshu.card.server.core.service.devices.ProjectSyncIotCenterService;
 import com.zhongshu.card.server.core.service.org.OrganizationServiceImpl;
 import com.zhongshu.card.server.core.service.org.OrganizationUserServiceImpl;
 import com.zhongshu.card.server.core.service.projectAbout.ProjectCommonConfigService;