部分1问题修复

main
wangxiaoshuang 2024-04-25 11:21:40 +08:00
parent 4b8d330703
commit ebacc5bb1d
8 changed files with 1362 additions and 683 deletions

View File

@ -14,8 +14,8 @@ service.interceptors.request.use(
config => {
config.headers['Content-Type'] = 'application/json;charset=UTF-8'
var language = zzSessionStorage.getItem('lang')
config.headers['Accept-Language'] = language === 'en'?'en-US,en;q=0.5':'zh-CN,zh;q=0.9'
console.log(config.headers)
config.headers['Accept-Language'] = language === 'en' ? 'en-US,en;q=0.5' : 'zh-CN,zh;q=0.9'
// console.log(config.headers)
if (store.getters.token) {
config.headers.Authorization = `Bearer ${store.getters.token}`
}
@ -30,14 +30,14 @@ service.interceptors.response.use(
response => {
const res = response.data
let fileReader = new FileReader();
fileReader.onload = function() {
fileReader.onload = function () {
try {
let jsonData = JSON.parse(fileReader.result); // 如果是普通对象数据,后台转换失败
if (!jsonData.IsSuccess && jsonData.ErrorMessage) {
MessageBox.confirm(jsonData.ErrorMessage, {
MessageBox.confirm(jsonData.ErrorMessage, {
type: 'warning',
showCancelButton: false,
callback: action => {}
callback: action => { }
})
return Promise.reject(jsonData)
}
@ -66,19 +66,19 @@ service.interceptors.response.use(
if (error && error.response) {
const status = error.response.status
switch (status) {
case 400: message = store.state.lang.language === 'en'? 'Request error' : '请求错误'; break
case 401: message = store.state.lang.language === 'en'? 'Not authorized or login timed out. Please log in again.' : '未授权或登陆超时,请重新登录'; break
case 400: message = store.state.lang.language === 'en' ? 'Request error' : '请求错误'; break
case 401: message = store.state.lang.language === 'en' ? 'Not authorized or login timed out. Please log in again.' : '未授权或登陆超时,请重新登录'; break
case 403: message = error.response.data.ErrorMessage; break
case 404: message = store.state.lang.language === 'en'? 'Request address error' : `请求地址出错`; break
case 405: message = store.state.lang.language === 'en'? 'Interface parameter error or request method inconsistency' : `接口参数传递错误,或者请求方法不一致`; break
case 408: message = store.state.lang.language === 'en'? 'Request timed out' : '请求超时'; break
case 429: message = store.state.lang.language === 'en'? 'The application service limits the traffic. Your requests are too frequent. Please try again later.' : '应用服务限流,您的请求过于频繁,请稍后再试'; break
case 500: message = store.state.lang.language === 'en'? 'Internal server error, and unable to complete the request. Software release might be in process. Please contact the administrator.' : '服务器内部错误,无法完成请求;可能正在发布中,请联系管理员处理'; break
case 501: message = store.state.lang.language === 'en'? 'Service has not been implemented.' : '服务未实现'; break
case 502: message = store.state.lang.language === 'en'? 'System is being upgraded. Please wait patiently.' : '系统正在升级,请耐心等待。'; break
case 503: message = store.state.lang.language === 'en'? 'Service is not available' : '服务不可用'; break
case 504: message = store.state.lang.language === 'en'? 'Gateway timed out' : '网关超时'; break
case 505: message = store.state.lang.language === 'en'? 'HTTP version is not supported' : 'HTTP版本不受支持'; break
case 404: message = store.state.lang.language === 'en' ? 'Request address error' : `请求地址出错`; break
case 405: message = store.state.lang.language === 'en' ? 'Interface parameter error or request method inconsistency' : `接口参数传递错误,或者请求方法不一致`; break
case 408: message = store.state.lang.language === 'en' ? 'Request timed out' : '请求超时'; break
case 429: message = store.state.lang.language === 'en' ? 'The application service limits the traffic. Your requests are too frequent. Please try again later.' : '应用服务限流,您的请求过于频繁,请稍后再试'; break
case 500: message = store.state.lang.language === 'en' ? 'Internal server error, and unable to complete the request. Software release might be in process. Please contact the administrator.' : '服务器内部错误,无法完成请求;可能正在发布中,请联系管理员处理'; break
case 501: message = store.state.lang.language === 'en' ? 'Service has not been implemented.' : '服务未实现'; break
case 502: message = store.state.lang.language === 'en' ? 'System is being upgraded. Please wait patiently.' : '系统正在升级,请耐心等待。'; break
case 503: message = store.state.lang.language === 'en' ? 'Service is not available' : '服务不可用'; break
case 504: message = store.state.lang.language === 'en' ? 'Gateway timed out' : '网关超时'; break
case 505: message = store.state.lang.language === 'en' ? 'HTTP version is not supported' : 'HTTP版本不受支持'; break
default: break
}
if (error.response.status === 401) {
@ -100,7 +100,7 @@ service.interceptors.response.use(
type: 'warning',
showCancelButton: false,
confirmButtonText: '确定',
callback: action => {}
callback: action => { }
})
}
}

View File

@ -62,10 +62,10 @@
size="small"
>
<el-option
v-for="item of $d.UserType"
:key="item.id"
:label="item.label"
:value="item.id"
v-for="item of roleList"
:key="item.Id"
:label="item.UserTypeShortName"
:value="item.Id"
/>
</el-select>
</el-form-item>

View File

@ -60,10 +60,10 @@
size="small"
>
<el-option
v-for="item of $d.UserType"
:key="item.id"
:label="item.label"
:value="item.id"
v-for="item of roleList"
:key="item.Id"
:label="item.UserTypeShortName"
:value="item.Id"
/>
</el-select>
</el-form-item>
@ -438,7 +438,11 @@ export default {
getUserTypeRoleList() {
getUserTypeRoleList({})
.then((res) => {
this.roleList = res.Result;
this.roleList = res.Result.map((item) => {
if ([4, 5, 8, 9, 12, 14].includes(item.UserTypeEnum)) {
return item;
}
}).filter((item) => item);
})
.catch(() => {});
},

View File

@ -150,6 +150,14 @@
sortable="custom"
show-overflow-tooltip
/>
<!-- 阅片标准 -->
<el-table-column
prop="TrialReadingCriterionName"
:label="$t('trials:adReview:table:TrialReadingCriterionName')"
min-width="100"
sortable="custom"
show-overflow-tooltip
/>
<!-- 任务状态 -->
<el-table-column
prop="TaskState"

View File

@ -317,7 +317,7 @@ export default {
loading: false,
total: 0,
//
reportBtnLoading: false,
reportFlag: {},
};
},
created() {
@ -331,16 +331,21 @@ export default {
},
//
async showReport(item) {
if (this.reportBtnLoading) return;
if (this.reportFlag[item.Id]) return;
let data = {
VisitTaskId: item.Id,
};
try {
this.reportBtnLoading = true;
if (!this.reportFlag.hasOwnProperty(item.Id)) {
this.$set(this.reportFlag, item.Id, true);
}
if (!this.reportFlag[item.Id]) {
this.reportFlag[item.Id] = true;
}
let res = await downLoadReadReport(data);
this.reportBtnLoading = false;
this.reportFlag[item.Id] = false;
} catch (err) {
this.reportBtnLoading = false;
this.reportFlag[item.Id] = false;
console.log(err);
}
},

View File

@ -8,9 +8,9 @@
<el-input v-model="searchData.Code" style="width: 130px" clearable />
</el-form-item>
<!-- 患者编号 -->
<!-- <el-form-item :label="$t('trials:uploadDicomList:table:pId')">
<el-input v-model="searchData.Code" style="width: 130px" />
</el-form-item> -->
<el-form-item :label="$t('trials:uploadDicomList:table:pId')">
<el-input v-model="searchData.PatientIdStr" style="width: 130px" />
</el-form-item>
<!-- 姓名 -->
<el-form-item :label="$t('trials:researchStaff:table:Name')">
<el-input
@ -36,7 +36,7 @@
</el-select>
</el-form-item>
<!-- 状态 -->
<el-form-item :label="$t('trials:subject:table:status')">
<!-- <el-form-item :label="$t('trials:subject:table:status')">
<el-select v-model="searchData.Status" clearable style="width: 130px">
<el-option
v-for="item of $d.Subject_Visit_Status"
@ -45,7 +45,7 @@
:label="item.label"
/>
</el-select>
</el-form-item>
</el-form-item> -->
<el-form-item>
<!-- 查询 -->
<el-button type="primary" icon="el-icon-search" @click="handleSearch">
@ -318,6 +318,7 @@ import patientStudyList from "./components/patient-study-list.vue";
// import confirmVisitList from "../../../trials-inspection/components/confirm-visit-list.vue";
const searchDataDefault = () => {
return {
PatientIdStr: null,
Code: "",
Status: "",
Sex: "",

View File

@ -116,13 +116,13 @@
<el-descriptions-item
:label="$t('trials:trial-information:title:activationDate')"
>
{{ trialInfo.AuthorizationDate }}
{{ otherInfo.ActiveTime }}
</el-descriptions-item>
<!--授权日期-->
<el-descriptions-item
:label="$t('trials:trials-list:table:dateAuthorized')"
>
{{ trialInfo.AuthorizationDate }}
{{ otherInfo.AuthorizationDeadLineDate }}
</el-descriptions-item>
</el-descriptions>
<el-button