Selaa lähdekoodia

feat: 用户状态为3返回错误信息

weijianghai 2 vuotta sitten
vanhempi
commit
bca0a09bec

+ 19 - 45
src/main/java/com/nokia/domainb/service/DomainService.java

@@ -21,9 +21,6 @@ import org.springframework.stereotype.Service;
 @Service
 public class DomainService {
     public R route(RouteDTO dto) {
-        RouteVO vo = new RouteVO();
-        vo.setIsUnicomNumber(false);
-        vo.setPhoneNumber(dto.getPhoneNumber());
         QryRouteAll qryRouteAll = new QryRouteAll();
         String result = qryRouteAll.query(dto.getPhoneNumber());
         JsonObject jsonObject = JsonParser.parseString(result).getAsJsonObject();
@@ -33,9 +30,11 @@ public class DomainService {
         String rspCode = rsp.get("RSP_CODE").getAsString();
         if (!"0000".equals(rspCode)) {
             String rspDesc = rsp.get("RSP_DESC").getAsString();
-            return R.error().data(vo).message(rspDesc);
+            return R.error().message(rspDesc);
         }
 
+        RouteVO vo = new RouteVO();
+        vo.setPhoneNumber(dto.getPhoneNumber());
         JsonObject data = rsp.getAsJsonArray("DATA").get(0).getAsJsonObject();
         JsonElement routeTypeElement = data.get("ROUTE_TYPE");
         if (routeTypeElement != null) {
@@ -57,26 +56,22 @@ public class DomainService {
             vo.setEparchyCode(eparchyCodeElement.getAsString());
         }
 
-        boolean isUnicomNumber = "1".equals(vo.getUserStatus()) || "2".equals(vo.getUserStatus());
-        if (isUnicomNumber) {
-            vo.setIsUnicomNumber(true);
-            return R.ok().data(vo);
+        if ("3".equals(vo.getUserStatus())) {
+            return R.error().message("非CB 号码在cBss系统没有路由记录");
         }
 
-        return R.error().data(vo).message(getUserStatusDescription(vo.getUserStatus()));
+        vo.setIsUnicomNumber(true);
+        return R.ok().data(vo);
     }
 
     public R sa(SaDTO dto) {
         R r = route(new RouteDTO(dto.getFromSystem(), dto.getPhoneNumber()));
-        RouteVO routeVO = (RouteVO) r.getData();
-        SaVO vo = new SaVO();
-        vo.setIsUnicomNumber(false);
-        vo.setIsHaveSa(false);
-        vo.setIsUdmUser(false);
-        if (Boolean.FALSE.equals(routeVO.getIsUnicomNumber())) {
-            return R.error().data(vo).message(getUserStatusDescription(routeVO.getUserStatus()));
+        if (Boolean.FALSE.equals(r.getSuccess())) {
+            return r;
         }
 
+        RouteVO routeVO = (RouteVO) r.getData();
+        SaVO vo = new SaVO();
         vo.setIsUnicomNumber(true);
         QryUserIsUdm qryUserIsUdm = new QryUserIsUdm();
         COMPConnectionContext result = qryUserIsUdm.query(dto.getPhoneNumber(), routeVO.getProvinceCode(), false);
@@ -87,7 +82,7 @@ public class DomainService {
         String rspCode = rsp.get("RSP_CODE").getAsString();
         if (!"0000".equals(rspCode)) {
             String rspDesc = rsp.get("RSP_DESC").getAsString();
-            return R.error().data(vo).message(rspDesc);
+            return R.error().message(rspDesc);
         }
 
         JsonObject data = rsp.getAsJsonArray("DATA").get(0).getAsJsonObject();
@@ -106,16 +101,11 @@ public class DomainService {
 
     public R saAndVolte(SaAndVolteDTO dto) {
         R r = route(new RouteDTO(dto.getFromSystem(), dto.getPhoneNumber()));
-        RouteVO routeVO = (RouteVO) r.getData();
-        SaAndVolteVO vo = new SaAndVolteVO();
-        vo.setIsHebeiUnicomNumber(false);
-        vo.setIsHaveSa(false);
-        vo.setIsHaveVolte(false);
-        // 非联通号码
-        if (Boolean.FALSE.equals(routeVO.getIsUnicomNumber())) {
-            return R.error().data(vo).message(getUserStatusDescription(routeVO.getUserStatus()));
+        if (Boolean.FALSE.equals(r.getSuccess())) {
+            return r;
         }
 
+        RouteVO routeVO = (RouteVO) r.getData();
         Foreignproduct foreignproduct = new Foreignproduct();
         COMPConnectionContext result = foreignproduct.query(dto.getPhoneNumber(), routeVO.getProvinceCode(), false);
         JsonObject jsonObject = JsonParser.parseString(result.getResponseContext()).getAsJsonObject();
@@ -125,9 +115,12 @@ public class DomainService {
         String rspCode = rsp.get("RSP_CODE").getAsString();
         if (!"0000".equals(rspCode)) {
             String rspDesc = rsp.get("RSP_DESC").getAsString();
-            return R.error().data(vo).message(rspDesc);
+            return R.error().message(rspDesc);
         }
 
+        SaAndVolteVO vo = new SaAndVolteVO();
+        vo.setIsHaveSa(false);
+        vo.setIsHaveVolte(false);
         vo.setIsHebeiUnicomNumber(true);
         String res = result.getResponseContext();
         if (res.contains("VoLTE")) {
@@ -140,23 +133,4 @@ public class DomainService {
 
         return R.ok().data(vo);
     }
-
-    /**
-     * 获取路由用户状态说明
-     */
-    private String getUserStatusDescription(String userStatus) {
-        if ("3".equals(userStatus)) {
-            return "非CB 号码在cBss系统没有路由记录";
-        }
-
-        if ("4".equals(userStatus)) {
-            return "drds 号码失效状态 且为新架构号码";
-        }
-
-        if ("5".equals(userStatus)) {
-            return "oracle 号码失效状态 且为cBss常态化号码";
-        }
-
-        return null;
-    }
 }

+ 1 - 1
src/test/java/com/nokia/domainb/capability/QryUserIsUdmTest.java

@@ -7,7 +7,7 @@ public class QryUserIsUdmTest {
     @Test
     void testQuery() {
         QryUserIsUdm qryUserIsUdm = new QryUserIsUdm();
-        COMPConnectionContext result = qryUserIsUdm.query("18503369666", "18", false);
+        COMPConnectionContext result = qryUserIsUdm.query("15631768706", "18", false);
         System.out.println(result.getResponseContext());
 //        Set<String> phones = Utils.readPhones();
 ////        String filePath = "result/微服务_用户中心_5G用户查询样本.csv";