feat: 上线调整

This commit is contained in:
liulujian 2026-05-12 10:10:21 +08:00
parent 73db251acb
commit 02245366b2
8 changed files with 256 additions and 19 deletions

View File

@ -230,3 +230,11 @@ docker network inspect devops_txw-network
curl http://localhost:8848/nacos/v1/ns/operator/metrics curl http://localhost:8848/nacos/v1/ns/operator/metrics
docker exec txw-redis redis-cli -a redis_password ping docker exec txw-redis redis-cli -a redis_password ping
``` ```
## 参考指令
```
// 清理缓存
docker buildx prune
```

View File

@ -50,7 +50,187 @@ http {
default_type application/octet-stream; default_type application/octet-stream;
# ============================================= # =============================================
# Server # HTTP HTTPS 重定向
# =============================================
server {
listen 80;
server_name www.cciw.com.cn;
return 301 https://$host$request_uri;
}
# =============================================
# HTTPS Server
# =============================================
server {
listen 443 ssl;
server_name www.cciw.com.cn;
# SSL 证书
ssl_certificate /etc/nginx/ssl/www.cciw.com.cn.crt;
ssl_certificate_key /etc/nginx/ssl/www.cciw.com.cn.key;
# SSL 安全配置
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384;
ssl_prefer_server_ciphers off;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 1d;
ssl_session_tickets off;
# Gzip 压缩
gzip_min_length 1024;
gzip_types text/plain text/css application/json application/javascript
application/x-javascript text/xml application/xml
application/xml+rss text/javascript image/svg+xml;
if ($request_method = OPTIONS) {
return 403;
}
# 健康检查
location /healthcheck {
access_log off;
return 200 'OK';
add_header Content-Type text/plain;
}
# Ping 接口
location /ping {
return 200 "ok";
}
# API 代理(网关)
location ~ ^/(mhzc|gxzx|sso|yygl) {
include proxy-common.conf;
proxy_pass http://txw-gateway:9300;
}
location ~ ^/nacos(/.*)$ {
include proxy-common.conf;
proxy_pass http://txw-nacos:8080$1;
}
location ^~ /admin/ {
proxy_pass http://172.21.79.119:18777/;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $host;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_cache off;
proxy_connect_timeout 60s;
proxy_send_timeout 60s;
proxy_read_timeout 600s;
}
location ^~ /web/ {
proxy_pass http://172.21.79.119:18778/;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $host;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_cache off;
proxy_connect_timeout 60s;
proxy_send_timeout 60s;
proxy_read_timeout 600s;
}
location ^~ /h5/ {
proxy_pass http://172.21.79.119:18779/;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $host;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_cache off;
proxy_connect_timeout 60s;
proxy_send_timeout 60s;
proxy_read_timeout 600s;
}
# 百度验证
location = /baidu_verify_codeva-5rH3psCeMQ.html {
alias /etc/nginx/verify/baidu_verify_codeva-5rH3psCeMQ.html;
}
location = /baidu_verify_codeva-eE1giHswVL.html {
return 200 "2c7cc0bcf0ecd060ab8f7fe919acc078";
add_header Content-Type text/html;
}
# --------------------------------------------------------
# 运营支撑前端mhzc
# --------------------------------------------------------
location /view/mhzc {
return 301 /view/mhzc/;
}
location /view/mhzc/ {
alias /usr/share/nginx/html/txw-mhzc-web/;
location ~* \.(gif|jpg|jpeg|png|css|js|ico|eot|svg|ttf|woff|woff2)$ {
expires 90d;
add_header Cache-Control "public";
try_files $uri =404;
}
expires 1h;
add_header Cache-Control "public";
try_files $uri $uri/ /view/mhzc/index.html;
}
# --------------------------------------------------------
# 运营管理前端yygl
# --------------------------------------------------------
location /view/yygl {
return 301 /view/yygl/;
}
location /view/yygl/ {
alias /usr/share/nginx/html/txw-yygl-web/;
location ~* \.(gif|jpg|jpeg|png|css|js|ico|eot|svg|ttf|woff|woff2)$ {
expires 90d;
add_header Cache-Control "public";
try_files $uri =404;
}
expires 1h;
add_header Cache-Control "public";
try_files $uri $uri/ /view/yygl/index.html;
}
# --------------------------------------------------------
# 默认首页重定向
# --------------------------------------------------------
location / {
add_header Cache-Control "no-cache, no-store, must-revalidate";
add_header Pragma "no-cache";
add_header Expires 0;
return 301 /view/mhzc/;
}
error_page 404 /404.html;
location = /404.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
# =============================================
# Server 块(保留非 HTTPS 请求处理)
# ============================================= # =============================================
server { server {
listen 80 default_server; listen 80 default_server;

View File

@ -45,4 +45,10 @@
| 4 | 接口联调 | 调用接口实现碳数据上链、VC 签发/验证等功能 | | 4 | 接口联调 | 调用接口实现碳数据上链、VC 签发/验证等功能 |
| 5 | 上线验证 | 联调通过后,即可正式上线 | | 5 | 上线验证 | 联调通过后,即可正式上线 |
## 技术联系
> 联系人: 谢老师
> 联系电话: 15601721332
> 联系邮箱: pjsl_service@chainable.com.cn
--- ---

View File

@ -1,6 +1,6 @@
<template> <template>
<!-- 顶部菜单栏 --> <!-- 顶部菜单栏 -->
<div class="nav-box"> <div v-show="!isIframeEmbedded" class="nav-box">
<div class="logo-box" @click="goHome"> <div class="logo-box" @click="goHome">
<img src="@/pages/index/assets/logo-name.png"> <img src="@/pages/index/assets/logo-name.png">
</div> </div>
@ -103,6 +103,7 @@ export default {
curPage: "home", curPage: "home",
loginFlag: false, // loginFlag: false, //
mobileMenuOpen: false, // mobileMenuOpen: false, //
isIframeEmbedded: window.self !== window.top,
// //
routeToMenuMap: { routeToMenuMap: {
'/home': 'home', '/home': 'home',
@ -127,7 +128,7 @@ export default {
{ {
name: 'tzzx', name: 'tzzx',
title: '碳证中心', title: '碳证中心',
iframeUrl: 'https://ctn-web-pre.lingshu.net/carbon-index', iframeUrl: '/web/carbon-index',
path:'/carbon-index', path:'/carbon-index',
needLogin: true, needLogin: true,
clientId: 'client_id_tfwzx',//txw_sso_client clientId: 'client_id_tfwzx',//txw_sso_client
@ -140,9 +141,9 @@ export default {
divider: true, //线 divider: true, //线
needLogin: true, //访 needLogin: true, //访
clientId: 'client_id_tfwzx', clientId: 'client_id_tfwzx',
iframeUrl: 'https://ctn-web-pre.lingshu.net/trustedCarbonQuery/index', // iframeUrl: '/web/trustedCarbonQuery/index', //
path: '/trustedCarbonQuery/index', path: '/trustedCarbonQuery/index',
// iframeUrl: 'https://ctn-web-pre.lingshu.net/trustedCarbonQuery/list?type=carbon-query', // // iframeUrl: '/web/trustedCarbonQuery/list?type=carbon-query', //
}, },
{ {
name: 'tsjfcg', name: 'tsjfcg',
@ -152,7 +153,7 @@ export default {
divider: true, divider: true,
needLogin: true, needLogin: true,
clientId: 'client_id_tfwzx', clientId: 'client_id_tfwzx',
iframeUrl: 'https://ctn-web-pre.lingshu.net/carbon-protection', iframeUrl: '/web/carbon-protection',
path: '/carbon-protection' path: '/carbon-protection'
}, },
{ {
@ -163,7 +164,7 @@ export default {
divider: true, divider: true,
needLogin: true, needLogin: true,
clientId: 'client_id_tfwzx', clientId: 'client_id_tfwzx',
iframeUrl: 'https://ctn-web-pre.lingshu.net/carbon-verify', iframeUrl: '/web/carbon-verify',
path: '/carbon-verify' path: '/carbon-verify'
}, },
{ {
@ -174,7 +175,7 @@ export default {
divider: true, divider: true,
needLogin: true, needLogin: true,
clientId: 'client_id_tfwzx', clientId: 'client_id_tfwzx',
iframeUrl: 'https://ctn-web-pre.lingshu.net/carbon-report-cert', iframeUrl: '/web/carbon-report-cert',
path: '/carbon-report-cert' path: '/carbon-report-cert'
}, },
{ {
@ -185,7 +186,7 @@ export default {
divider: true, divider: true,
needLogin: true, needLogin: true,
clientId: 'client_id_tfwzx', clientId: 'client_id_tfwzx',
iframeUrl: 'https://ctn-web-pre.lingshu.net/carbon-report-hosting', iframeUrl: '/web/carbon-report-hosting',
path: '/carbon-report-hosting' path: '/carbon-report-hosting'
} }
] ]

View File

@ -138,7 +138,7 @@ export default {
id: 'xttz', id: 'xttz',
title: '系统通知', title: '系统通知',
icon: '', icon: '',
name: 'ggwhgl', name: 'xttz',
}, },
] ]
}, },
@ -154,7 +154,7 @@ export default {
title: '质证结果管理', title: '质证结果管理',
icon: 'user', icon: 'user',
name: 'zljggl', name: 'zljggl',
iframeUrl: "https://ctn-web-pre.lingshu.net/proof-result-mgt", iframeUrl: "/web/proof-result-mgt",
path: '/proof-result-mgt', path: '/proof-result-mgt',
query: 'type=carbon-certify', query: 'type=carbon-certify',
}, },
@ -163,21 +163,21 @@ export default {
title: '存证记录管理', title: '存证记录管理',
icon: 'user', icon: 'user',
name: 'cunzhengjilu', name: 'cunzhengjilu',
iframeUrl: "https://ctn-web-pre.lingshu.net/cert-record-mgt", iframeUrl: "/web/cert-record-mgt",
path: '/cert-record-mgt', path: '/cert-record-mgt',
}, { }, {
id: 'tgjlgl', id: 'tgjlgl',
title: '托管记录管理', title: '托管记录管理',
icon: 'user', icon: 'user',
name: 'tgjlgl', name: 'tgjlgl',
iframeUrl: "https://ctn-web-pre.lingshu.net/hosting-record-mgt", iframeUrl: "/web/hosting-record-mgt",
path: '/hosting-record-mgt', path: '/hosting-record-mgt',
}, { }, {
id: 'chazhengjilu', id: 'chazhengjilu',
title: '查证记录管理', title: '查证记录管理',
icon: 'user', icon: 'user',
name: 'chazhengjilu', name: 'chazhengjilu',
iframeUrl: "https://ctn-web-pre.lingshu.net/query-record-mgt", iframeUrl: "/web/query-record-mgt",
path: '/query-record-mgt', path: '/query-record-mgt',
}, },
] ]
@ -216,6 +216,12 @@ export default {
watch: { watch: {
'$route'() { '$route'() {
this.syncMenuWithRoute(); this.syncMenuWithRoute();
},
kxurl(newVal) {
if (newVal) {
this.updateIframeUrl(this.cdList);
this.syncMenuWithRoute();
}
} }
}, },
methods: { methods: {
@ -244,13 +250,33 @@ export default {
}, },
syncMenuWithRoute() { syncMenuWithRoute() {
const path = this.$route.path; const path = this.$route.path;
const query = this.$route.query;
let routeName = null;
// /yhzx/xxx
const match = path.match(/\/yhzx\/(\w+)/); const match = path.match(/\/yhzx\/(\w+)/);
if (match) { if (match) {
const routeName = match[1]; routeName = match[1];
}
// query ?activeCompo=xxx
else if (query && query.activeCompo) {
routeName = query.activeCompo;
}
if (routeName) {
for (const item of this.cdList) { for (const item of this.cdList) {
if (item.name === routeName) { if (item.name === routeName) {
this.activeMenuId = item.id; this.activeMenuId = item.id;
this.expanded = [item.id]; this.expanded = [item.id];
// kxurl iframeUrl
if (item.path && this.kxurl) {
this.iframeUrl = `${this.kxurl}${item.path}`;
if (item.query) {
this.iframeUrl += `?${item.query}`;
}
} else if (item.iframeUrl) {
this.iframeUrl = item.iframeUrl;
}
return; return;
} }
if (item.children) { if (item.children) {
@ -258,6 +284,15 @@ export default {
if (child) { if (child) {
this.activeMenuId = child.id; this.activeMenuId = child.id;
this.expanded = [item.id]; this.expanded = [item.id];
// kxurl iframeUrl
if (child.path && this.kxurl) {
this.iframeUrl = `${this.kxurl}${child.path}`;
if (child.query) {
this.iframeUrl += `?${child.query}`;
}
} else if (child.iframeUrl) {
this.iframeUrl = child.iframeUrl;
}
return; return;
} }
} }
@ -301,8 +336,15 @@ export default {
} }
} }
// this.curPage = menu.name; // path kxurl cdList iframeUrl
let iframeUrl = menu.iframeUrl; let iframeUrl = menu.iframeUrl;
if (menu.path && this.kxurl) {
iframeUrl = `${this.kxurl}${menu.path}`;
if (menu.query) {
iframeUrl += `?${menu.query}`;
}
}
if (iframeUrl) { if (iframeUrl) {
this.iframeUrl = iframeUrl; this.iframeUrl = iframeUrl;
} else { } else {

View File

@ -104,7 +104,7 @@ export default {
delVisible:false, delVisible:false,
form:{ form:{
sjhm:'', sjhm:'',
// sms:'' sms:'123456'
}, },
rules: { rules: {
sjhm: [{ required: true, message: '手机号码必填', type: 'error' }], sjhm: [{ required: true, message: '手机号码必填', type: 'error' }],

View File

@ -169,7 +169,7 @@ public class TxwMhzcQyxxbServiceImpl extends ServiceImpl<TxwMhzcQyxxbMapper, Txw
qyxxbDO.setQyuuid(IdUtil.fastSimpleUUID()); qyxxbDO.setQyuuid(IdUtil.fastSimpleUUID());
qyxxbDO.setQymc(qyxx.getQymc()); qyxxbDO.setQymc(qyxx.getQymc());
qyxxbDO.setNsrsbh(qyxx.getNsrsbh()); qyxxbDO.setNsrsbh(qyxx.getNsrsbh());
qyxxbDO.setGxdtrzbz("N"); qyxxbDO.setGxdtrzbz("Y");
qyxxbDO.setYwqdDm("did"); qyxxbDO.setYwqdDm("did");
qyxxbDO.setYxbz("Y"); qyxxbDO.setYxbz("Y");
qyxxbDO.setLrrq(new Date()); qyxxbDO.setLrrq(new Date());

View File

@ -13,7 +13,7 @@ public class DidBindPhoneReqVO {
* 验证码 * 验证码
*/ */
@Schema(description = "验证码") @Schema(description = "验证码")
@NotEmpty(message = "验证码不能为空") // @NotEmpty(message = "验证码不能为空")
private String sms; private String sms;
/** /**