完成93需求
This commit is contained in:
19
openhis-ui-vue3/package-lock.json
generated
19
openhis-ui-vue3/package-lock.json
generated
@@ -25,6 +25,7 @@
|
||||
"html2pdf.js": "^0.10.3",
|
||||
"js-cookie": "^3.0.5",
|
||||
"jsencrypt": "^3.3.2",
|
||||
"json-bigint": "^1.0.0",
|
||||
"lodash": "^4.17.21",
|
||||
"lodash-es": "^4.17.21",
|
||||
"moment": "^2.30.1",
|
||||
@@ -2419,6 +2420,15 @@
|
||||
"node": "*"
|
||||
}
|
||||
},
|
||||
"node_modules/bignumber.js": {
|
||||
"version": "9.3.1",
|
||||
"resolved": "https://registry.npmmirror.com/bignumber.js/-/bignumber.js-9.3.1.tgz",
|
||||
"integrity": "sha512-Ko0uX15oIUS7wJ3Rb30Fs6SkVbLmPBAKdlm7q9+ak9bbIeFf0MwuBsQV6z7+X768/cHsfg+WlysDWJcmthjsjQ==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": "*"
|
||||
}
|
||||
},
|
||||
"node_modules/binary-extensions": {
|
||||
"version": "2.3.0",
|
||||
"resolved": "https://registry.npmmirror.com/binary-extensions/-/binary-extensions-2.3.0.tgz",
|
||||
@@ -5456,6 +5466,15 @@
|
||||
"integrity": "sha512-arQR1R1ESGdAxY7ZheWr12wCaF2yF47v5qpB76TtV64H1pyGudk9Hvw8Y9tb/FiTIaaTRUyaSnm5T/Y53Ghm/A==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/json-bigint": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmmirror.com/json-bigint/-/json-bigint-1.0.0.tgz",
|
||||
"integrity": "sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"bignumber.js": "^9.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/json-parse-even-better-errors": {
|
||||
"version": "2.3.1",
|
||||
"resolved": "https://registry.npmmirror.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
|
||||
|
||||
@@ -35,6 +35,7 @@
|
||||
"html2pdf.js": "^0.10.3",
|
||||
"js-cookie": "^3.0.5",
|
||||
"jsencrypt": "^3.3.2",
|
||||
"json-bigint": "^1.0.0",
|
||||
"lodash": "^4.17.21",
|
||||
"lodash-es": "^4.17.21",
|
||||
"moment": "^2.30.1",
|
||||
|
||||
62
openhis-ui-vue3/src/api/surgicalschedule.js
Normal file
62
openhis-ui-vue3/src/api/surgicalschedule.js
Normal file
@@ -0,0 +1,62 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 查询手术安排列表
|
||||
export function getSurgerySchedulePage(query) {
|
||||
return request({
|
||||
url: '/clinical-manage/surgery-schedule/page',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 查询手术安排详情
|
||||
export function getSurgeryScheduleDetail(scheduleId) {
|
||||
return request({
|
||||
url: `/clinical-manage/surgery-schedule/${scheduleId}`,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 新增手术安排
|
||||
export function addSurgerySchedule(data) {
|
||||
return request({
|
||||
url: '/clinical-manage/surgery-schedule/create',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 修改手术安排
|
||||
export function updateSurgerySchedule(data) {
|
||||
return request({
|
||||
url: '/clinical-manage/surgery-schedule/update',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 删除手术安排
|
||||
export function deleteSurgerySchedule(scheduleId) {
|
||||
return request({
|
||||
url: `/clinical-manage/surgery-schedule/${scheduleId}`,
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
// 查询手术申请列表
|
||||
export function getSurgeryApplyList(query) {
|
||||
return request({
|
||||
url: '/clinical-manage/surgery-schedule/apply-list',
|
||||
method: 'post',
|
||||
data: query
|
||||
})
|
||||
}
|
||||
|
||||
// 导出手术安排列表
|
||||
export function exportSurgerySchedule(query) {
|
||||
return request({
|
||||
url: '/clinical-manage/surgery-schedule/export',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
@@ -6,6 +6,10 @@ import {blobValidate, tansParams} from '@/utils/openhis'
|
||||
import cache from '@/plugins/cache'
|
||||
import {saveAs} from 'file-saver'
|
||||
import useUserStore from '@/store/modules/user'
|
||||
import JSONBig from 'json-bigint'
|
||||
|
||||
// 初始化json-bigint,配置大数字转字符串(关键:storeAsString: true)
|
||||
const jsonBig = JSONBig({ storeAsString: true })
|
||||
|
||||
let downloadLoadingInstance;
|
||||
// 是否显示重新登录
|
||||
@@ -17,10 +21,26 @@ axios.defaults.headers['X-Tenant-ID'] = import.meta.env.VITE_APP_TENANT_ID || '1
|
||||
axios.defaults.headers['Request-Method-Name'] = 'login'
|
||||
// 创建axios实例
|
||||
const service = axios.create({
|
||||
// axios中请求配置有baseURL选项,表示请求URL公共部分
|
||||
baseURL: import.meta.env.VITE_APP_BASE_API,
|
||||
// 超时
|
||||
timeout: 60000
|
||||
timeout: 60000,
|
||||
// 新增:重写响应解析逻辑,大数字自动转字符串(移到这里!)
|
||||
transformResponse: [
|
||||
function (data) {
|
||||
if (!data) return {} // 空数据直接返回,避免解析报错
|
||||
try {
|
||||
return jsonBig.parse(data)
|
||||
} catch (err) {
|
||||
// 解析失败时用默认方式,兼容特殊情况
|
||||
return JSON.parse(data)
|
||||
}
|
||||
}
|
||||
],
|
||||
// 可选:请求体序列化,无需额外处理,默认即可(保留也不影响)
|
||||
transformRequest: [
|
||||
function (data) {
|
||||
return JSON.stringify(data)
|
||||
}
|
||||
]
|
||||
})
|
||||
|
||||
// request拦截器
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
v-loading="loading"
|
||||
:data="surgeryList"
|
||||
border
|
||||
row-key="id"
|
||||
row-key="surgeryNo"
|
||||
:row-class-name="getRowClassName"
|
||||
height="calc(100vh - 250px)"
|
||||
style="width: 100%"
|
||||
@@ -758,7 +758,7 @@ function handleEdit(row) {
|
||||
loadDoctorList()
|
||||
}
|
||||
|
||||
getSurgeryDetail(row.id).then(res => {
|
||||
getSurgeryDetail(row.surgeryNo).then(res => {
|
||||
if (res.code === 200) {
|
||||
console.log('【编辑手术】完整返回数据:', res.data)
|
||||
console.log('【编辑手术】手术指征字段值:', res.data.surgeryIndication)
|
||||
@@ -796,7 +796,7 @@ function handleEdit(row) {
|
||||
// 查看
|
||||
function handleView(row) {
|
||||
viewOpen.value = true
|
||||
getSurgeryDetail(row.id).then(res => {
|
||||
getSurgeryDetail(row.surgeryNo).then(res => {
|
||||
if (res.code === 200) {
|
||||
console.log('【手术详情】完整返回数据:', res.data)
|
||||
console.log('【手术详情】手术指征字段值:', res.data.surgeryIndication)
|
||||
@@ -822,7 +822,7 @@ function handleDelete(row) {
|
||||
if (row.statusEnum === 0) {
|
||||
// 新开状态 - 直接删除
|
||||
proxy.$modal.confirm('是否确认删除手术"' + row.surgeryName + '"?').then(() => {
|
||||
return deleteSurgery(row.id)
|
||||
return deleteSurgery(row.surgeryNo)
|
||||
}).then(() => {
|
||||
getList()
|
||||
proxy.$modal.msgSuccess('删除成功')
|
||||
@@ -833,7 +833,7 @@ function handleDelete(row) {
|
||||
} else if (row.statusEnum === 1) {
|
||||
// 已安排状态 - 更新为已取消
|
||||
proxy.$modal.confirm('是否确认取消手术"' + row.surgeryName + '"?').then(() => {
|
||||
return updateSurgeryStatus(row.id, 4) // 4 = 已取消
|
||||
return updateSurgeryStatus(row.surgeryNo, 4) // 4 = 已取消
|
||||
}).then(() => {
|
||||
getList()
|
||||
proxy.$modal.msgSuccess('手术已取消')
|
||||
|
||||
@@ -106,3 +106,17 @@ export function getTestResult(queryParams) {
|
||||
params: queryParams,
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询检查报告
|
||||
*/
|
||||
/**
|
||||
* 分页查询检查报告
|
||||
*/
|
||||
export function getTestResultPage(queryParams) {
|
||||
return request({
|
||||
url: '/reg-doctorstation/request-form/get-page',
|
||||
method: 'POST',
|
||||
data: queryParams,
|
||||
});
|
||||
}
|
||||
|
||||
@@ -705,7 +705,13 @@ function getList() {
|
||||
}
|
||||
|
||||
function getPageList() {
|
||||
queryParams.value.pageNo = 1
|
||||
getList()
|
||||
}
|
||||
|
||||
// 处理分页参数
|
||||
function handlePagination(pagination) {
|
||||
queryParams.value.pageNo = pagination.page
|
||||
queryParams.value.pageSize = pagination.limit
|
||||
getList()
|
||||
}
|
||||
|
||||
|
||||
1505
openhis-ui-vue3/src/views/surgicalschedule/index.vue
Normal file
1505
openhis-ui-vue3/src/views/surgicalschedule/index.vue
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user