From a4dc7d72ecbef6fe367eade6ec00e69abb7da3c6 Mon Sep 17 00:00:00 2001 From: Munawwirul Jamal Date: Thu, 28 Aug 2025 08:11:20 +0700 Subject: [PATCH 1/6] chore: modified gitignore and readme --- .gitignore | 149 +++++++---------------------------------------------- README.md | 6 ++- 2 files changed, 24 insertions(+), 131 deletions(-) diff --git a/.gitignore b/.gitignore index 9a5acedf..436290c0 100644 --- a/.gitignore +++ b/.gitignore @@ -1,139 +1,28 @@ +# Nuxt dev/build outputs +.output +.data +.nuxt +.nitro +.cache +dist + +# Node dependencies +node_modules + # Logs logs *.log -npm-debug.log* -yarn-debug.log* -yarn-error.log* -lerna-debug.log* -# Diagnostic reports (https://nodejs.org/api/report.html) -report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json +# Misc +.DS_Store +.fleet +.idea -# Runtime data -pids -*.pid -*.seed -*.pid.lock - -# Directory for instrumented libs generated by jscoverage/JSCover -lib-cov - -# Coverage directory used by tools like istanbul -coverage -*.lcov - -# nyc test coverage -.nyc_output - -# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) -.grunt - -# Bower dependency directory (https://bower.io/) -bower_components - -# node-waf configuration -.lock-wscript - -# Compiled binary addons (https://nodejs.org/api/addons.html) -build/Release - -# Dependency directories -node_modules/ -jspm_packages/ - -# Snowpack dependency directory (https://snowpack.dev/) -web_modules/ - -# TypeScript cache -*.tsbuildinfo - -# Optional npm cache directory -.npm - -# Optional eslint cache -.eslintcache - -# Optional stylelint cache -.stylelintcache - -# Optional REPL history -.node_repl_history - -# Output of 'npm pack' -*.tgz - -# Yarn Integrity file -.yarn-integrity - -# dotenv environment variable files +# Local env files .env .env.* !.env.example -# parcel-bundler cache (https://parceljs.org/) -.cache -.parcel-cache - -# Next.js build output -.next -out - -# Nuxt.js build / generate output -.nuxt -dist - -# Gatsby files -.cache/ -# Comment in the public line in if your project uses Gatsby and not Next.js -# https://nextjs.org/blog/next-9-1#public-directory-support -# public - -# vuepress build output -.vuepress/dist - -# vuepress v2.x temp and cache directory -.temp -.cache - -# Sveltekit cache directory -.svelte-kit/ - -# vitepress build output -**/.vitepress/dist - -# vitepress cache directory -**/.vitepress/cache - -# Docusaurus cache and generated files -.docusaurus - -# Serverless directories -.serverless/ - -# FuseBox cache -.fusebox/ - -# DynamoDB Local files -.dynamodb/ - -# Firebase cache directory -.firebase/ - -# TernJS port file -.tern-port - -# Stores VSCode versions used for testing VSCode extensions -.vscode-test - -# yarn v3 -.pnp.* -.yarn/* -!.yarn/patches -!.yarn/plugins -!.yarn/releases -!.yarn/sdks -!.yarn/versions - -# Vite logs files -vite.config.js.timestamp-* -vite.config.ts.timestamp-* +# editor +.vscode +*.swp \ No newline at end of file diff --git a/README.md b/README.md index 61992650..5e582ddb 100644 --- a/README.md +++ b/README.md @@ -1 +1,5 @@ -# simrs-fe \ No newline at end of file +# SIMRS - FE + +RSSA - Front End + +If you see this, the development is still not merged yet. Please check nother branches. From 608a0ce6c1d60c4adbd5264baba63acaeb16dde6 Mon Sep 17 00:00:00 2001 From: Abizrh Date: Thu, 30 Oct 2025 20:45:46 +0700 Subject: [PATCH 2/6] =?UTF-8?q?=E2=9A=A1=20enhance=20(pub):=20adjust=20dat?= =?UTF-8?q?a-table=20toggleSelection?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pub/my-ui/data-table/data-table.vue | 84 +++++++++++++------ 1 file changed, 59 insertions(+), 25 deletions(-) diff --git a/app/components/pub/my-ui/data-table/data-table.vue b/app/components/pub/my-ui/data-table/data-table.vue index 9d88ffee..f3e2ef43 100644 --- a/app/components/pub/my-ui/data-table/data-table.vue +++ b/app/components/pub/my-ui/data-table/data-table.vue @@ -1,5 +1,5 @@ From 3cfa07149ce9ace44651cb99a359385c2f002a85 Mon Sep 17 00:00:00 2001 From: Abizrh Date: Wed, 5 Nov 2025 10:04:15 +0700 Subject: [PATCH 6/6] =?UTF-8?q?=E2=9C=A8=20feat=20(soapi):=20parse=20and?= =?UTF-8?q?=20display=20main=20complaint=20and=20diagnoses=20from=20json?= =?UTF-8?q?=20data?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/components/app/soapi/list-cfg.ts | 34 +++++++++++++++++++++++++-- app/components/content/soapi/list.vue | 2 +- 2 files changed, 33 insertions(+), 3 deletions(-) diff --git a/app/components/app/soapi/list-cfg.ts b/app/components/app/soapi/list-cfg.ts index 959d6177..648297c4 100644 --- a/app/components/app/soapi/list-cfg.ts +++ b/app/components/app/soapi/list-cfg.ts @@ -20,14 +20,44 @@ export const config: Config = { ], ], - keys: ['time', 'employee_id', 'main_complaint', 'examination', 'diagnose', 'status', 'action'], + keys: ['time', 'employee_id', 'main_complaint', 'encounter_id', 'diagnose', 'status', 'action'], delKeyNames: [ { key: 'code', label: 'Kode' }, { key: 'name', label: 'Nama' }, ], - parses: {}, + parses: { + time(rec: any) { + return rec.time ? new Date(rec.time).toLocaleDateString() : '' + }, + main_complaint(rec: any) { + const { value } = rec ?? {} + + if (typeof value !== 'string') return '-' + + try { + const parsed = JSON.parse(value) + console.log('parsed', parsed) + return parsed?.['prim-compl'] || '-' + } catch { + return '-' + } + }, + diagnose(rec: any) { + const { value } = rec ?? {} + + if (typeof value !== 'string') return '-' + + try { + const parsed = JSON.parse(value) + const diagnose = parsed?.diagnose || [] + return diagnose.map((d: any) => d.name).join(', ') + } catch { + return '-' + } + }, + }, components: { action(rec, idx) { diff --git a/app/components/content/soapi/list.vue b/app/components/content/soapi/list.vue index 7547b544..5a960d5d 100644 --- a/app/components/content/soapi/list.vue +++ b/app/components/content/soapi/list.vue @@ -70,7 +70,7 @@ onMounted(async () => { }) async function getMyList() { - const url = `/api/v1/soapi?type-code=${typeCode.value}` + const url = `/api/v1/soapi?type-code=${typeCode.value}?includes=encounter` const resp = await xfetch(url) if (resp.success) { data.value = (resp.body as Record).data