| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111 |
- # Test key endpoints through the proxy after vue.config.js fix
- $body = '{"tenantCode":"T202605253515","username":"admin","password":"admin123"}'
- $loginResp = Invoke-WebRequest -Uri 'http://localhost:80/prod-api/login' -Method Post -ContentType 'application/json' -Body $body -UseBasicParsing
- $token = ($loginResp.Content | ConvertFrom-Json).token
- Write-Host "Login OK, token length: $($token.Length)"
- # Test key proxy rewrite rules
- $tests = @(
- # /store/store/* → /store/*
- @{name='store/store→store'; path='/store/store/list'},
- @{name='store/storeOrder→store'; path='/store/storeOrder/list'},
- @{name='store/storeProduct→store'; path='/store/storeProduct/list'},
- # /store/his/* → /his/*
- @{name='store/his→his'; path='/store/his/doctor/list'},
- # /store/doctor/* → /his/doctor/*
- @{name='store/doctor→his/doctor'; path='/store/doctor/list'},
- # /store/healthTongue → /his/healthTongue
- @{name='store/healthTongue→his'; path='/store/healthTongue/list'},
- # /store/inquiryOrder → /his/inquiryOrder
- @{name='store/inquiryOrder→his'; path='/store/inquiryOrder/list'},
- # /his/fsPatient → /store/patient
- @{name='his/fsPatient→store/patient'; path='/his/fsPatient/list'},
- @{name='his/fsUser→store/user'; path='/his/fsUser/list'},
- @{name='his/fsMaterial→store/material'; path='/his/fsMaterial/list'},
- @{name='his/fsCoupon→store/coupon'; path='/his/fsCoupon/list'},
- @{name='his/fsDrugReport→store/drugReport'; path='/his/fsDrugReport/list'},
- @{name='his/fsStoreOrderOffline→hisStore'; path='/his/fsStoreOrderOffline/list'},
- @{name='his/fsStoreOrderAudit→hisStore'; path='/his/fsStoreOrderAudit/list'},
- @{name='his/fsStoreStatistics→hisStore'; path='/his/fsStoreStatistics/list'},
- @{name='his/fsCollection→store/collection'; path='/his/fsCollection/list'},
- @{name='his/fsFirstDiagnosis→his/diagnosis'; path='/his/fsFirstDiagnosis/list'},
- # hisStore/collection → store/collection
- @{name='hisStore/collection→store'; path='/hisStore/collection/list'},
- # /his_store/* → /hisStore/*
- @{name='his_store→hisStore'; path='/his_store/store_instant_discount/list'},
- # /wx/wxSop → /qwSop/sopUserLogs
- @{name='wx/wxSop→qwSop'; path='/wx/wxSop/list'},
- @{name='wx/wxSopUser→qwSop'; path='/wx/wxSopUser/list'},
- # /wxSop/sopUserLogsWx → /qwSop/sopUserLogs
- @{name='wxSop/sopUserLogsWx→qwSop'; path='/wxSop/sopUserLogsWx/list'},
- # /fast_gpt/* → /fastGpt/*
- @{name='fast_gpt→fastGpt'; path='/fast_gpt/read_package/list'},
- # /admin/medical → fs-admin(8003)
- @{name='admin/medical→admin'; path='/admin/medical/list'},
- # /company/company → /company
- @{name='company/company→company'; path='/company/company/list'},
- # /company/companyTag → /companyTag
- @{name='company/companyTag→companyTag'; path='/company/companyTag/list'},
- # /company/companyUser → /companyUser
- @{name='company/companyUser→companyUser'; path='/company/companyUser/list'},
- # /company/companyVoice → /companyVoice
- @{name='company/companyVoice→companyVoice'; path='/company/companyVoice/list'},
- # /company/easyCall → /easyCall
- @{name='company/easyCall→easyCall'; path='/company/easyCall/gateway/list'},
- # /sop/companySopRole → /companySopRole
- @{name='sop/companySopRole→companySopRole'; path='/sop/companySopRole/list'},
- # Direct paths that should work
- @{name='his:healthTongue'; path='/his/healthTongue/list'},
- @{name='his:healthRecord'; path='/his/healthRecord/list'},
- @{name='his:drugReport'; path='/his/drugReport/list'},
- @{name='his:exportTask'; path='/his/exportTask/list'},
- @{name='his:inquiryOrder'; path='/his/inquiryOrder/list'},
- @{name='his:doctor'; path='/his/doctor/list'},
- @{name='his:prescription'; path='/his/prescription/list'},
- @{name='course:courseDomainName'; path='/course/courseDomainName/list'},
- @{name='course:courseQuestionBank'; path='/course/courseQuestionBank/list'},
- @{name='billing:wallet'; path='/billing/wallet/list'},
- @{name='billing:bill'; path='/billing/bill/list'},
- @{name='transfer:fsTransfer'; path='/transfer/fsTransfer/list'},
- @{name='chat:chatMsg'; path='/chat/chatMsg/list'},
- @{name='qw:tag'; path='/qw/tag/list'},
- @{name='qw:sop'; path='/qw/sop/list'},
- @{name='qw:material'; path='/qw/material/list'},
- @{name='qw:user'; path='/qw/user/list'},
- @{name='crm:customer'; path='/crm/customer/list'},
- @{name='index:statistics'; path='/index/statistics/rechargeComsumption'},
- # system → fs-admin
- @{name='system:user→admin'; path='/system/user/list'},
- @{name='system:role→admin'; path='/system/role/list'},
- @{name='system:menu→admin'; path='/system/menu/list'}
- )
- $ok = 0; $fail = 0; $err = 0
- foreach ($t in $tests) {
- $url = "http://localhost:80/prod-api$($t.path)"
- try {
- $r = Invoke-WebRequest -Uri $url -Method Get -Headers @{Authorization="Bearer $token"} -UseBasicParsing -TimeoutSec 10 -ErrorAction Stop
- $content = $r.Content | ConvertFrom-Json
- if ($content.code -eq 200) {
- Write-Host "OK $($t.name)"
- $ok++
- } elseif ($content.code -eq 500) {
- $msg = $content.msg
- if ($msg.Length -gt 60) { $msg = $msg.Substring(0,60) }
- Write-Host "ERR $($t.name) => code=500 msg=$msg"
- $err++
- } else {
- $msg = $content.msg
- if ($msg -and $msg.Length -gt 60) { $msg = $msg.Substring(0,60) }
- Write-Host "WRN $($t.name) => code=$($content.code) msg=$msg"
- $fail++
- }
- } catch {
- $statusCode = 0
- if ($_.Exception.Response) { $statusCode = [int]$_.Exception.Response.StatusCode }
- Write-Host "$statusCode $($t.name) => ERROR"
- $fail++
- }
- }
- Write-Host "`n=== SUMMARY: OK=$ok, ERR(500)=$err, FAIL=$fail ==="
|