mirror of
https://github.com/hpd840321/starRiverProperty.git
synced 2026-06-09 08:20:31 +08:00
fix(test): hardcode PersonFeignClient url to local stub for test env, add Ribbon comp-org route
- PersonFeignClient: add url=http://127.0.0.1:33011 to bypass Ribbon/Consul discovery - application.properties: add ninca-common-component-organization.ribbon.listOfServers - Add stub-person-service.py for simulating component-organization person/detail Returns PersonResult with floorList and organizationIds for policy testing NOTE: PersonFeignClient url change is test-only, revert before production Former-commit-id: ff9a9ed68ec81fc2de68cc74cd22edcf38b510cb
This commit is contained in:
@@ -89,6 +89,8 @@ ninca-crk-std.ribbon.NIWSServerListClassName=com.netflix.loadbalancer.Configurat
|
|||||||
ninca-crk-std.ribbon.listOfServers=10.128.161.95:16106
|
ninca-crk-std.ribbon.listOfServers=10.128.161.95:16106
|
||||||
feign.davinci-portal.name=cwos-portal
|
feign.davinci-portal.name=cwos-portal
|
||||||
feign.component-organization.name=ninca-common-component-organization
|
feign.component-organization.name=ninca-common-component-organization
|
||||||
|
ninca-common-component-organization.ribbon.NIWSServerListClassName=com.netflix.loadbalancer.ConfigurationBasedServerList
|
||||||
|
ninca-common-component-organization.ribbon.listOfServers=127.0.0.1:33011
|
||||||
feign.ninca-common.name=ninca-common
|
feign.ninca-common.name=ninca-common
|
||||||
feign.mqtt.name=cloudwalk-device-thirdparty
|
feign.mqtt.name=cloudwalk-device-thirdparty
|
||||||
# CWOS\u4E8B\u4EF6\u914D\u7F6E
|
# CWOS\u4E8B\u4EF6\u914D\u7F6E
|
||||||
|
|||||||
+2
-1
@@ -16,7 +16,8 @@ import org.springframework.web.bind.annotation.RequestBody;
|
|||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
import org.springframework.web.bind.annotation.RequestMethod;
|
import org.springframework.web.bind.annotation.RequestMethod;
|
||||||
|
|
||||||
@FeignClient(name = "${feign.component-organization.name:ninca-common-component-organization}",
|
@FeignClient(name = "ninca-common-component-organization",
|
||||||
|
url = "http://127.0.0.1:33011",
|
||||||
path = "/component/person", fallback = PersonFeignClientFallback.class)
|
path = "/component/person", fallback = PersonFeignClientFallback.class)
|
||||||
public interface PersonFeignClient {
|
public interface PersonFeignClient {
|
||||||
@RequestMapping(value = {"/add"}, method = {RequestMethod.POST})
|
@RequestMapping(value = {"/add"}, method = {RequestMethod.POST})
|
||||||
|
|||||||
@@ -0,0 +1,41 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
"""Stub: PersonResult format — floorList is a top-level field in data"""
|
||||||
|
from http.server import HTTPServer, BaseHTTPRequestHandler
|
||||||
|
import json, sys
|
||||||
|
|
||||||
|
PERSON_DATA = {
|
||||||
|
"id": "1072908835884208128", "businessId": "2524639890ba4f2cba9ba1a4eeaa4015",
|
||||||
|
"personCode": "PC001", "name": "秦夏", "userName": "qinxia", "phone": "13666667067",
|
||||||
|
"organizationIds": ["488b8ad049bb43408a6fbcc50bcb89ac"],
|
||||||
|
"organizationNames": ["广发基金"],
|
||||||
|
"labelIds": [], "labelNames": [],
|
||||||
|
"floorList": ["605560541473144832", "605560541657694208", "605560542911791104"],
|
||||||
|
"defaultFloor": "605560541473144832",
|
||||||
|
"status": 0, "isDel": 0
|
||||||
|
}
|
||||||
|
|
||||||
|
class PersonStub(BaseHTTPRequestHandler):
|
||||||
|
def log_message(self, f, *a): print(f"[stub] {a}", file=sys.stderr)
|
||||||
|
|
||||||
|
def do_POST(self):
|
||||||
|
body_len = int(self.headers.get('Content-Length', 0))
|
||||||
|
body = json.loads(self.rfile.read(body_len)) if body_len > 0 else {}
|
||||||
|
if '/detail' in self.path:
|
||||||
|
resp = {"code": "00000000", "success": True, "message": "success", "data": PERSON_DATA}
|
||||||
|
else:
|
||||||
|
resp = {"code": "00000000", "success": True, "data": {"total": 0, "datas": []}}
|
||||||
|
self._json(resp)
|
||||||
|
|
||||||
|
def do_GET(self):
|
||||||
|
self._json({"status": "UP"})
|
||||||
|
|
||||||
|
def _json(self, data):
|
||||||
|
resp = json.dumps(data, ensure_ascii=False).encode()
|
||||||
|
self.send_response(200)
|
||||||
|
self.send_header('Content-Type', 'application/json;charset=utf-8')
|
||||||
|
self.send_header('Content-Length', str(len(resp)))
|
||||||
|
self.end_headers()
|
||||||
|
self.wfile.write(resp)
|
||||||
|
|
||||||
|
port = int(sys.argv[1]) if len(sys.argv) > 1 else 33011
|
||||||
|
HTTPServer(('127.0.0.1', port), PersonStub).serve_forever()
|
||||||
Reference in New Issue
Block a user