feat: 上线调整
This commit is contained in:
parent
73db251acb
commit
02245366b2
@ -230,3 +230,11 @@ docker network inspect devops_txw-network
|
||||
curl http://localhost:8848/nacos/v1/ns/operator/metrics
|
||||
docker exec txw-redis redis-cli -a redis_password ping
|
||||
```
|
||||
|
||||
|
||||
## 参考指令
|
||||
|
||||
```
|
||||
// 清理缓存
|
||||
docker buildx prune
|
||||
```
|
||||
@ -50,7 +50,187 @@ http {
|
||||
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 {
|
||||
listen 80 default_server;
|
||||
|
||||
@ -45,4 +45,10 @@
|
||||
| 4 | 接口联调 | 调用接口实现碳数据上链、VC 签发/验证等功能 |
|
||||
| 5 | 上线验证 | 联调通过后,即可正式上线 |
|
||||
|
||||
|
||||
## 技术联系
|
||||
|
||||
> 联系人: 谢老师
|
||||
> 联系电话: 15601721332
|
||||
> 联系邮箱: pjsl_service@chainable.com.cn
|
||||
---
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<!-- 顶部菜单栏 -->
|
||||
<div class="nav-box">
|
||||
<div v-show="!isIframeEmbedded" class="nav-box">
|
||||
<div class="logo-box" @click="goHome">
|
||||
<img src="@/pages/index/assets/logo-name.png">
|
||||
</div>
|
||||
@ -103,6 +103,7 @@ export default {
|
||||
curPage: "home",
|
||||
loginFlag: false, //是否已完成登录
|
||||
mobileMenuOpen: false, //移动端菜单是否展开
|
||||
isIframeEmbedded: window.self !== window.top,
|
||||
// 路由路径到菜单名的映射
|
||||
routeToMenuMap: {
|
||||
'/home': 'home',
|
||||
@ -127,7 +128,7 @@ export default {
|
||||
{
|
||||
name: 'tzzx',
|
||||
title: '碳证中心',
|
||||
iframeUrl: 'https://ctn-web-pre.lingshu.net/carbon-index',
|
||||
iframeUrl: '/web/carbon-index',
|
||||
path:'/carbon-index',
|
||||
needLogin: true,
|
||||
clientId: 'client_id_tfwzx',//单点登录接入子系统的标识,由txw_sso_client表配置
|
||||
@ -140,9 +141,9 @@ export default {
|
||||
divider: true, //是否显示子菜单分割线
|
||||
needLogin: true, //是否需要登录才能访问
|
||||
clientId: 'client_id_tfwzx',
|
||||
iframeUrl: 'https://ctn-web-pre.lingshu.net/trustedCarbonQuery/index', //外部系统链接地址
|
||||
iframeUrl: '/web/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',
|
||||
@ -152,7 +153,7 @@ export default {
|
||||
divider: true,
|
||||
needLogin: true,
|
||||
clientId: 'client_id_tfwzx',
|
||||
iframeUrl: 'https://ctn-web-pre.lingshu.net/carbon-protection',
|
||||
iframeUrl: '/web/carbon-protection',
|
||||
path: '/carbon-protection'
|
||||
},
|
||||
{
|
||||
@ -163,7 +164,7 @@ export default {
|
||||
divider: true,
|
||||
needLogin: true,
|
||||
clientId: 'client_id_tfwzx',
|
||||
iframeUrl: 'https://ctn-web-pre.lingshu.net/carbon-verify',
|
||||
iframeUrl: '/web/carbon-verify',
|
||||
path: '/carbon-verify'
|
||||
},
|
||||
{
|
||||
@ -174,7 +175,7 @@ export default {
|
||||
divider: true,
|
||||
needLogin: true,
|
||||
clientId: 'client_id_tfwzx',
|
||||
iframeUrl: 'https://ctn-web-pre.lingshu.net/carbon-report-cert',
|
||||
iframeUrl: '/web/carbon-report-cert',
|
||||
path: '/carbon-report-cert'
|
||||
},
|
||||
{
|
||||
@ -185,7 +186,7 @@ export default {
|
||||
divider: true,
|
||||
needLogin: true,
|
||||
clientId: 'client_id_tfwzx',
|
||||
iframeUrl: 'https://ctn-web-pre.lingshu.net/carbon-report-hosting',
|
||||
iframeUrl: '/web/carbon-report-hosting',
|
||||
path: '/carbon-report-hosting'
|
||||
}
|
||||
]
|
||||
|
||||
@ -138,7 +138,7 @@ export default {
|
||||
id: 'xttz',
|
||||
title: '系统通知',
|
||||
icon: '',
|
||||
name: 'ggwhgl',
|
||||
name: 'xttz',
|
||||
},
|
||||
]
|
||||
},
|
||||
@ -154,7 +154,7 @@ export default {
|
||||
title: '质证结果管理',
|
||||
icon: 'user',
|
||||
name: 'zljggl',
|
||||
iframeUrl: "https://ctn-web-pre.lingshu.net/proof-result-mgt",
|
||||
iframeUrl: "/web/proof-result-mgt",
|
||||
path: '/proof-result-mgt',
|
||||
query: 'type=carbon-certify',
|
||||
},
|
||||
@ -163,21 +163,21 @@ export default {
|
||||
title: '存证记录管理',
|
||||
icon: 'user',
|
||||
name: 'cunzhengjilu',
|
||||
iframeUrl: "https://ctn-web-pre.lingshu.net/cert-record-mgt",
|
||||
iframeUrl: "/web/cert-record-mgt",
|
||||
path: '/cert-record-mgt',
|
||||
}, {
|
||||
id: 'tgjlgl',
|
||||
title: '托管记录管理',
|
||||
icon: 'user',
|
||||
name: 'tgjlgl',
|
||||
iframeUrl: "https://ctn-web-pre.lingshu.net/hosting-record-mgt",
|
||||
iframeUrl: "/web/hosting-record-mgt",
|
||||
path: '/hosting-record-mgt',
|
||||
}, {
|
||||
id: 'chazhengjilu',
|
||||
title: '查证记录管理',
|
||||
icon: 'user',
|
||||
name: 'chazhengjilu',
|
||||
iframeUrl: "https://ctn-web-pre.lingshu.net/query-record-mgt",
|
||||
iframeUrl: "/web/query-record-mgt",
|
||||
path: '/query-record-mgt',
|
||||
},
|
||||
]
|
||||
@ -216,6 +216,12 @@ export default {
|
||||
watch: {
|
||||
'$route'() {
|
||||
this.syncMenuWithRoute();
|
||||
},
|
||||
kxurl(newVal) {
|
||||
if (newVal) {
|
||||
this.updateIframeUrl(this.cdList);
|
||||
this.syncMenuWithRoute();
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
@ -244,13 +250,33 @@ export default {
|
||||
},
|
||||
syncMenuWithRoute() {
|
||||
const path = this.$route.path;
|
||||
const query = this.$route.query;
|
||||
let routeName = null;
|
||||
|
||||
// 优先从路径提取:/yhzx/xxx
|
||||
const match = path.match(/\/yhzx\/(\w+)/);
|
||||
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) {
|
||||
if (item.name === routeName) {
|
||||
this.activeMenuId = 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;
|
||||
}
|
||||
if (item.children) {
|
||||
@ -258,6 +284,15 @@ export default {
|
||||
if (child) {
|
||||
this.activeMenuId = child.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;
|
||||
}
|
||||
}
|
||||
@ -301,8 +336,15 @@ export default {
|
||||
}
|
||||
}
|
||||
|
||||
// this.curPage = menu.name;
|
||||
// 如果有 path 且 kxurl 已返回,则动态拼接;否则用 cdList 中已有的 iframeUrl
|
||||
let iframeUrl = menu.iframeUrl;
|
||||
if (menu.path && this.kxurl) {
|
||||
iframeUrl = `${this.kxurl}${menu.path}`;
|
||||
if (menu.query) {
|
||||
iframeUrl += `?${menu.query}`;
|
||||
}
|
||||
}
|
||||
|
||||
if (iframeUrl) {
|
||||
this.iframeUrl = iframeUrl;
|
||||
} else {
|
||||
|
||||
@ -104,7 +104,7 @@ export default {
|
||||
delVisible:false,
|
||||
form:{
|
||||
sjhm:'',
|
||||
// sms:''
|
||||
sms:'123456'
|
||||
},
|
||||
rules: {
|
||||
sjhm: [{ required: true, message: '手机号码必填', type: 'error' }],
|
||||
|
||||
@ -169,7 +169,7 @@ public class TxwMhzcQyxxbServiceImpl extends ServiceImpl<TxwMhzcQyxxbMapper, Txw
|
||||
qyxxbDO.setQyuuid(IdUtil.fastSimpleUUID());
|
||||
qyxxbDO.setQymc(qyxx.getQymc());
|
||||
qyxxbDO.setNsrsbh(qyxx.getNsrsbh());
|
||||
qyxxbDO.setGxdtrzbz("N");
|
||||
qyxxbDO.setGxdtrzbz("Y");
|
||||
qyxxbDO.setYwqdDm("did");
|
||||
qyxxbDO.setYxbz("Y");
|
||||
qyxxbDO.setLrrq(new Date());
|
||||
|
||||
@ -13,7 +13,7 @@ public class DidBindPhoneReqVO {
|
||||
* 验证码
|
||||
*/
|
||||
@Schema(description = "验证码")
|
||||
@NotEmpty(message = "验证码不能为空")
|
||||
// @NotEmpty(message = "验证码不能为空")
|
||||
private String sms;
|
||||
|
||||
/**
|
||||
|
||||
Loading…
Reference in New Issue
Block a user