diff --git a/src/api/system/user/index.ts b/src/api/system/user/index.ts index 7f0fc3f4..bd022305 100644 --- a/src/api/system/user/index.ts +++ b/src/api/system/user/index.ts @@ -16,6 +16,7 @@ export interface UserVO { loginDate: Date createTime: Date orgId:string + isexamine:string } // 查询用户管理列表 diff --git a/src/api/system/user/profile.ts b/src/api/system/user/profile.ts index 1e80e854..b1eff295 100644 --- a/src/api/system/user/profile.ts +++ b/src/api/system/user/profile.ts @@ -29,6 +29,8 @@ export interface ProfileVO { loginIp: string loginDate: Date createTime: Date + isexamine:string + orgId:string } export interface UserProfileUpdateReqVO { diff --git a/src/api/tblist/patientexamlist/index.ts b/src/api/tblist/patientexamlist/index.ts index 01fd5e9a..a80a4d82 100644 --- a/src/api/tblist/patientexamlist/index.ts +++ b/src/api/tblist/patientexamlist/index.ts @@ -70,8 +70,13 @@ export const PatientexamlistApi = { return await request.get({ url: `/tblist/patientexamlist/UPDATEHigOrg?id=${id}&&orgId=${orgId}` }) }, - // 超声审核修改 + // 超声保存修改 examineupdatelist: async (data: PatientexamlistVO) => { return await request.put({ url: `/tblist/patientexamlist/examineupdate`, data }) }, + + // 超声审核 + examine: async (id: String) => { + return await request.get({ url: `/tblist/patientexamlist/examine?id=` + id }) + }, } diff --git a/src/assets/imgs/FLY.png b/src/assets/imgs/FLY.png new file mode 100644 index 00000000..17513c38 Binary files /dev/null and b/src/assets/imgs/FLY.png differ diff --git a/src/assets/imgs/客服.png b/src/assets/imgs/客服.png new file mode 100644 index 00000000..6664bb04 Binary files /dev/null and b/src/assets/imgs/客服.png differ diff --git a/src/assets/imgs/登录背景.png b/src/assets/imgs/登录背景.png new file mode 100644 index 00000000..c714e4db Binary files /dev/null and b/src/assets/imgs/登录背景.png differ diff --git a/src/assets/imgs/登陆底部.png b/src/assets/imgs/登陆底部.png new file mode 100644 index 00000000..59894e41 Binary files /dev/null and b/src/assets/imgs/登陆底部.png differ diff --git a/src/assets/imgs/登陆背景.png b/src/assets/imgs/登陆背景.png new file mode 100644 index 00000000..f0fbe34d Binary files /dev/null and b/src/assets/imgs/登陆背景.png differ diff --git a/src/assets/svgs/login-fly.svg b/src/assets/svgs/login-fly.svg new file mode 100644 index 00000000..c3f26d7b --- /dev/null +++ b/src/assets/svgs/login-fly.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/locales/zh-CN.ts b/src/locales/zh-CN.ts index 0721651d..5f289e35 100644 --- a/src/locales/zh-CN.ts +++ b/src/locales/zh-CN.ts @@ -362,7 +362,7 @@ export default { }, login: { backSignIn: '返回', - signInFormTitle: '登录', + signInFormTitle: '账号登录', ssoFormTitle: '三方授权', mobileSignInFormTitle: '手机登录', qrSignInFormTitle: '二维码登录', diff --git a/src/views/Login/Login.vue b/src/views/Login/Login.vue index 5d349ce3..2f1491fc 100644 --- a/src/views/Login/Login.vue +++ b/src/views/Login/Login.vue @@ -4,47 +4,49 @@ class="relative h-[100%] lt-md:px-10px lt-sm:px-10px lt-xl:px-10px lt-xl:px-10px" >
-
- -
+ > --> + + -
- --> + + + + -
-
- - {{ underlineToHump(appStore.getTitle) }} -
-
- - +
--> + + + + +
+
+ +
+ 医共体医学影像系统 + The Medical Community Medical Imaging Systems
- - +
@@ -57,7 +59,29 @@
- + + + + + + + + +
+
+ +
@@ -102,3 +126,62 @@ $prefix-cls: #{$namespace}-login; } } + + diff --git a/src/views/Login/components/LoginForm.vue b/src/views/Login/components/LoginForm.vue index 3dbaff3f..6e3279e4 100644 --- a/src/views/Login/components/LoginForm.vue +++ b/src/views/Login/components/LoginForm.vue @@ -12,7 +12,7 @@ - + @@ -59,7 +59,7 @@ - {{ t('login.forgetPassword') }} + {{ t('login.forgetPassword') }} @@ -71,6 +71,7 @@ :title="t('login.login')" class="w-[100%]" type="primary" + style="background: linear-gradient(141.88deg, rgb(0, 102, 235) 0%, rgb(3, 129, 255) 100%), rgb(36, 93, 209);" @click="getCode()" /> @@ -82,7 +83,8 @@ mode="pop" @success="handleLogin" /> - + + + + diff --git a/src/views/system/user/UserForm.vue b/src/views/system/user/UserForm.vue index bfde30a5..207b953f 100644 --- a/src/views/system/user/UserForm.vue +++ b/src/views/system/user/UserForm.vue @@ -82,7 +82,7 @@ - + + + + + + + + + @@ -142,7 +150,8 @@ const formData = ref({ remark: '', status: CommonStatusEnum.ENABLE, roleIds: [], - orgId:'' + orgId:'', + isexamine:'' }) const formRules = reactive({ username: [{ required: true, message: '用户名称不能为空', trigger: 'blur' }], diff --git a/src/views/tblist/patientexamlist/index.vue b/src/views/tblist/patientexamlist/index.vue index a959ed73..aa56c5f7 100644 --- a/src/views/tblist/patientexamlist/index.vue +++ b/src/views/tblist/patientexamlist/index.vue @@ -1,6 +1,6 @@ @@ -393,7 +408,8 @@ const dialogVisible = ref(false) // 弹窗的是否展示 const dialogTitle = ref('') // 弹窗的标题 const formLoading = ref(false) // 表单的加载中:1)修改时的数据加载;2)提交的按钮禁用 const examineFormVO = ref({} as PatientexamlistVO) - +const savedisabled = ref(true) //保存按钮是否可用 +const examinedisabled = ref(false) //审核按钮是否可见 //点击节点更新使用时间 const clickuptime = async (pid: string) => { await ultrasoniccomApi.upreporttemplatetime(pid) @@ -424,8 +440,8 @@ const updateexamineimage = ref([]) //备注 const notes = ref() -//审核 -const examine = async () => { +//保存 +const save = async () => { try { if (selecteimagedoneid === 0 || selecteimagedtwoid === 0 || selecteimagedthreeid === 0) { message.warning('请选择影像图') @@ -433,7 +449,7 @@ const examine = async () => { } // 二次确认 - await message.delConfirm('是否进行审核', '确认') + await message.delConfirm('是否进行保存', '确认') let timesta = new Date() var localDateTime = new Date(timesta.getTime()).toISOString() // 转换为ISO格式的字符串 localDateTime = localDateTime.slice(0, localDateTime.length - 1) @@ -444,8 +460,8 @@ const examine = async () => { examineFormVO.value.notes = notes.value examineFormVO.value.diagFlag = radio1.value examineFormVO.value.diagDoctor = Profilevo.value.username - examineFormVO.value.reviewDoctor = Profilevo.value.username - examineFormVO.value.reportstatus = '已审核' + // examineFormVO.value.reviewDoctor = Profilevo.value.username + examineFormVO.value.reportstatus = '已分析' // examineFormVO.value.diagDate=localDateTime // examineFormVO.value.reviewDate=dateTime @@ -454,12 +470,13 @@ const examine = async () => { if (response) { //更新图片选中标识 await upimageselect() - message.alertSuccess('审核成功') + message.alertSuccess('保存成功') // 接口调用成功,可以根据需要处理返回的data数据 console.log('接口调用成功') console.log('data:', response.data) //查询患者信息 根据ID getPatientexamlist(ID) + emit('success') } else { // 接口调用失败,根据具体情况处理错误 console.error('接口调用失败:', response.msg) @@ -469,6 +486,25 @@ const examine = async () => { console.error('接口调用失败:', error) } } +// 审核 +const examine = async () => { + if (applyFormVO.value.reportstatus === '已分析') { + const response = await PatientexamlistApi.examine(ID.toString()) + if (response) { + message.alertSuccess('审核成功') + + //查询患者信息 根据ID + getPatientexamlist(ID) + emit('success') + } + } else if (applyFormVO.value.reportstatus === '已审核') { + message.warning('已经审核,无需再次审核') + return + } else { + message.warning('请先进行保存') + return + } +} ///转换时间格式 function nowDate(time) { @@ -581,15 +617,35 @@ const upimagedeleteor = async () => { deleteimageid.value = '' updateexamineimage.value = [] } +//菜单切换 const handleTabChange = async () => { if (activeName.value == 'report') { - if (reportimages.value.length === 0) { - const imageslist = await ultrasoniccomApi.getimageslist(orgId.value, regId.value, '1') - console.log(imageslist) - reportimages.value = imageslist + if (applyFormVO.value.reportstatus == '已分析' || applyFormVO.value.reportstatus == '已审核') { + showDiv() + if (reportimages.value.length === 0) { + const imageslist = await ultrasoniccomApi.getimageslist(orgId.value, regId.value, '1') + console.log(imageslist) + reportimages.value = imageslist + } + } else { + hideDiv() } } } +//隐藏报告 +function hideDiv() { + var div = document.getElementById('printMe') + if (div) { + div.style.display = 'none' + } +} +//显示报告 +function showDiv() { + var div = document.getElementById('printMe') + if (div) { + div.style.display = 'block' + } +} // 计算年龄 const age = ref() const calculateAge = (birthdate) => { @@ -740,6 +796,12 @@ const getPatientexamlist = async (id: number) => { sj.value = applyFormVO.value.examDescription notes.value = applyFormVO.value.notes calculateAge(applyFormVO.value.birthday) + + if (applyFormVO.value.reportstatus == '已分检' || applyFormVO.value.reportstatus == '待分析') { + savedisabled.value = false + } else { + savedisabled.value = true + } } defineExpose({ open }) // 提供 open 方法,用于打开弹窗 @@ -755,6 +817,10 @@ const PrintForm = () => { //获取当前登录人信息 const getlogininfo = async () => { Profilevo.value = await getUserProfile() + console.log("审核是否可见"+Profilevo.value.isexamine) + if (Profilevo.value.isexamine === '1') { + examinedisabled.value = true + } } /** 重置表单 */ @@ -845,7 +911,6 @@ const chooseImage = (event, id: number) => { display: flex; justify-content: center; align-items: center; - } .demo-image { @@ -911,7 +976,7 @@ const chooseImage = (event, id: number) => { .form-item { flex: 1; /* 均分宽度,使两个输入框平分容器的宽度 */ margin-right: 20px; - font-weight:bold + font-weight: bold; } /* 报告样式 */