实流检定,脱离登录。

This commit is contained in:
jiang 2025-06-09 08:23:21 +08:00
parent d5a8ed1d31
commit 25cbc74830
8 changed files with 233 additions and 50 deletions

View File

@ -76,6 +76,7 @@
"@dcloudio/uni-mp-weixin": "3.0.0-4030620241128001",
"@dcloudio/uni-mp-xhs": "3.0.0-4030620241128001",
"@dcloudio/uni-quickapp-webview": "3.0.0-4030620241128001",
"@tanstack/match-sorter-utils": "^8.19.4",
"@tanstack/query-core": "^5.76.0",
"@tanstack/vue-query": "^5.62.16",
"@vant/area-data": "^2.0.0",
@ -127,9 +128,13 @@
"@uni-helper/vite-plugin-uni-pages": "0.2.20",
"@uni-helper/vite-plugin-uni-platform": "^0.0.4",
"@unocss/preset-legacy-compat": "^0.59.4",
"@vue/devtools-api": "^7.7.6",
"@vue/devtools-kit": "^7.7.6",
"@vue/devtools-shared": "^7.7.6",
"@vue/runtime-core": "^3.4.21",
"@vue/tsconfig": "^0.1.3",
"autoprefixer": "^10.4.20",
"birpc": "^2.3.0",
"commitlint": "^18.6.1",
"czg": "^1.9.4",
"eslint": "^8.57.1",
@ -139,8 +144,10 @@
"eslint-plugin-import": "^2.31.0",
"eslint-plugin-prettier": "^5.2.1",
"eslint-plugin-vue": "^9.32.0",
"hookable": "^5.5.3",
"mockjs": "^1.1.0",
"openapi-ts-request": "^1.1.2",
"perfect-debounce": "^1.0.0",
"postcss": "^8.4.49",
"postcss-html": "^1.7.0",
"postcss-scss": "^4.0.9",

View File

@ -56,6 +56,9 @@ importers:
'@dcloudio/uni-quickapp-webview':
specifier: 3.0.0-4030620241128001
version: 3.0.0-4030620241128001(@vueuse/core@11.3.0(vue@3.4.21(typescript@5.7.2)))(postcss@8.4.49)(rollup@4.28.0)(vue@3.4.21(typescript@5.7.2))
'@tanstack/match-sorter-utils':
specifier: ^8.19.4
version: 8.19.4
'@tanstack/query-core':
specifier: ^5.76.0
version: 5.76.0
@ -204,6 +207,15 @@ importers:
'@unocss/preset-legacy-compat':
specifier: ^0.59.4
version: 0.59.4
'@vue/devtools-api':
specifier: ^7.7.6
version: 7.7.6
'@vue/devtools-kit':
specifier: ^7.7.6
version: 7.7.6
'@vue/devtools-shared':
specifier: ^7.7.6
version: 7.7.6
'@vue/runtime-core':
specifier: ^3.4.21
version: 3.5.13
@ -213,6 +225,9 @@ importers:
autoprefixer:
specifier: ^10.4.20
version: 10.4.20(postcss@8.4.49)
birpc:
specifier: ^2.3.0
version: 2.3.0
commitlint:
specifier: ^18.6.1
version: 18.6.1(@types/node@20.17.9)(typescript@5.7.2)
@ -240,12 +255,18 @@ importers:
eslint-plugin-vue:
specifier: ^9.32.0
version: 9.32.0(eslint@8.57.1)
hookable:
specifier: ^5.5.3
version: 5.5.3
mockjs:
specifier: ^1.1.0
version: 1.1.0
openapi-ts-request:
specifier: ^1.1.2
version: 1.1.2(@types/node@20.17.9)(@vue/compiler-sfc@3.5.13)(chokidar@3.6.0)(typescript@5.7.2)
perfect-debounce:
specifier: ^1.0.0
version: 1.0.0
postcss:
specifier: ^8.4.49
version: 8.4.49
@ -1213,14 +1234,12 @@ packages:
engines: {node: '>=10'}
cpu: [x64]
os: [linux]
libc: [gnu]
'@dcloudio/uts-linux-x64-musl@3.0.0-4030620241128001':
resolution: {integrity: sha512-HbuOIYCe0KTzW42oqACQDmSuLWmiEG9zUE3rGpp5QP3MKpcB4wJ5BAOusCt3V02akyVv4/IGToktN8dc9N7+Eg==}
engines: {node: '>=10'}
cpu: [x64]
os: [linux]
libc: [musl]
'@dcloudio/uts-win32-ia32-msvc@3.0.0-4030620241128001':
resolution: {integrity: sha512-pgITm85ya64iJ19mixTUOiYVAyCJQ+V66L5Ue/cmME6CA2dU9DjTtPEP6DdSnoyq9JWcdbQLyVEQkxxtBSOyGA==}
@ -1321,6 +1340,7 @@ packages:
'@esbuild/darwin-arm64@0.20.2':
resolution: {integrity: sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==}
engines: {node: '>=12'}
cpu: [arm64]
os: [darwin]
'@esbuild/darwin-arm64@0.21.5':
@ -1332,6 +1352,7 @@ packages:
'@esbuild/darwin-x64@0.20.2':
resolution: {integrity: sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==}
engines: {node: '>=12'}
cpu: [x64]
os: [darwin]
'@esbuild/darwin-x64@0.21.5':
@ -1928,6 +1949,7 @@ packages:
'@rollup/rollup-darwin-x64@4.28.0':
resolution: {integrity: sha512-8hxgfReVs7k9Js1uAIhS6zq3I+wKQETInnWQtgzt8JfGx51R1N6DRVy3F4o0lQwumbErRz52YqwjfvuwRxGv1w==}
cpu: [x64]
os: [darwin]
'@rollup/rollup-freebsd-arm64@4.28.0':
@ -1944,55 +1966,46 @@ packages:
resolution: {integrity: sha512-WXveUPKtfqtaNvpf0iOb0M6xC64GzUX/OowbqfiCSXTdi/jLlOmH0Ba94/OkiY2yTGTwteo4/dsHRfh5bDCZ+w==}
cpu: [arm]
os: [linux]
libc: [glibc]
'@rollup/rollup-linux-arm-musleabihf@4.28.0':
resolution: {integrity: sha512-yLc3O2NtOQR67lI79zsSc7lk31xjwcaocvdD1twL64PK1yNaIqCeWI9L5B4MFPAVGEVjH5k1oWSGuYX1Wutxpg==}
cpu: [arm]
os: [linux]
libc: [musl]
'@rollup/rollup-linux-arm64-gnu@4.28.0':
resolution: {integrity: sha512-+P9G9hjEpHucHRXqesY+3X9hD2wh0iNnJXX/QhS/J5vTdG6VhNYMxJ2rJkQOxRUd17u5mbMLHM7yWGZdAASfcg==}
cpu: [arm64]
os: [linux]
libc: [glibc]
'@rollup/rollup-linux-arm64-musl@4.28.0':
resolution: {integrity: sha512-1xsm2rCKSTpKzi5/ypT5wfc+4bOGa/9yI/eaOLW0oMs7qpC542APWhl4A37AENGZ6St6GBMWhCCMM6tXgTIplw==}
cpu: [arm64]
os: [linux]
libc: [musl]
'@rollup/rollup-linux-powerpc64le-gnu@4.28.0':
resolution: {integrity: sha512-zgWxMq8neVQeXL+ouSf6S7DoNeo6EPgi1eeqHXVKQxqPy1B2NvTbaOUWPn/7CfMKL7xvhV0/+fq/Z/J69g1WAQ==}
cpu: [ppc64]
os: [linux]
libc: [glibc]
'@rollup/rollup-linux-riscv64-gnu@4.28.0':
resolution: {integrity: sha512-VEdVYacLniRxbRJLNtzwGt5vwS0ycYshofI7cWAfj7Vg5asqj+pt+Q6x4n+AONSZW/kVm+5nklde0qs2EUwU2g==}
cpu: [riscv64]
os: [linux]
libc: [glibc]
'@rollup/rollup-linux-s390x-gnu@4.28.0':
resolution: {integrity: sha512-LQlP5t2hcDJh8HV8RELD9/xlYtEzJkm/aWGsauvdO2ulfl3QYRjqrKW+mGAIWP5kdNCBheqqqYIGElSRCaXfpw==}
cpu: [s390x]
os: [linux]
libc: [glibc]
'@rollup/rollup-linux-x64-gnu@4.28.0':
resolution: {integrity: sha512-Nl4KIzteVEKE9BdAvYoTkW19pa7LR/RBrT6F1dJCV/3pbjwDcaOq+edkP0LXuJ9kflW/xOK414X78r+K84+msw==}
cpu: [x64]
os: [linux]
libc: [glibc]
'@rollup/rollup-linux-x64-musl@4.28.0':
resolution: {integrity: sha512-eKpJr4vBDOi4goT75MvW+0dXcNUqisK4jvibY9vDdlgLx+yekxSm55StsHbxUsRxSTt3JEQvlr3cGDkzcSP8bw==}
cpu: [x64]
os: [linux]
libc: [musl]
'@rollup/rollup-win32-arm64-msvc@4.28.0':
resolution: {integrity: sha512-Vi+WR62xWGsE/Oj+mD0FNAPY2MEox3cfyG0zLpotZdehPFXwz6lypkGs5y38Jd/NVSbOD02aVad6q6QYF7i8Bg==}
@ -2529,14 +2542,14 @@ packages:
'@vue/devtools-api@6.6.4':
resolution: {integrity: sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==}
'@vue/devtools-api@7.7.0':
resolution: {integrity: sha512-bHEv6kT85BHtyGgDhE07bAUMAy7zpv6nnR004nSTd0wWMrAOtcrYoXO5iyr20Hkf5jR8obQOfS3byW+I3l2CCA==}
'@vue/devtools-api@7.7.6':
resolution: {integrity: sha512-b2Xx0KvXZObePpXPYHvBRRJLDQn5nhKjXh7vUhMEtWxz1AYNFOVIsh5+HLP8xDGL7sy+Q7hXeUxPHB/KgbtsPw==}
'@vue/devtools-kit@7.7.0':
resolution: {integrity: sha512-5cvZ+6SA88zKC8XiuxUfqpdTwVjJbvYnQZY5NReh7qlSGPvVDjjzyEtW+gdzLXNSd8tStgOjAdMCpvDQamUXtA==}
'@vue/devtools-kit@7.7.6':
resolution: {integrity: sha512-geu7ds7tem2Y7Wz+WgbnbZ6T5eadOvozHZ23Atk/8tksHMFOFylKi1xgGlQlVn0wlkEf4hu+vd5ctj1G4kFtwA==}
'@vue/devtools-shared@7.7.0':
resolution: {integrity: sha512-jtlQY26R5thQxW9YQTpXbI0HoK0Wf9Rd4ekidOkRvSy7ChfK0kIU6vvcBtjj87/EcpeOSK49fZAicaFNJcoTcQ==}
'@vue/devtools-shared@7.7.6':
resolution: {integrity: sha512-yFEgJZ/WblEsojQQceuyK6FzpFDx4kqrz2ohInxNj5/DnhoX023upTv4OD6lNPLAA5LLkbwPVb10o/7b+Y4FVA==}
'@vue/language-core@1.8.27':
resolution: {integrity: sha512-L8Kc27VdQserNaCUNiSFdDl9LWT24ly8Hpwf1ECy3aFb9m6bDhBGQYOujDm21N7EW3moKIOKEanQwe1q5BK+mA==}
@ -2876,8 +2889,8 @@ packages:
bing-translate-api@4.0.2:
resolution: {integrity: sha512-JJ8XUehnxzOhHU91oy86xEtp8OOMjVEjCZJX042fKxoO19NNvxJ5omeCcxQNFoPbDqVpBJwqiGVquL0oPdQm1Q==}
birpc@0.2.19:
resolution: {integrity: sha512-5WeXXAvTmitV1RqJFppT5QtUiz2p1mRSYU000Jkft5ZUCLJIk4uQriYNO50HknxKwM6jd8utNc66K1qGIwwWBQ==}
birpc@2.3.0:
resolution: {integrity: sha512-ijbtkn/F3Pvzb6jHypHRyve2QApOCZDR25D/VnkY2G/lBNcXCTsnsCxgY4k4PkVB7zfwzYbY3O9Lcqe3xufS5g==}
bmp-js@0.1.0:
resolution: {integrity: sha512-vHdS19CnY3hwiNdkaqk93DvjVLfbEcI8mys4UjuWrlX1haDmroo8o4xCzh4wD6DGV6HxRCyauwhHRqMTfERtjw==}
@ -10171,21 +10184,21 @@ snapshots:
'@vue/devtools-api@6.6.4': {}
'@vue/devtools-api@7.7.0':
'@vue/devtools-api@7.7.6':
dependencies:
'@vue/devtools-kit': 7.7.0
'@vue/devtools-kit': 7.7.6
'@vue/devtools-kit@7.7.0':
'@vue/devtools-kit@7.7.6':
dependencies:
'@vue/devtools-shared': 7.7.0
birpc: 0.2.19
'@vue/devtools-shared': 7.7.6
birpc: 2.3.0
hookable: 5.5.3
mitt: 3.0.1
perfect-debounce: 1.0.0
speakingurl: 14.0.1
superjson: 2.2.2
'@vue/devtools-shared@7.7.0':
'@vue/devtools-shared@7.7.6':
dependencies:
rfdc: 1.4.1
@ -10602,7 +10615,7 @@ snapshots:
dependencies:
got: 11.8.6
birpc@0.2.19: {}
birpc@2.3.0: {}
bmp-js@0.1.0: {}
@ -14973,7 +14986,7 @@ snapshots:
'@shikijs/types': 1.27.0
'@types/markdown-it': 14.1.2
'@vitejs/plugin-vue': 5.2.1(vite@5.4.11(@types/node@20.17.9)(sass@1.77.6)(terser@5.36.0))(vue@3.5.13(typescript@5.7.2))
'@vue/devtools-api': 7.7.0
'@vue/devtools-api': 7.7.6
'@vue/shared': 3.5.13
'@vueuse/core': 11.3.0(vue@3.5.13(typescript@5.7.2))
'@vueuse/integrations': 11.3.0(axios@1.7.9)(focus-trap@7.6.4)(vue@3.5.13(typescript@5.7.2))

View File

@ -13,30 +13,49 @@
getLocation()
},
onShow: function (options) {
if (uni.getStorageSync('logintime') && uni.getStorageSync('logintime') + 1800000 <= Date.now()) { //
uni.removeStorageSync('logintime')
uni.navigateTo({
url: '/pages/login/login'
})
return
//
//
//jiang 20250605
//
const publicPages = [
'/pages/sljd/index'
]
//
const isPublicPage = publicPages.includes(`/${options.path}`)
//
if (!isPublicPage) {
if (uni.getStorageSync('logintime') && uni.getStorageSync('logintime') + 1800000 <= Date.now()) {
uni.removeStorageSync('logintime')
uni.navigateTo({
url: '/pages/login/login'
})
return
}
}
//
//
setTimeout(() => {
const currentPage = options.path
beforEach({ path: '/' }, { path: currentPage, fullPath: currentPage }, (data) => {
if (data?.path) {
uni.redirectTo({ url: data.path })
}
})
if (!isPublicPage) {
beforEach({ path: '/' }, { path: currentPage, fullPath: currentPage }, (data) => {
if (data?.path) {
uni.redirectTo({ url: data.path })
}
})
}
}, 100)
jurisdictionApi("1827997127165677570").then((res : any) => {
// 0 1
if (res.success) {
const appStore = useAppStore()
appStore.setIsGray(res.result.value) //
}
})
//
if (!isPublicPage) {
jurisdictionApi("1827997127165677570").then((res : any) => {
if (res.success) {
const appStore = useAppStore()
appStore.setIsGray(res.result.value)
}
})
}
},
//

View File

@ -148,6 +148,15 @@
"navigationBarTitleText": "生产数据"
}
},
{
"path": "pages/sljd/index",
"type": "page",
"layout": "default",
"style": {
"navigationStyle": "custom",
"navigationBarTitleText": "实流检定"
}
},
{
"path": "pages/user/people",
"type": "page",

View File

@ -16,9 +16,6 @@
import {
onLoad
} from '@dcloudio/uni-app';
import {
getEnvBaseUrl
} from '@/utils/index'
import {
Base64
} from 'js-base64'

137
src/pages/sljd/index.vue Normal file
View File

@ -0,0 +1,137 @@
<route lang="json5" type="page">
{
layout: 'default',
style: {
navigationStyle: 'custom',
navigationBarTitleText: '实流检定',
},
}
</route>
<template>
<view class="cert-status">
<view class="placeholder">
<view style="width: 100%; display: grid; place-items: center">
<uni-title :title=" '天然气产销厂天然气计量化验中心'" type="h1" color="white" />
<uni-title :title=" '证书防伪查询系统'" type="h1" color="red" />
<!-- 添加证书状态显示区域 -->
<view>
<span class="status-tag" :class="status === '有效' ? 'valid' : 'invalid'">{{ status }}</span>
<span>| {{ queryCount }}次查询</span>
<span>| 查询时间{{ queryTime }}</span>
</view>
</view>
</view>
<view navTitle="在线预览">
<iframe id="bdIframe" :src="fileUrl" ref="bdIframe" style="border: none;" class="iframe" />
</view>
</view>
</template>
<script setup>
import {
onLoad
} from '@dcloudio/uni-app';
import {
Base64
} from 'js-base64'
import {
ref,
watch
} from 'vue'
//
const status = ref('');
const queryCount = ref(0);
const queryTime = ref('');
var fileUrl = ref("");
const baseUrl = 'https://10.75.166.6/jeecg-boot/sys/common/static/';
onLoad((options) => {
let url = JSON.parse(options.data)
url = baseUrl + url;
fileUrl.value = 'https://szcx.zyyt.sinopec.com/preview/onlinePreview?url=' + encodeURIComponent(Base64
.encode(url))
//
//
loadCertificateStatus(options.certId || 'default-cert-id');
})
//
const loadCertificateStatus = (certId) => {
// API
const mockData = {
status: '有效', // ''
queryCount: 5,
queryTime: new Date().toISOString().split('T')[0]
};
//
status.value = mockData.status;
queryCount.value = mockData.queryCount;
queryTime.value = mockData.queryTime;
//
if (status.value === '无效') {
console.warn('证书无效ID:', certId);
}
}
// URL
watch(() => fileUrl.value, () => {
// URLID
// URL
})
</script>
<style>
#bdIframe {
position: absolute;
top: 20;
left: 0;
width: 100%;
height: 100%;
}
.placeholder {
height: v-bind(cusnavbarheight);
}
/* 证书状态样式 */
.cert-status {
margin-top: 20rpx;
font-size: 32rpx;
color: #fff;
padding: 16rpx 30rpx;
border-radius: 10rpx;
/* 深蓝色背景 */
background-color: #0a2463;
/* 科技感底纹 - 使用线性渐变和背景图案 */
background-image:
linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%),
linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%);
background-size: 20rpx 20rpx;
background-position: 0 0, 10rpx 10rpx;
box-shadow: 0 4rpx 12rpx rgba(0, 0, 0, 0.3);
}
.status-tag {
padding: 2rpx 10rpx;
border-radius: 4rpx;
font-weight: bold;
}
.valid {
color: #00b42a;
border: 1rpx solid #00b42a;
}
.invalid {
color: #e64340;
border: 1rpx solid #e64340;
}
</style>

View File

@ -10,7 +10,7 @@ setRouteName(routes)
const router = createRouter({
routes: [...routes], //
})
export const whiteList = ['/pages/login/login']
export const whiteList = ['/pages/login/login','/pages/sljd/index' ]// 访 jiang20250605
export const loginPage = '/pages/login/login'
export const beforEach = (to, from, next) => {

View File

@ -15,6 +15,7 @@ interface NavigateToOptions {
"/pages/onlinePreview/onlinePreviewH5" |
"/pages/operation/index" |
"/pages/production/index" |
"/pages/sljd/index" |
"/pages/user/people" |
"/pages/workHome/index" |
"/pages/production/ribaoshuju/rbsjLsxq" |