Compare commits

..

32 Commits
has ... main

Author SHA1 Message Date
wangxiaoshuang 22ac496d7b 用户编辑页添加国际化
continuous-integration/drone/push Build is passing Details
2026-07-14 11:50:46 +08:00
caiyiling 45c0e5030b Merge branch 'main' of https://gitea.frp.extimaging.com/XCKJ/irc_web into main
continuous-integration/drone/push Build is passing Details
2026-07-10 17:54:12 +08:00
caiyiling 36e23b8135 通知列表添加默认排序 2026-07-10 17:53:50 +08:00
wangxiaoshuang b530f68446 1
continuous-integration/drone/push Build is passing Details
2026-07-10 17:11:39 +08:00
wangxiaoshuang 383bfabae8 1
continuous-integration/drone/push Build is passing Details
2026-07-10 16:59:18 +08:00
wangxiaoshuang 196ed7f993 完全随机ir上传下载页面及预览页屏蔽受试者编号和项目编号
continuous-integration/drone/push Build is passing Details
2026-07-10 16:53:41 +08:00
caiyiling 70cc0027cd 受试者状态更改弹窗移除结束访视日期
continuous-integration/drone/push Build is passing Details
2026-07-10 16:21:44 +08:00
caiyiling 975b7d39a7 Merge branch 'main' of https://gitea.frp.extimaging.com/XCKJ/irc_web into main
continuous-integration/drone/push Build is passing Details
2026-07-10 15:06:24 +08:00
caiyiling 21bcd1fddb 只有顺序阅片的时显示是否复制后续任务阅片表单 2026-07-10 15:05:39 +08:00
wangxiaoshuang 04bbde8583 Merge branch 'main' of https://gitea.frp.extimaging.com/XCKJ/irc_web 2026-07-10 13:55:06 +08:00
wangxiaoshuang f3c4bedbfd 趋势图提示红色改为蓝色 2026-07-10 13:54:54 +08:00
caiyiling 835aedc800 1
continuous-integration/drone/push Build is passing Details
2026-07-10 13:40:57 +08:00
caiyiling 9026b1d7fd 自定义标准完全随机阅片更改
continuous-integration/drone/push Build is passing Details
2026-07-10 13:12:44 +08:00
caiyiling b8f96efa66 列表调整
continuous-integration/drone/push Build is passing Details
2026-07-10 11:18:05 +08:00
caiyiling 4c4f68dbd0 完全随机阅片规则更改
continuous-integration/drone/push Build is passing Details
2026-07-10 11:12:55 +08:00
caiyiling 11c56d2f7a 1
continuous-integration/drone/push Build is passing Details
2026-07-09 16:52:58 +08:00
caiyiling a72521304e Merge branch 'main' of https://gitea.frp.extimaging.com/XCKJ/irc_web into main
continuous-integration/drone/push Build is passing Details
2026-07-09 16:33:50 +08:00
caiyiling 8baf6cb88f IR阅片模块相关页面添加任务名称搜索条件 2026-07-09 16:33:14 +08:00
wangxiaoshuang 71e04c3bf1 中心调研移动端确认弹框样式修改
continuous-integration/drone/push Build is passing Details
2026-07-09 15:17:44 +08:00
caiyiling 1af9b48622 完全随机IR阅片列表及阅片页面更改
continuous-integration/drone/push Build is pending Details
2026-07-09 14:17:02 +08:00
wangxiaoshuang 447b74fa55 Merge branch 'main' of https://gitea.frp.extimaging.com/XCKJ/irc_web
continuous-integration/drone/push Build is passing Details
2026-07-09 13:29:51 +08:00
wangxiaoshuang c633fbcf87 外层问题配置为表格问题不显示时阅片时不展示表格 2026-07-09 13:29:45 +08:00
caiyiling 1cc57ad1d6 修复保存申请重阅表单异常问题
continuous-integration/drone/push Build is passing Details
2026-07-09 09:30:19 +08:00
caiyiling f282fdfabc 是否复制后续表单去除标准限制
continuous-integration/drone/push Build is passing Details
2026-07-08 16:46:50 +08:00
caiyiling d77c6ecf03 Merge branch 'main' of https://gitea.frp.extimaging.com/XCKJ/irc_web into main
continuous-integration/drone/push Build is passing Details
2026-07-08 16:04:27 +08:00
caiyiling 1db75cf4f7 MRI-PDFF报告页数据更改 2026-07-08 16:03:55 +08:00
wangxiaoshuang 7bc70bfd6c 【中心调研】中心调研表手机扫描二维码进入时,同pc一样也需要增加验证。上传文件功能也要能正常使用
continuous-integration/drone/push Build is passing Details
2026-07-07 17:35:33 +08:00
wangxiaoshuang 69ba30e5a9 【趋势图】趋势图访视结果后增加查看按钮,可以查看已阅结果
continuous-integration/drone/push Build is passing Details
2026-07-07 10:25:32 +08:00
wangxiaoshuang 18482ddaa9 【中心调研】选择项目方案号生成验证码,项目方案号中有特殊符号,生成的验证码中未显示特殊符号
continuous-integration/drone/push Build is passing Details
2026-07-07 09:38:14 +08:00
caiyiling 14e2afcfee Merge branch 'main' of https://gitea.frp.extimaging.com/XCKJ/irc_web into main
continuous-integration/drone/push Build is pending Details
2026-07-06 17:22:30 +08:00
caiyiling 39dadbbf47 受试者任务状态变更原因更改 2026-07-06 17:20:59 +08:00
wangxiaoshuang d0ba340fea 去除分割上传文件按钮
continuous-integration/drone/push Build is passing Details
2026-07-06 11:44:37 +08:00
12 changed files with 40 additions and 39 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 7.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 225 KiB

After

Width:  |  Height:  |  Size: 189 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 353 KiB

After

Width:  |  Height:  |  Size: 320 KiB

View File

@ -1,7 +1,7 @@
// eslint-disable-next-line no-undef // eslint-disable-next-line no-undef
module.exports = { module.exports = {
title: 'HASC lmaging Trial Management System', title: 'EIC lmaging Trial Management System',
/** /**
* @type {boolean} true | false * @type {boolean} true | false

View File

@ -1,6 +1,6 @@
import defaultSettings from '@/settings' import defaultSettings from '@/settings'
const title = defaultSettings.title || 'HASC lmaging Trial Management System' const title = defaultSettings.title || 'EIC lmaging Trial Management System'
export default function getPageTitle(pageTitle) { export default function getPageTitle(pageTitle) {
if (pageTitle) { if (pageTitle) {

View File

@ -2,7 +2,7 @@
<div class="dashboard"> <div class="dashboard">
<div class="dashboard-header"> <div class="dashboard-header">
<h1> <h1>
<a href="#" @click="handleTitleClick">GRR Real-Time HASC Information</a> <a href="#" @click="handleTitleClick">GRR Real-Time IRC Information</a>
</h1> </h1>
<div> <div>

View File

@ -1,7 +1,7 @@
<template> <template>
<div class="dashboard"> <div class="dashboard">
<div class="dashboard-header"> <div class="dashboard-header">
<!-- <h1>Extimaging Real-Time HASC Information</h1> --> <h1>Extimaging Real-Time IRC Information</h1>
<div> <div>
<span>{{ currentTime }}</span> <span>{{ currentTime }}</span>
</div> </div>

View File

@ -5,27 +5,28 @@
</div> </div>
<div class="login-body"> <div class="login-body">
<div class="login-l"> <div class="login-l">
<!-- <div class="login-logo"> <div class="login-logo">
<img v-if="language === 'zh'" src="@/assets/zzlogo2.png" alt="" /> <img v-if="language === 'zh'" src="@/assets/zzlogo2.png" alt="" />
<img v-else-if="NODE_ENV === 'usa'" src="@/assets/zzlogo-usa.png" alt="" class="usa-logo" /> <img v-else-if="NODE_ENV === 'usa'" src="@/assets/zzlogo-usa.png" alt="" class="usa-logo" />
<img v-else src="@/assets/zzlogo2.png" alt="" /> <img v-else src="@/assets/zzlogo4.png" alt="" />
</div> --> </div>
<div :class="{ <div :class="{
'login-image': true, 'login-image': true,
'login-image-usa': true, 'login-image-usa': true,
}"> }">
<!-- <svg-icon icon-class="login-bg" style="width: 90%; height: 90%" /> --> <svg-icon icon-class="login-bg" style="width: 90%; height: 90%" />
<img src="@/assets/login-bg.png" style=" height: 80%" /> <!-- <img src="@/assets/login-bg.png" v-else /> -->
</div> </div>
</div> </div>
<div class="login-r"> <div class="login-r">
<div class="title-container"> <div class="title-container">
<!-- HASC Management System --> <!-- IRC Management System -->
<div v-if="NODE_ENV === 'usa'"> <div v-if="NODE_ENV === 'usa'">
<svg-icon icon-class="login-logo" style="width: 300px; height: 94px" /> <svg-icon icon-class="login-logo" style="width: 300px; height: 94px" />
</div> </div>
<div class="title" v-else> <div class="title" v-else>
<img src="@/assets/system.png" alt="" :style="{ height: isEN ? '50px' : '55px' }" /> <img src="@/assets/system.png" alt=""
:style="{ width: isEN ? '180px' : '200px', height: isEN ? '60px' : '65px' }" />
<div :style="`font-size:${isEN ? '28px' : '35px'}`">{{ $t('login:title:system') }}</div> <div :style="`font-size:${isEN ? '28px' : '35px'}`">{{ $t('login:title:system') }}</div>
</div> </div>
</div> </div>
@ -110,17 +111,17 @@
</div> </div>
</div> </div>
<div v-if="language === 'zh'" class="login-footer"> <div v-if="language === 'zh'" class="login-footer">
<span>Copyright © {{ new Date().getFullYear() }} 上海禾安枢信息科技有限公司 <span>Copyright © {{ new Date().getFullYear() }} 上海展影医疗科技有限公司
版权所有</span> 版权所有</span>
<span> | </span> <span> | </span>
<!-- <a target="_blank" href="https://beian.miit.gov.cn/"> <a target="_blank" href="https://beian.miit.gov.cn/">
<span> 沪ICP备2021037850-2 </span> <span> 沪ICP备2021037850-2 </span>
</a> </a>
<span> | </span> <span> | </span>
<a target="_blank" href="http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=31011002005859"> <a target="_blank" href="http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=31011002005859">
<img src="@/assets/filing.png" /> <img src="@/assets/filing.png" />
<span>沪公网安备 31011002005859</span> <span>沪公网安备 31011002005859</span>
</a> --> </a>
<a @click="openAbout"> <a @click="openAbout">
<span style="color: #428bca">关于</span> <span style="color: #428bca">关于</span>
</a> </a>
@ -161,16 +162,16 @@
V{{ $version.IsEnv_US ? $version.Version_US : $version.Version }} V{{ $version.IsEnv_US ? $version.Version_US : $version.Version }}
</p> </p>
<p style="margin-bottom: 20px" v-if="language === 'zh'"> <p style="margin-bottom: 20px" v-if="language === 'zh'">
Copyright © {{ new Date().getFullYear() }} 上海禾安枢信息科技有限公司 Copyright © {{ new Date().getFullYear() }} 上海展影医疗科技有限公司
版权所有 版权所有
</p> </p>
<p style="margin-bottom: 20px" v-else-if="NODE_ENV === 'usa'"> <p style="margin-bottom: 20px" v-else-if="NODE_ENV === 'usa'">
© {{ new Date().getFullYear() }} Elevate Imaging Inc. © {{ new Date().getFullYear() }} Elevate Imaging Inc.
</p> </p>
<!-- <p style="margin-bottom: 20px" v-else> <p style="margin-bottom: 20px" v-else>
Copyright © {{ new Date().getFullYear() }} Shanghai Extensive Imaging Copyright © {{ new Date().getFullYear() }} Shanghai Extensive Imaging
Inc. Inc.
</p> --> </p>
<!-- <div style="margin-bottom: 20px" v-if="NODE_ENV === 'usa'"> <!-- <div style="margin-bottom: 20px" v-if="NODE_ENV === 'usa'">
<img style="width: 180px" src="@/assets/zzlogo-usa.png" alt="" /> <img style="width: 180px" src="@/assets/zzlogo-usa.png" alt="" />
</div> </div>

View File

@ -1,7 +1,7 @@
<template> <template>
<div class="share-image-container"> <div class="share-image-container">
<div class="share-image-banner"> <div class="share-image-banner">
<h2 style="text-align:center;">HASC Management System</h2> <h2 style="text-align:center;">IRC Management System</h2>
<el-card shadow="hover"> <el-card shadow="hover">
<h4>请输入提取码</h4> <h4>请输入提取码</h4>
<el-form ref="validateForm" :inline="true" :rules="rules" :model="form"> <el-form ref="validateForm" :inline="true" :rules="rules" :model="form">

View File

@ -302,13 +302,13 @@ export default {
// //
"FromEmail": "test@extimaging.com", "FromEmail": "test@extimaging.com",
// //
"FromName": "Test HASC Imaging System", "FromName": "Test IRC Imaging System",
//SMTP //SMTP
"AuthorizationCode": "SHzyyl2021", "AuthorizationCode": "SHzyyl2021",
//访 //访
"SiteUrl": "http://irc.test.extimaging.com/login", "SiteUrl": "http://irc.test.extimaging.com/login",
//-使 //-使
"SystemShortName": "HASC", "SystemShortName": "IRC",
// - // -
"OrganizationName": "ExtImaging", "OrganizationName": "ExtImaging",
// //

View File

@ -178,7 +178,7 @@ export default {
updateUser(this.user) updateUser(this.user)
.then((res) => { .then((res) => {
this.isDisabled = false this.isDisabled = false
this.$message.success('Updated successfully') this.$message.success(this.$t("common:message:updatedSuccessfully"))
}) })
.catch(() => { .catch(() => {
this.isDisabled = false this.isDisabled = false
@ -190,7 +190,7 @@ export default {
this.user.Id = res.Result.Id this.user.Id = res.Result.Id
this.user.UserCode = res.Result.UserCode this.user.UserCode = res.Result.UserCode
this.$emit('getUserId', res.Result.Id) this.$emit('getUserId', res.Result.Id)
this.$message.success('Added successfully') this.$message.success(this.$t("common:message:addedSuccessfully"))
this.$router.push({ path: '/system/user/list' }) this.$router.push({ path: '/system/user/list' })
}) })
.catch(() => { .catch(() => {
@ -308,63 +308,63 @@ export default {
UserWorkLanguage: [ UserWorkLanguage: [
{ {
required: true, required: true,
message: 'Please Select', message: this.$t("common:ruleMessage:select"),
trigger: ['blur', 'change'], trigger: ['blur', 'change'],
}, },
], ],
Roles: [ Roles: [
{ {
required: true, required: true,
message: 'Please Select', message: this.$t("common:ruleMessage:select"),
trigger: ['blur', 'change'], trigger: ['blur', 'change'],
}, },
], ],
IsZhiZhun: [ IsZhiZhun: [
{ {
required: true, required: true,
message: 'Please Select', message: this.$t("common:ruleMessage:select"),
trigger: ['blur', 'change'], trigger: ['blur', 'change'],
}, },
], ],
OrganizationName: [ OrganizationName: [
{ required: true, message: 'Please specify', trigger: 'blur' }, { required: true, message: this.$t("common:ruleMessage:specify"), trigger: 'blur' },
], ],
LastName: [ LastName: [
{ required: true, message: 'Please specify', trigger: 'blur' }, { required: true, message: this.$t("common:ruleMessage:specify"), trigger: 'blur' },
{ max: 50, message: 'The maximum length is 50' }, { max: 50, message: this.$t("trials:researchForm:formRule:maxLength") },
], ],
FirstName: [ FirstName: [
{ required: true, message: 'Please specify', trigger: 'blur' }, { required: true, message: this.$t("common:ruleMessage:specify"), trigger: 'blur' },
{ max: 50, message: 'The maximum length is 50' }, { max: 50, message: this.$t("trials:researchForm:formRule:maxLength") },
], ],
Phone: [ Phone: [
{ {
max: 20, max: 20,
min: 7, min: 7,
message: 'The length is 7 to 20', message: this.$t("system:userInfo:ruleMessage:length7to20"),
trigger: ['blur'], trigger: ['blur'],
}, },
], ],
EMail: [ EMail: [
{ {
required: true, required: true,
message: 'Please input the email address', message: this.$t("common:ruleMessage:specify"),
trigger: 'blur', trigger: 'blur',
}, },
{ {
// type: 'email', // type: 'email',
pattern: new RegExp(this.$reg().EmailRegexStr), pattern: new RegExp(this.$reg().EmailRegexStr),
message: 'Please input the correct email address', message: this.$t("trials:site:ruleMessage:correctEmail"),
trigger: ['blur'], trigger: ['blur'],
}, },
{ max: 50, message: 'The maximum length is 50' }, { max: 50, message: this.$t("trials:researchForm:formRule:maxLength") },
], ],
Sex: [{ required: true, message: 'Please specify', trigger: 'blur' }], Sex: [{ required: true, message: this.$t("common:ruleMessage:specify"), trigger: 'blur' }],
Status: [ Status: [
{ required: true, message: 'Please specify', trigger: 'blur' }, { required: true, message: this.$t("common:ruleMessage:specify"), trigger: 'blur' },
], ],
DepartmentName: [{ max: 50, message: 'The maximum length is 50' }], DepartmentName: [{ max: 50, message: this.$t("trials:researchForm:formRule:maxLength") }],
PositionName: [{ max: 50, message: 'The maximum length is 50' }], PositionName: [{ max: 50, message: this.$t("trials:researchForm:formRule:maxLength") }],
}, },
userTypeOptions: [], userTypeOptions: [],
isDisabled: false, isDisabled: false,

View File

@ -11,7 +11,7 @@ const webpack = require('webpack')
const defaultSettings = require('./src/settings.js') const defaultSettings = require('./src/settings.js')
const moment = require('moment') const moment = require('moment')
var distDate = moment(new Date()).format('YYYY-MM-DD') var distDate = moment(new Date()).format('YYYY-MM-DD')
const name = process.env.NODE_ENV === 'usa' ? 'Imaging Trial Management System' : defaultSettings.title || 'HASC lmaging Trial Management System' // page title const name = process.env.NODE_ENV === 'usa' ? 'Imaging Trial Management System' : defaultSettings.title || 'EIC lmaging Trial Management System' // page title
// const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin // const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin
// eslint-disable-next-line no-undef // eslint-disable-next-line no-undef
module.exports = defineConfig({ module.exports = defineConfig({