From 1217eb8153b46528acec869e6f4cf74e04fafa16 Mon Sep 17 00:00:00 2001 From: Tao-826 <2513445933@qq.com> Date: Mon, 14 Jul 2025 14:45:15 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=B6=E4=BD=9C=E5=81=A5=E5=BA=B7=E9=A2=84?= =?UTF-8?q?=E8=AD=A6=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Jenkinsfile | 96 ------ .../images/pages/icon_abnormal_personnel.png | Bin 0 -> 647 bytes src/assets/images/pages/icon_distribution.png | Bin 0 -> 711 bytes src/components/layouts/defaultLayout.vue | 4 +- src/views/healthWarning/index.vue | 325 ++++++++++++++++++ src/views/personalHealthCenter/index.vue | 6 +- .../personnePostPhysicalExamination/index.vue | 6 +- vite.config.js | 12 + 8 files changed, 344 insertions(+), 105 deletions(-) delete mode 100644 Jenkinsfile create mode 100644 src/assets/images/pages/icon_abnormal_personnel.png create mode 100644 src/assets/images/pages/icon_distribution.png create mode 100644 src/views/healthWarning/index.vue diff --git a/Jenkinsfile b/Jenkinsfile deleted file mode 100644 index cc71990..0000000 --- a/Jenkinsfile +++ /dev/null @@ -1,96 +0,0 @@ -// Jenkinsfile for Project A - -pipeline { - agent any - - parameters { - // 项目特定的默认值 - string(name: 'GIT_REPO_URL', defaultValue: 'https://your-git-server.com/project-a.git', description: 'Git仓库URL') - string(name: 'GIT_BRANCH', defaultValue: 'main', description: '要拉取的Git分支') - credentials(name: 'GIT_CREDENTIALS_ID', defaultValue: 'your-git-credentials-id', description: 'Git凭证ID', required: false) - - string(name: 'BUILD_COMMAND', defaultValue: 'mvn clean package -DskipTests', description: '项目A打包命令') // project-a 的打包命令 - - string(name: 'DOCKER_REGISTRY_URL', defaultValue: 'your-docker-registry.com', description: 'Docker镜像仓库URL') - string(name: 'DOCKER_IMAGE_NAME', defaultValue: 'project-a-app', description: 'Docker镜像名称') // project-a 的镜像名 - string(name: 'IMAGE_BASE_TAG', defaultValue: '1.0', description: '基础镜像标签') - credentials(name: 'DOCKER_CREDENTIALS_ID', defaultValue: 'your-docker-registry-credentials-id', description: 'Docker镜像仓库凭证ID', required: true) - booleanParam(name: 'PUSH_LATEST_TAG', defaultValue: true, description: '是否同时推送 latest 标签?') - } - - environment { - FULL_IMAGE_NAME = "${params.DOCKER_REGISTRY_URL}/${params.DOCKER_IMAGE_NAME}" - IMAGE_TAG = "" // 将在 Checkout 后动态设置 - } - - // tools { ... } // 如果需要 - - stages { - stage('1. Checkout Code') { - steps { - echo "拉取代码从 ${params.GIT_REPO_URL}, 分支: ${params.GIT_BRANCH}" - cleanWs() - checkout([ - $class: 'GitSCM', - branches: [[name: params.GIT_BRANCH]], - userRemoteConfigs: [[ - url: params.GIT_REPO_URL, - credentialsId: params.GIT_CREDENTIALS_ID - ]], - extensions: [ - [$class: 'CloneOption', shallow: true, noTags: true, depth: 1, timeout: 20], - [$class: 'PruneStaleBranch'] - ] - ]) - script { - def shortCommit = sh(script: 'git rev-parse --short HEAD', returnStdout: true).trim() - env.IMAGE_TAG = "${params.IMAGE_BASE_TAG}-${BUILD_NUMBER}-${shortCommit}" - echo "生成的镜像TAG: ${env.IMAGE_TAG}" - } - } - } - - stage('2. Build and Package Application') { - steps { - echo "开始打包应用: ${params.BUILD_COMMAND}" - sh "${params.BUILD_COMMAND}" - echo "应用打包完成." - } - } - - stage('3. Build Docker Image') { - steps { - echo "开始构建Docker镜像: ${env.FULL_IMAGE_NAME}:${env.IMAGE_TAG}" - script { - docker.build("${env.FULL_IMAGE_NAME}:${env.IMAGE_TAG}", "-f Dockerfile .") // 假设 Dockerfile 在根目录 - } - echo "Docker镜像构建完成: ${env.FULL_IMAGE_NAME}:${env.IMAGE_TAG}" - } - } - - stage('4. Push Docker Image') { - steps { - echo "开始推送Docker镜像到 ${params.DOCKER_REGISTRY_URL}" - script { - docker.withRegistry(params.DOCKER_REGISTRY_URL, params.DOCKER_CREDENTIALS_ID) { - docker.image("${env.FULL_IMAGE_NAME}:${env.IMAGE_TAG}").push() - echo "镜像 ${env.FULL_IMAGE_NAME}:${env.IMAGE_TAG} 推送成功." - if (params.PUSH_LATEST_TAG) { - docker.image("${env.FULL_IMAGE_NAME}:${env.IMAGE_TAG}").push('latest') - echo "镜像 ${env.FULL_IMAGE_NAME}:latest 推送成功." - } - } - } - } - } - } - - post { - always { - echo 'Pipeline 结束.' - cleanWs() - } - // success { ... } - // failure { ... } - } -} diff --git a/src/assets/images/pages/icon_abnormal_personnel.png b/src/assets/images/pages/icon_abnormal_personnel.png new file mode 100644 index 0000000000000000000000000000000000000000..5e50e6fca7ed30393eaf20468c36e4c99e80d74c GIT binary patch literal 647 zcmV;20(kw2P)Px%K}keGR9HvFS8a0IKn#`EJw_)sH-VEh`IiYjLv8mACDVW5CLt%W$@Cay)zNxo z*2W)N2U5>4!+=;lX{Glb2>4P%Xg-rsOX!~dm zBz!2I@Ag^{lK>*C_c`%U?(Q~M0g!KxF92|_J2&Ee0!__Ak!Wuad@&T z?J&*&P)+{@zH*n&4tEQ7s=8$}08yJTy#dACT~^uYmdXNF2kJdq0s4`Gr9Mk~G2x zFuryTMZ^&8hKJOzG85WG7dilZ+gSag1xTtrdx(aVI5`VbA5=#R8idJ^|QTqU19*dE{mU_`gZNY!(<4<&)T&_`(XgCim?eF z>Oi2d6#yPS)PdgJ0~1ZZm1ON#H0IC6=YAGs2&1ncWWPAm(n+-`NPT*t%;Wy h_7GPA5RPx%fk{L`R9Hu?SM71zFboA`4`REG?m9)~Ng6K_Nm<11B+(YVb6SVpqY)ZVCPPx- zhn(n7E*1zpJb(`n!Y4exy3K~&eCw22>JFD42<*_|48UZ& zhV|yI`#lH%T#O0<*RDd08tx&QApK+OK1Fw0G|6@ zO8`>Vx~7Eq7e`c54=@0eWrRWXO5@%%=L|q3c(jIL6S@FQmgmRq6A(6*O@dS1T@L)e z2SB9VF_y|v0^n-H~lg@!T|f2 z>BZH*1rTOmx0hm#@N@uaU=@^r2Rfqa_OjJM&W~U2f#_%tAs!^rDCvP5WA1xSastrp zj(}R_tit6q+}LKMIEjaKWCGCdc$iEbn(6vn6E0!E1@PYeHvm`?)U{=n4FeWH$<@0h zpqZk4)-5lVUZY!rnloXOBUO7d4`vK3?ST?tApowuHwyx-*7vi-aj8w}mT3k;6?7>o z4U)1;-LeTlIQtjggk8AeErS2`!foU})m4&i2$u4%B;MU+F5%R1QulJn_?tQr{UJ5;n0 t=+-^LXTvX_0 +.layout_card1 { + :deep(.layout_card) { + display: flex; + align-items: center; + justify-content: space-between; + } + + .card_round { + width: 50px; + height: 50px; + border-radius: 50%; + display: flex; + justify-content: center; + align-items: center; + } + + .card_content { + font-size: 16px; + font-weight: 400; + display: flex; + width: 20%; + justify-content: space-between; + } + + .card_content_num { + font-size: 18px; + font-weight: bold; + } +} + +.layout_card2 { + padding: 20px 0; + + .card_content { + display: flex; + justify-content: space-between; + } +} + +.layout_title { + font-size: 18px; + font-weight: bold; +} + +.layout_chart { + width: 100%; + height: 300px; +} + + + + + \ No newline at end of file diff --git a/src/views/personalHealthCenter/index.vue b/src/views/personalHealthCenter/index.vue index 16c2a19..bb2375e 100644 --- a/src/views/personalHealthCenter/index.vue +++ b/src/views/personalHealthCenter/index.vue @@ -75,16 +75,12 @@ - + diff --git a/src/views/personnePostPhysicalExamination/index.vue b/src/views/personnePostPhysicalExamination/index.vue index 3ec2ec6..a10eca7 100644 --- a/src/views/personnePostPhysicalExamination/index.vue +++ b/src/views/personnePostPhysicalExamination/index.vue @@ -149,9 +149,9 @@ const background = ref(true) const disabled = ref(false) const size = ref('default') const tableData = ref([ - { A1: '椤圭洰1', A2: '鏍囨1', A14: '鍔冲姟闃1', A3: '寮犱笁', A4: '鐢', A5: '18', A6: '鐢靛伐', A7: '2022-01-01', A8: '2022-01-01', A9: '145/95', A10: '80', A11: '101', A12: '37.5', A13: '寮傚父' }, - { A1: '椤圭洰1', A2: '鏍囨1', A14: '鍔冲姟闃2', A3: '寮犱笁', A4: '鐢', A5: '18', A6: '鐢靛伐', A7: '2022-01-01', A8: '2022-01-01', A9: '120/80', A10: '95', A11: '70', A12: '36.5', A13: '姝e父' }, - { A1: '椤圭洰1', A2: '鏍囨1', A14: '鍔冲姟闃1', A3: '寮犱笁', A4: '鐢', A5: '18', A6: '鐢靛伐', A7: '2022-01-01', A8: '2022-01-01', A9: '120/80', A10: '95', A11: '59', A12: '36.5', A13: '姝e父' }, + { A1: '椤圭洰1', A2: '鏍囨1', A14: '鍔冲姟闃1', A3: '寮犱笁', A4: '鐢', A5: '20', A6: '鐢靛伐', A7: '2025-06-01', A8: '2025-06-02', A9: '145/95', A10: '80', A11: '101', A12: '37.5', A13: '寮傚父' }, + { A1: '椤圭洰2', A2: '鏍囨2', A14: '鍔冲姟闃2', A3: '寮犱笁', A4: '鐢', A5: '20', A6: '鐢靛伐', A7: '2025-06-01', A8: '2025-06-02', A9: '120/80', A10: '95', A11: '70', A12: '36.5', A13: '姝e父' }, + { A1: '椤圭洰3', A2: '鏍囨3', A14: '鍔冲姟闃3', A3: '寮犱笁', A4: '鐢', A5: '20', A6: '鐢靛伐', A7: '2025-06-01', A8: '2025-06-02', A9: '120/80', A10: '95', A11: '59', A12: '36.5', A13: '姝e父' }, ]) const isBloodPressureNormal = (pressure) => { if (!pressure) return false; diff --git a/vite.config.js b/vite.config.js index 5b4fdec..1429992 100644 --- a/vite.config.js +++ b/vite.config.js @@ -69,6 +69,18 @@ export default defineConfig(({ mode }) => { console.log(` Path: ${proxyReq.path}`); console.log(' Request Headers:', req.headers); } + }, + '/api/jkfzjc': { + target: env.VITE_BASE_URL, + changeOrigin: true, + rewrite: (path) => path.replace(/^\/api\/lmg/, '/api'), + secure: false, + onProxyReq: (proxyReq, req, res) => { + console.log('Proxying request:'); + console.log(` Method: ${req.method}`); + console.log(` Path: ${proxyReq.path}`); + console.log(' Request Headers:', req.headers); + } } } },