Ver Fonte

更新!

TRX há 1 ano atrás
pai
commit
be6221c2a0

+ 0 - 18
FullCardClient/src/main/java/com/zhongshu/card/client/type/permiss/DevicePermissTempType.java

@@ -1,18 +0,0 @@
-package com.zhongshu.card.client.type.permiss;
-
-import lombok.Getter;
-
-/**
- * 消息类型
- */
-public enum DevicePermissTempType {
-    Visitor("访客"),
-    ;
-
-    @Getter
-    private String remark;
-
-    DevicePermissTempType(String remark) {
-        this.remark = remark;
-    }
-}

+ 12 - 0
FullCardServer/src/main/java/com/zhongshu/card/server/core/domain/devices/DeviceUseRecords.java

@@ -5,6 +5,8 @@ import com.github.microservice.models.type.DeviceType;
 import com.github.microservice.types.deviceUse.DeviceUseState;
 import com.github.microservice.types.deviceUse.OperateState;
 import com.github.microservice.types.deviceUse.OperateType;
+import com.github.microservice.types.user.DevicePermissFromType;
+import com.github.microservice.types.user.UserFromType;
 import com.zhongshu.card.client.model.devices.DeviceInfoStoreModel;
 import com.zhongshu.card.client.model.org.UserCountSimpleModel;
 import com.zhongshu.card.client.model.school.CardInfoStoreModel;
@@ -88,9 +90,19 @@ public class DeviceUseRecords extends SuperMain {
     private String pic = "";
 
     //------------------用户信息 start-------------------
+
+    @Schema(description = "权限来自哪里的配置")
+    private DevicePermissFromType permissFromType = DevicePermissFromType.SystemConfig;
+
+    @Schema(description = "用户类型")
+    private UserFromType userFromType = UserFromType.SystemUser;
+
     @Schema(description = "用户userId")
     private String userId;
 
+    @Schema(description = "用户名称")
+    private String userName;
+
     @Schema(description = "用户信息")
     public UserCountSimpleModel userAccount;
 

+ 2 - 2
FullCardServer/src/main/java/com/zhongshu/card/server/core/domain/devices/permiss/Device2UseUsable.java

@@ -1,6 +1,6 @@
 package com.zhongshu.card.server.core.domain.devices.permiss;
 
-import com.zhongshu.card.client.type.permiss.DevicePermissTempType;
+import com.github.microservice.types.user.DevicePermissFromType;
 import com.zhongshu.card.server.core.domain.base.SuperMain;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.AllArgsConstructor;
@@ -29,7 +29,7 @@ public class Device2UseUsable extends SuperMain {
     private List<String> useDataIds = new ArrayList<>();
 
     @Schema(description = "临时权限来自哪里")
-    private DevicePermissTempType tempType;
+    private DevicePermissFromType tempType;
 
     @Schema(description = "数据id")
     private String fromDataId;

+ 5 - 0
FullCardServer/src/main/java/com/zhongshu/card/server/core/domain/visitor/VisitorMain.java

@@ -1,5 +1,6 @@
 package com.zhongshu.card.server.core.domain.visitor;
 
+import com.github.microservice.types.user.UserFromType;
 import com.zhongshu.card.client.type.visitor.VisitorState;
 import com.zhongshu.card.server.core.domain.base.SuperMain;
 import com.zhongshu.card.server.core.domain.devices.DeviceInfo;
@@ -60,6 +61,10 @@ public class VisitorMain extends SuperMain {
     private Boolean reViewSuccess;
 
     //-------------------------------申请信息start--------------------
+
+    @Schema(description = "用户类型")
+    private UserFromType userFromType;
+
     @Schema(description = "临时用户id")
     private String tempUserId;
 

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

@@ -108,6 +108,7 @@ public class DeviceUseRecordService extends SuperService {
             deviceUseRecord = init(mqttDataId);
             if (ObjectUtils.isNotEmpty(deviceUseRecord)) {
                 BeanUtils.copyProperties(param, deviceUseRecord);
+
                 String deviceId = param.getDeviceId();
                 String cardNo = param.getCardNo();
                 String userId = param.getUserId();

+ 14 - 5
FullCardServer/src/main/java/com/zhongshu/card/server/core/service/devices/permiss/Device2UseUsableService.java

@@ -1,8 +1,9 @@
 package com.zhongshu.card.server.core.service.devices.permiss;
 
+import com.github.microservice.models.gateDoor.use.GateDoorUseParam;
 import com.github.microservice.net.ResultContent;
+import com.github.microservice.types.user.DevicePermissFromType;
 import com.zhongshu.card.client.model.devices.permiss.Device2UseUsableSearch;
-import com.zhongshu.card.client.type.permiss.DevicePermissTempType;
 import com.zhongshu.card.server.core.dao.devices.Device2UseUsableDao;
 import com.zhongshu.card.server.core.dao.visitor.VisitorSettingDeviceDao;
 import com.zhongshu.card.server.core.domain.devices.permiss.Device2UseUsable;
@@ -52,7 +53,8 @@ public class Device2UseUsableService {
         }
         Device2UseUsable entity = new Device2UseUsable();
         entity.setFromDataId(visitorMain.getId());
-        entity.setTempType(DevicePermissTempType.Visitor);
+        entity.setTempType(DevicePermissFromType.Visitor);
+
         List<String> useDataIds = new ArrayList<>();
         useDataIds.add(visitorMain.getTempUserId());
         if (StringUtils.isNotEmpty(visitorMain.getApplyUserId())) {
@@ -85,7 +87,8 @@ public class Device2UseUsableService {
      * @param deviceId
      * @return
      */
-    public ResultContent<String> verifyDevice(String userId, String deviceId, String projectOid) {
+    public ResultContent<String> verifyDevice(String userId, String deviceId,
+            String projectOid, GateDoorUseParam deviceUserParam) {
         String msg = "失败";
 
         Device2UseUsableSearch param = new Device2UseUsableSearch();
@@ -99,9 +102,15 @@ public class Device2UseUsableService {
         if (ObjectUtils.isNotEmpty(list)) {
             msg = "成功";
             for (Device2UseUsable device2UseUsable : list) {
-                if (device2UseUsable.getTempType() == DevicePermissTempType.Visitor) {
+                if (device2UseUsable.getTempType() == DevicePermissFromType.Visitor) {
+                    deviceUserParam.setPermissFromType(DevicePermissFromType.Visitor);
+
                     // 访客的数据
-                    msg = visitorMainService.markVisitor(device2UseUsable.getFromDataId());
+                    VisitorMain entity = visitorMainService.markVisitor(device2UseUsable.getFromDataId());
+                    if (ObjectUtils.isNotEmpty(entity) && deviceUserParam != null) {
+                        deviceUserParam.setUserName(entity.getName());
+                        deviceUserParam.setUserFromType(entity.getUserFromType());
+                    }
                 }
             }
             return ResultContent.buildSuccess(msg);

+ 2 - 2
FullCardServer/src/main/java/com/zhongshu/card/server/core/service/devices/permiss/DevicePermissVerifyService.java

@@ -115,6 +115,7 @@ public class DevicePermissVerifyService {
 
         boolean hasPermission = false;
         String projectOid = deviceInfo.getProjectOid();
+        deviceUserParam.setProjectOid(projectOid);
 
         if (isSystemUser) {
             // 系统用户类型
@@ -189,10 +190,9 @@ public class DevicePermissVerifyService {
         }
 
         if (!hasPermission) {
-            ResultContent<String> resultContent = device2UseUsableService.verifyDevice(userId, deviceId, projectOid);
+            ResultContent<String> resultContent = device2UseUsableService.verifyDevice(userId, deviceId, projectOid, deviceUserParam);
             if (resultContent.isSuccess()) {
                 hasPermission = true;
-                deviceUserParam.setUserName(resultContent.getMsg());
             } else {
             }
         }

+ 8 - 4
FullCardServer/src/main/java/com/zhongshu/card/server/core/service/visitor/VisitorMainService.java

@@ -5,6 +5,7 @@ import com.github.microservice.auth.client.service.UserFaceService;
 import com.github.microservice.components.data.base.util.PageEntityUtil;
 import com.github.microservice.net.ResultContent;
 import com.github.microservice.net.ResultMessage;
+import com.github.microservice.types.user.UserFromType;
 import com.zhongshu.card.client.model.devices.DeviceInfoSimpleModel;
 import com.zhongshu.card.client.model.visitor.VisitorMainModel;
 import com.zhongshu.card.client.model.visitor.VisitorMainParam;
@@ -155,9 +156,12 @@ public class VisitorMainService extends SuperService {
         entity.setProjectOid(projectOid);
 
         String tempUserId = applyUserId;
+        UserFromType userFromType = UserFromType.SystemUser;
         if (StringUtils.isEmpty(tempUserId)) {
             tempUserId = TempUserUtil.getVisitorTempUserId();
+            userFromType = UserFromType.VisitorUser;
         }
+        entity.setUserFromType(userFromType);
         entity.setTempUserId(tempUserId);
         visitorMainDao.save(entity);
         return ResultContent.buildSuccess();
@@ -265,20 +269,20 @@ public class VisitorMainService extends SuperService {
      *
      * @param fromDataId
      */
-    public String markVisitor(String fromDataId) {
+    public VisitorMain markVisitor(String fromDataId) {
         if (StringUtils.isNotEmpty(fromDataId)) {
             VisitorMain visitorMain = visitorMainDao.findTopById(fromDataId);
             if (ObjectUtils.isEmpty(visitorMain)) {
-                return "";
+                return null;
             }
             if (visitorMain.getState() == VisitorState.WaitVisit) {
                 visitorMain.setState(VisitorState.Visit);
                 visitorMain.setFirstVisitTime(System.currentTimeMillis());
                 visitorMainDao.save(visitorMain);
-                return visitorMain.getName();
+                return visitorMain;
             }
         }
-        return "";
+        return null;
     }
 
     public ResultContent checkReViewInfo(VisitorMain visitorMain) {