TRX před 1 rokem
rodič
revize
ba44c2872e

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

@@ -21,6 +21,7 @@ import com.zhongshu.card.server.core.service.base.CommonService;
 import com.zhongshu.card.server.core.service.base.SuperService;
 import com.zhongshu.card.server.core.service.org.OrganizationServiceImpl;
 import com.zhongshu.card.server.core.service.orgManager.OrganizationManagerServiceImpl;
+import com.zhongshu.card.server.core.service.paySetting.OrgPaySettingJudgmentService;
 import com.zhongshu.card.server.core.service.school.AreaServiceImpl;
 import com.zhongshu.card.server.core.util.BeanUtils;
 import lombok.extern.slf4j.Slf4j;
@@ -67,6 +68,9 @@ public class DeviceInfoServiceImpl extends SuperService implements DeviceInfoSer
     @Autowired
     private CommonService commonService;
 
+    @Autowired
+    private OrgPaySettingJudgmentService orgPaySettingJudgmentService;
+
     /**
      * 同步设备 (设备基础信息)
      *
@@ -286,6 +290,11 @@ public class DeviceInfoServiceImpl extends SuperService implements DeviceInfoSer
                 deviceInfo.setProjectOid(project.getOid());
             }
         }
+        // 检查设备关联的结构,是否可以收款
+        ResultContent resultContent = orgPaySettingJudgmentService.checkOrgPaySetting(deviceInfo.getProjectOid(), deviceInfo.getBeLongOid());
+        if (resultContent.isFailed()) {
+            return ResultContent.buildFail(resultContent.getMsg());
+        }
         deviceInfoDao.save(deviceInfo);
         return ResultContent.buildSuccess();
     }

+ 53 - 0
FullCardServer/src/main/java/com/zhongshu/card/server/core/service/paySetting/OrgPaySettingJudgmentService.java

@@ -0,0 +1,53 @@
+package com.zhongshu.card.server.core.service.paySetting;
+
+import com.github.microservice.net.ResultContent;
+import com.zhongshu.card.client.type.DataState;
+import com.zhongshu.card.server.core.dao.projectAbout.ProjectMainPaySettingDao;
+import com.zhongshu.card.server.core.dao.projectAbout.ProjectOrgPaySettingInfoDao;
+import com.zhongshu.card.server.core.dao.projectAbout.ProjectPaySettingDao;
+import com.zhongshu.card.server.core.domain.paySetting.ProjectPaySetting;
+import com.zhongshu.card.server.core.service.base.SuperService;
+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;
+import java.util.stream.Collectors;
+
+/**
+ * 机构、项目支付配置判断
+ *
+ * @author TRX
+ * @date 2024/11/19
+ */
+@Slf4j
+@Service
+public class OrgPaySettingJudgmentService extends SuperService {
+
+    @Autowired
+    private ProjectOrgPaySettingInfoDao projectPaySettingInfoDao;
+
+    @Autowired
+    private ProjectMainPaySettingDao projectMainPaySettingDao;
+
+    @Autowired
+    private ProjectPaySettingDao projectPaySettingDao;
+
+    public ResultContent checkOrgPaySetting(String projectOid, String oid) {
+        // 检查项目上是否设置了支付产品
+        List<ProjectPaySetting> list = projectPaySettingDao.findByProjectOid(projectOid);
+        if (ObjectUtils.isEmpty(list)) {
+            return ResultContent.buildFail("项目上未配置支付产品");
+        }
+        List<ProjectPaySetting> enableList = list.stream().filter(it -> {
+            return it.getState() == DataState.Enable;
+        }).collect(Collectors.toList());
+        if (ObjectUtils.isEmpty(enableList)) {
+            return ResultContent.buildFail("项目上未启用支付产品");
+        }
+
+        return ResultContent.buildSuccess();
+    }
+
+}

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

@@ -83,6 +83,7 @@ public class OrgUserFaceService extends SuperService {
         String groupId = CommonUtil.UUID();
         Map<String, Object> map = new HashMap<>();
         map.put("groupId", groupId);
+
         // 通知人脸信息发送变化
         devicePermissEventService.sendUserInfoChangeEvent(
                 orgUserFace.getUserId(), orgUserFace.getProjectOid(), map);