فهرست منبع

feature: 增加根据终端获取医院 id 的全局方法

Walker 2 سال پیش
والد
کامیت
10e38b135d

+ 25 - 0
onemini-hospital-empty/src/main/java/com/ywt/alipaympapi/core/utils/BizUtil.java

@@ -0,0 +1,25 @@
+package com.ywt.alipaympapi.core.utils;
+
+import com.ywt.alipaympapi.models.Constants;
+import com.ywt.alipaympapi.models.enums.TerminalEnum;
+
+/**
+ * @author Walker
+ * Created on 2022/9/14
+ */
+public final class BizUtil {
+    /**
+     * 根据当前终端获取所在医院 id
+     *
+     * @return 医院 id
+     */
+    public static int getCurrentHospitalId() {
+        switch (TerminalEnum.valueOf(ContextHelper.getCurrentTerminalWrapped())) {
+            case NFYYBYFY_ALIPAY_MP:
+            case NFYYBYFY_WXAPP:
+                return Constants.HOSPITAL_ID_NFYYBYFY;
+            default:
+                return 0;
+        }
+    }
+}

+ 3 - 0
onemini-hospital-empty/src/main/java/com/ywt/alipaympapi/models/Constants.java

@@ -9,4 +9,7 @@ public class Constants {
     public static final int INPUT_TEXT_LENGTH_30 = 30;
 
     public static final int HOSPITAL_ID_NFYYBYFY = 41;
+
+    public static final String ALIPAYMP_APPID_NFYYBYFY = "2021003141662056";
+    public static final String ALIPAYMP_SAAS_SEC_KEY_NFYYBYFY = "LdYnclVYOKdN5NRDbTDVyXbQiBQiysOQ";
 }

+ 2 - 17
onemini-hospital-empty/src/main/java/com/ywt/alipaympapi/service/AuthService.java

@@ -45,25 +45,10 @@ public class AuthService {
         AlipayMpCfg cfg = new AlipayMpCfg();
         if (TerminalEnum.valueOf(terminal) == TerminalEnum.NFYYBYFY_ALIPAY_MP) {
             // TODO: 后续多医院支持需要改成配置化
-            cfg.setAppId("2021003141662056");
-            cfg.setSaasSecurityKey("LdYnclVYOKdN5NRDbTDVyXbQiBQiysOQ");
+            cfg.setAppId(Constants.ALIPAYMP_APPID_NFYYBYFY);
+            cfg.setSaasSecurityKey(Constants.ALIPAYMP_SAAS_SEC_KEY_NFYYBYFY);
             return cfg;
         }
         throw new AppMessageException(String.format("Unsupported terminal %d", terminal));
     }
-
-    /**
-     * 根据 appId 得到 hospitalId
-     *
-     * @param appId 医院对应的appId,注: 一个医院可以用多个支付宝 appId
-     * @return 医院ID
-     * @throws AppMessageException
-     */
-    public int getHospitalIdByAppId(String appId) {
-        int hospitalId = Constants.HOSPITAL_ID_NFYYBYFY;
-        if ("2021003141662056".equals(appId)) {
-            hospitalId = Constants.HOSPITAL_ID_NFYYBYFY;
-        }
-        return hospitalId;
-    }
 }

+ 5 - 16
onemini-hospital-empty/src/main/java/com/ywt/alipaympapi/service/impl/IsvMedicCardServiceImpl.java

@@ -31,20 +31,15 @@ import java.util.List;
 
 @Service
 public class IsvMedicCardServiceImpl implements IsvMedicCardService {
-    private static Logger logger = LoggerFactory.getLogger(IsvMedicCardServiceImpl.class);
     @Autowired
     private TaiheRegisterServiceGrpc.TaiheRegisterServiceBlockingStub taiheRegisterServiceBlockingStub;
     @Autowired
     private UserServiceGrpc.UserServiceBlockingStub userServiceBlockingStub;
     @Autowired
-    private AuthService authService;
-    @Autowired
     private MessageSrv messageSrv;
 
     @Override
     public CreateOrBindCardResponseData createOrBindMedicCard(CreateOrBindCardRequest request) throws Exception {
-        //医院小程序的AppId
-        String appId = request.getAppId();
         //用户唯一id
         // String userId = request.getUserId();
         //标志新建or绑定操作; 0=新建 1=绑定
@@ -67,7 +62,7 @@ public class IsvMedicCardServiceImpl implements IsvMedicCardService {
         String idNo = request.getIdCardNo();
         //姓名
         String patientName = Checker.getStringValue(request.getName());
-        int hospitalId = authService.getHospitalIdByAppId(appId);
+        int hospitalId = BizUtil.getCurrentHospitalId();
         int userId = ContextHelper.getCurrentUserIdWrapped();
         CreateOrBindCardResponseData resp = new CreateOrBindCardResponseData();
         // type: 标志新建or绑定操作; 0=新建 1=绑定
@@ -173,8 +168,7 @@ public class IsvMedicCardServiceImpl implements IsvMedicCardService {
             throw new AppMessageException("诊疗卡不存在");
         }
         int cardId = Integer.parseInt(cardNum);
-        String appId = request.getAppId();
-        int hospitalId = authService.getHospitalIdByAppId(appId);
+        int hospitalId = BizUtil.getCurrentHospitalId();
         int userId = ContextHelper.getCurrentUserIdWrapped();
         GetMedicalCardListRequest getMedicalCardListRequest = GetMedicalCardListRequest.newBuilder()
                 .setHospitalId(hospitalId)
@@ -208,8 +202,7 @@ public class IsvMedicCardServiceImpl implements IsvMedicCardService {
 
     @Override
     public QueryDefaultCardResponseData queryDefaultMedicCard(QueryDefaultCardRequest request) throws Exception {
-        String appId = request.getAppId();
-        int hospitalId = authService.getHospitalIdByAppId(appId);
+        int hospitalId = BizUtil.getCurrentHospitalId();
         int userId = ContextHelper.getCurrentUserIdWrapped();
         GetMedicalCardListRequest getMedicalCardListRequest = GetMedicalCardListRequest.newBuilder()
                 .setHospitalId(hospitalId)
@@ -244,9 +237,7 @@ public class IsvMedicCardServiceImpl implements IsvMedicCardService {
 
     @Override
     public PageVO<QueryListCardResponseData> queryListMedicCard(QueryListCardRequest request) throws Exception {
-
-        String appId = request.getAppId();
-        int hospitalId = authService.getHospitalIdByAppId(appId);
+        int hospitalId = BizUtil.getCurrentHospitalId();
         int userId = ContextHelper.getCurrentUserIdWrapped();
         GetMedicalCardListRequest getMedicalCardListRequest = GetMedicalCardListRequest.newBuilder()
                 .setHospitalId(hospitalId)
@@ -311,8 +302,6 @@ public class IsvMedicCardServiceImpl implements IsvMedicCardService {
     @Override
     public BindMedInsuranceCardResponseData bindMedInsuranceCard(BindMedInsuranceCardRequest request) throws Exception {
         BindMedInsuranceCardResponseData resp = new BindMedInsuranceCardResponseData();
-        String appId = request.getAppId();//医院小程序的AppId
-//        String userId = request.getUserId();//用户唯一id
         String patientName = request.getName();//姓名
         String sex = request.getSex();//性别
         String birthDay = request.getBirthDay();//生日
@@ -320,7 +309,7 @@ public class IsvMedicCardServiceImpl implements IsvMedicCardService {
         String phoneNo = request.getPhoneNumber();//手机号
         String cardNum = request.getMedInsuranceNum();//医保卡识别号
 
-        int hospitalId = authService.getHospitalIdByAppId(appId);
+        int hospitalId = BizUtil.getCurrentHospitalId();
         int userId = ContextHelper.getCurrentUserIdWrapped();
         if (hospitalId < 1) {
             throw new AppMessageException("请选择医院");

+ 5 - 12
onemini-hospital-empty/src/main/java/com/ywt/alipaympapi/service/impl/IsvRegisterServiceImpl.java

@@ -1,5 +1,6 @@
 package com.ywt.alipaympapi.service.impl;
 
+import com.ywt.alipaympapi.core.utils.BizUtil;
 import com.ywt.alipaympapi.core.utils.Checker;
 import com.ywt.alipaympapi.core.utils.DateUtil;
 import com.ywt.alipaympapi.core.utils.JsonSerializer;
@@ -47,14 +48,10 @@ public class IsvRegisterServiceImpl implements IsvRegisterService {
     @Autowired
     private TaiheServiceGrpc.TaiheServiceBlockingStub taiheServiceBlockingStub;
 
-    @Autowired
-    private AuthService authService;
-
     @Override
     public List<QueryDepartmentListResponseData> queryDepartmentList(QueryDepartmentListRequest request) throws Exception {
         logger.error("IsvRegisterServiceImpl#queryDepartmentList--QueryDepartmentListRequest:{}", JsonSerializer.toJson(request));
-        String appId = request.getAppId();
-        int hospitalId = authService.getHospitalIdByAppId(appId);
+        int hospitalId = BizUtil.getCurrentHospitalId();
         String hospitalDistrictId = request.getHospitalDistrictId();
         int subHospitalId = 0;
         if (!Checker.isNone(hospitalDistrictId)) {
@@ -124,12 +121,11 @@ public class IsvRegisterServiceImpl implements IsvRegisterService {
     @Override
     public OrderConfirmResponseData orderConfirm(OrderConfirmRequest request) {
         logger.error("IsvRegisterServiceImpl#orderConfirm--OrderConfirmRequest:{}", JsonSerializer.toJson(request));
-        String appId = request.getAppId();//医院小程序的AppId
         int userId = Integer.parseInt(Checker.getStringValue(request.getUserId(), "0"));//用户唯一识别号
         String doctorId = request.getDoctorId();//医生唯一识别号
         String orderSourceId = request.getOrderSourceId();//号源id
         String cardNum = request.getCardNum();//就诊卡卡号
-        int hospitalId = authService.getHospitalIdByAppId(appId);
+        int hospitalId = BizUtil.getCurrentHospitalId();
 
 
         return null;
@@ -174,9 +170,7 @@ public class IsvRegisterServiceImpl implements IsvRegisterService {
     @Override
     public List<QueryQueueListResponse> queryQueueList(QueryQueueListRequest request) throws Exception {
         logger.error("IsvRegisterServiceImpl#queryQueueList--QueryQueueListRequest:{}", JsonSerializer.toJson(request));
-        //医院小程序的AppId
-        String appId = request.getAppId();
-        int hospitalId = authService.getHospitalIdByAppId(appId);
+        int hospitalId = BizUtil.getCurrentHospitalId();
         //用户唯一识别号
         int userId = Integer.parseInt(Checker.getStringValue(request.getUserId(), "0"));
 
@@ -254,12 +248,11 @@ public class IsvRegisterServiceImpl implements IsvRegisterService {
     @Override
     public PageVO<QueryDoctorListResponseData> queryDoctorList(QueryDoctorListRequest request) {
         logger.error("IsvRegisterServiceImpl#queryDoctorList--QueryDoctorListRequest:{}", JsonSerializer.toJson(request));
-        String appId = request.getAppId();
         int pageIndex = request.getPageIndex();
         int pageSize = request.getPageSize();
         String deptCode = request.getDeptCode();
         String doctorName = request.getDoctorName();
-        int hospitalId = authService.getHospitalIdByAppId(appId);
+        int hospitalId = BizUtil.getCurrentHospitalId();
         GetDoctorListRequest getDoctorListRequest = GetDoctorListRequest.newBuilder()
                 .setDeptCode(deptCode)
                 .setDoctorName(doctorName)