Merge branch 'main' of https://gitea.frp.extimaging.com/XCKJ/irc_web into main
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
commit
132af31c1b
|
@ -124,12 +124,12 @@
|
||||||
:active-text="$fd('FeedBackStatus', 1)"
|
:active-text="$fd('FeedBackStatus', 1)"
|
||||||
:inactive-text="$fd('FeedBackStatus', 0)"
|
:inactive-text="$fd('FeedBackStatus', 0)"
|
||||||
:disabled="level < 8 || !isStateChange || form.State === 1"
|
:disabled="level < 8 || !isStateChange || form.State === 1"
|
||||||
@change="changeState"
|
@change="visitTaskId ? () => false : changeState"
|
||||||
>
|
>
|
||||||
</el-switch>
|
</el-switch>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
<div slot="footer" v-if="type !== 'detail'">
|
<div slot="footer" v-if="type !== 'detail' || visitTaskId">
|
||||||
<!-- 取消 -->
|
<!-- 取消 -->
|
||||||
<el-button size="small" @click.stop="cancel">
|
<el-button size="small" @click.stop="cancel">
|
||||||
{{ $t("feedBack:button:cancel") }}
|
{{ $t("feedBack:button:cancel") }}
|
||||||
|
@ -138,7 +138,7 @@
|
||||||
<el-button
|
<el-button
|
||||||
type="primary"
|
type="primary"
|
||||||
size="small"
|
size="small"
|
||||||
@click.stop="save"
|
@click.stop="visitTaskId ? changeState : save"
|
||||||
:loading="loading"
|
:loading="loading"
|
||||||
>
|
>
|
||||||
{{ $t("feedBack:button:save") }}
|
{{ $t("feedBack:button:save") }}
|
||||||
|
@ -290,7 +290,7 @@ export default {
|
||||||
try {
|
try {
|
||||||
let data = {
|
let data = {
|
||||||
IdList: [this.Id],
|
IdList: [this.Id],
|
||||||
State: 1,
|
State: this.form.State,
|
||||||
};
|
};
|
||||||
let res = await batchUpdateFeedBackState(data);
|
let res = await batchUpdateFeedBackState(data);
|
||||||
if (res.IsSuccess) {
|
if (res.IsSuccess) {
|
||||||
|
|
|
@ -1,30 +1,66 @@
|
||||||
<template>
|
<template>
|
||||||
<base-model v-if="config.visible" :config="config">
|
<base-model v-if="config.visible" :config="config">
|
||||||
<template slot="dialog-body">
|
<template slot="dialog-body">
|
||||||
<el-button type="primary" icon="el-icon-plus" @click="openAdd" style="float: right" v-if="status === 'add'">
|
<el-button
|
||||||
|
type="primary"
|
||||||
|
icon="el-icon-plus"
|
||||||
|
@click="openAdd"
|
||||||
|
style="float: right"
|
||||||
|
v-if="status === 'add'"
|
||||||
|
>
|
||||||
{{ $t("common:button:add") }}
|
{{ $t("common:button:add") }}
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-table v-loading="loading" :data="list" stripe>
|
<el-table v-loading="loading" :data="list" stripe>
|
||||||
<!-- AE 名称 -->
|
<!-- AE 名称 -->
|
||||||
<el-table-column prop="CallingAE" :label="$t('trials:sitesList:dicomAEList:table:AEName')" show-overflow-tooltip
|
<el-table-column
|
||||||
min-width="120" />
|
prop="CallingAE"
|
||||||
|
:label="$t('trials:sitesList:dicomAEList:table:AEName')"
|
||||||
|
show-overflow-tooltip
|
||||||
|
min-width="120"
|
||||||
|
/>
|
||||||
<!-- IP地址 -->
|
<!-- IP地址 -->
|
||||||
<el-table-column prop="IP" :label="$t('trials:sitesList:dicomAEList:table:ip')" show-overflow-tooltip
|
<el-table-column
|
||||||
min-width="120" />
|
prop="IP"
|
||||||
|
:label="$t('trials:sitesList:dicomAEList:table:ip')"
|
||||||
|
show-overflow-tooltip
|
||||||
|
min-width="120"
|
||||||
|
/>
|
||||||
<!-- 端口 -->
|
<!-- 端口 -->
|
||||||
<el-table-column prop="Port" :label="$t('trials:sitesList:dicomAEList:table:port')" show-overflow-tooltip
|
<el-table-column
|
||||||
min-width="120" />
|
prop="Port"
|
||||||
|
:label="$t('trials:sitesList:dicomAEList:table:port')"
|
||||||
|
show-overflow-tooltip
|
||||||
|
min-width="120"
|
||||||
|
/>
|
||||||
<!-- 说明 -->
|
<!-- 说明 -->
|
||||||
<el-table-column prop="Description" :label="$t('trials:sitesList:dicomAEList:table:description')"
|
<el-table-column
|
||||||
show-overflow-tooltip min-width="120" />
|
prop="Description"
|
||||||
|
:label="$t('trials:sitesList:dicomAEList:table:description')"
|
||||||
|
show-overflow-tooltip
|
||||||
|
min-width="120"
|
||||||
|
/>
|
||||||
<!-- 操作 -->
|
<!-- 操作 -->
|
||||||
<!-- <el-table-column prop="action" :label="$t('trials:sitesList:dicomAEList:table:action')" min-width="120">
|
<el-table-column
|
||||||
|
prop="action"
|
||||||
|
:label="$t('trials:sitesList:dicomAEList:table:action')"
|
||||||
|
min-width="120"
|
||||||
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-button circle :title="$t('trials:sitesList:dicomAEList:action:del')" icon="el-icon-delete"
|
<el-button
|
||||||
:disabled="scope.row.IsDeleted" @click="delDicom(scope.row)" />
|
circle
|
||||||
|
:title="$t('trials:sitesList:dicomAEList:action:edit')"
|
||||||
|
icon="el-icon-edit-outline"
|
||||||
|
@click="editDicom(scope.row)"
|
||||||
|
/>
|
||||||
|
<el-button
|
||||||
|
circle
|
||||||
|
:title="$t('trials:sitesList:dicomAEList:action:del')"
|
||||||
|
icon="el-icon-delete"
|
||||||
|
:disabled="scope.row.IsDeleted"
|
||||||
|
@click="delDicom(scope.row)"
|
||||||
|
/>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column> -->
|
</el-table-column>
|
||||||
|
|
||||||
</el-table>
|
</el-table>
|
||||||
<dicomForm ref="dicomForm" @getList="getList" @save="save" />
|
<dicomForm ref="dicomForm" @getList="getList" @save="save" />
|
||||||
</template>
|
</template>
|
||||||
|
@ -33,10 +69,7 @@
|
||||||
<script>
|
<script>
|
||||||
import BaseModel from "@/components/BaseModel";
|
import BaseModel from "@/components/BaseModel";
|
||||||
import dicomForm from "./dicomForm.vue";
|
import dicomForm from "./dicomForm.vue";
|
||||||
import {
|
import { getTrialSiteDicomAEList, deleteTrialSiteDicomAE } from "@/api/trials";
|
||||||
getTrialSiteDicomAEList,
|
|
||||||
deleteTrialSiteDicomAE
|
|
||||||
} from "@/api/trials";
|
|
||||||
const defaultSearchData = () => {
|
const defaultSearchData = () => {
|
||||||
return {
|
return {
|
||||||
TrialSiteId: null,
|
TrialSiteId: null,
|
||||||
|
@ -55,7 +88,7 @@ export default {
|
||||||
visible: false,
|
visible: false,
|
||||||
title: null,
|
title: null,
|
||||||
width: "800px",
|
width: "800px",
|
||||||
appendToBody: true
|
appendToBody: true,
|
||||||
},
|
},
|
||||||
status: "add",
|
status: "add",
|
||||||
TrialSiteId: null,
|
TrialSiteId: null,
|
||||||
|
@ -93,11 +126,15 @@ export default {
|
||||||
},
|
},
|
||||||
// 新增
|
// 新增
|
||||||
openAdd() {
|
openAdd() {
|
||||||
this.$refs.dicomForm.open(this.siteData, null, 'add');
|
this.$refs.dicomForm.open(this.siteData, null, "add");
|
||||||
},
|
},
|
||||||
save() {
|
save() {
|
||||||
this.$emit('getList')
|
this.$emit("getList");
|
||||||
},
|
},
|
||||||
|
// 修改dicom
|
||||||
|
editDicom(row) {
|
||||||
|
this.$refs.dicomForm.open(this.siteData, row, "edit");
|
||||||
|
},
|
||||||
// 删除dicom
|
// 删除dicom
|
||||||
async delDicom(row) {
|
async delDicom(row) {
|
||||||
try {
|
try {
|
||||||
|
@ -115,12 +152,12 @@ export default {
|
||||||
if (res.IsSuccess) {
|
if (res.IsSuccess) {
|
||||||
this.getList();
|
this.getList();
|
||||||
this.save();
|
this.save();
|
||||||
this.$t('common:message:deletedSuccessfully');
|
this.$t("common:message:deletedSuccessfully");
|
||||||
}
|
}
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.log(err);
|
console.log(err);
|
||||||
}
|
}
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -3,33 +3,50 @@
|
||||||
<template slot="dialog-body">
|
<template slot="dialog-body">
|
||||||
<el-form ref="dicomForm" :model="form" label-width="100px" :rules="rules">
|
<el-form ref="dicomForm" :model="form" label-width="100px" :rules="rules">
|
||||||
<!-- 中心编号 -->
|
<!-- 中心编号 -->
|
||||||
<el-form-item :label="$t('trials:sitesList:table:siteId')" prop="TrialSiteCode">
|
<el-form-item
|
||||||
|
:label="$t('trials:sitesList:table:siteId')"
|
||||||
|
prop="TrialSiteCode"
|
||||||
|
>
|
||||||
<el-input v-model="siteData.TrialSiteCode" disabled />
|
<el-input v-model="siteData.TrialSiteCode" disabled />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!-- 中心别称 -->
|
<!-- 中心别称 -->
|
||||||
<el-form-item :label="$t('trials:sitesList:table:siteName')" prop="TrialSiteAliasName">
|
<el-form-item
|
||||||
|
:label="$t('trials:sitesList:table:siteName')"
|
||||||
|
prop="TrialSiteAliasName"
|
||||||
|
>
|
||||||
<el-input v-model="siteData.TrialSiteAliasName" disabled />
|
<el-input v-model="siteData.TrialSiteAliasName" disabled />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!-- AE -->
|
<!-- AE -->
|
||||||
<el-form-item :label="$t('trials:setting:siteList:dicomForm:dicomAE')" prop="CallingAE">
|
<el-form-item
|
||||||
|
:label="$t('trials:setting:siteList:dicomForm:dicomAE')"
|
||||||
|
prop="CallingAE"
|
||||||
|
>
|
||||||
<el-input v-model="form.CallingAE" clearable maxlength="16" />
|
<el-input v-model="form.CallingAE" clearable maxlength="16" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!-- IP -->
|
<!-- IP -->
|
||||||
<el-form-item :label="$t('trials:setting:siteList:dicomForm:ip')" prop="Ip">
|
<el-form-item :label="$t('trials:setting:siteList:dicomForm:ip')">
|
||||||
<el-input v-model="form.Ip" clearable />
|
<el-input v-model="form.Ip" clearable />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!-- PORT -->
|
<!-- PORT -->
|
||||||
<el-form-item :label="$t('trials:setting:siteList:dicomForm:port')" prop="Port">
|
<el-form-item :label="$t('trials:setting:siteList:dicomForm:port')">
|
||||||
<el-input v-model.number="form.Port" type="number" clearable />
|
<el-input v-model.number="form.Port" type="number" clearable />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!-- 说明 -->
|
<!-- 说明 -->
|
||||||
<el-form-item :label="$t('trials:setting:siteList:dicomForm:description')" prop="Description">
|
<el-form-item
|
||||||
|
:label="$t('trials:setting:siteList:dicomForm:description')"
|
||||||
|
prop="Description"
|
||||||
|
>
|
||||||
<el-input v-model="form.Description" clearable />
|
<el-input v-model="form.Description" clearable />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
</template>
|
</template>
|
||||||
<template slot="dialog-footer">
|
<template slot="dialog-footer">
|
||||||
<el-button type="primary" size="small" :disabled="loading" @click="config.visible = false">
|
<el-button
|
||||||
|
type="primary"
|
||||||
|
size="small"
|
||||||
|
:disabled="loading"
|
||||||
|
@click="config.visible = false"
|
||||||
|
>
|
||||||
{{ $t("common:button:cancel") }}
|
{{ $t("common:button:cancel") }}
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button type="primary" size="small" :loading="loading" @click="save">
|
<el-button type="primary" size="small" :loading="loading" @click="save">
|
||||||
|
@ -39,9 +56,7 @@
|
||||||
</base-model>
|
</base-model>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import {
|
import { addOrUpdateTrialSiteDicomAE } from "@/api/trials";
|
||||||
addOrUpdateTrialSiteDicomAE,
|
|
||||||
} from "@/api/trials";
|
|
||||||
import BaseModel from "@/components/BaseModel";
|
import BaseModel from "@/components/BaseModel";
|
||||||
export default {
|
export default {
|
||||||
name: "dicomForm",
|
name: "dicomForm",
|
||||||
|
@ -59,7 +74,7 @@ export default {
|
||||||
CallingAE: null,
|
CallingAE: null,
|
||||||
Ip: null,
|
Ip: null,
|
||||||
Port: null,
|
Port: null,
|
||||||
Description: null
|
Description: null,
|
||||||
},
|
},
|
||||||
rules: {
|
rules: {
|
||||||
CallingAE: [
|
CallingAE: [
|
||||||
|
@ -139,21 +154,25 @@ export default {
|
||||||
},
|
},
|
||||||
siteData: {},
|
siteData: {},
|
||||||
loading: false,
|
loading: false,
|
||||||
status: 'add'
|
status: "add",
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
open(siteData, data = null, status = 'add') {
|
open(siteData, data = null, status = "add") {
|
||||||
this.siteData = siteData;
|
this.siteData = siteData;
|
||||||
this.status = status;
|
this.status = status;
|
||||||
if (data) {
|
if (data) {
|
||||||
Object.keys(this.form).forEach(key => {
|
Object.keys(this.form).forEach((key) => {
|
||||||
this.form[key] = data[key];
|
this.form[key] = data[key];
|
||||||
})
|
});
|
||||||
|
this.form.Ip = data.IP;
|
||||||
}
|
}
|
||||||
this.config.title = this.$t(
|
this.config.title = this.$t(
|
||||||
"trials:trials-panel:setting:personnel-manage:dicomAETitle"
|
"trials:trials-panel:setting:personnel-manage:dicomAETitle"
|
||||||
).replace("xxx", `${siteData.TrialSiteCode}、${siteData.TrialSiteAliasName}`);
|
).replace(
|
||||||
|
"xxx",
|
||||||
|
`${siteData.TrialSiteCode}、${siteData.TrialSiteAliasName}`
|
||||||
|
);
|
||||||
this.config.visible = true;
|
this.config.visible = true;
|
||||||
},
|
},
|
||||||
// 保存
|
// 保存
|
||||||
|
@ -167,8 +186,10 @@ export default {
|
||||||
let res = await addOrUpdateTrialSiteDicomAE(this.form);
|
let res = await addOrUpdateTrialSiteDicomAE(this.form);
|
||||||
this.loading = false;
|
this.loading = false;
|
||||||
if (res.IsSuccess) {
|
if (res.IsSuccess) {
|
||||||
this.status === 'add' ? this.$t('common:message:savedSuccessfully') : this.$t('common:message:savedFail');
|
this.status === "add"
|
||||||
this.$emit('getList');
|
? this.$t("common:message:savedSuccessfully")
|
||||||
|
: this.$t("common:message:savedFail");
|
||||||
|
this.$emit("getList");
|
||||||
this.$emit("save");
|
this.$emit("save");
|
||||||
this.config.visible = false;
|
this.config.visible = false;
|
||||||
}
|
}
|
||||||
|
@ -176,8 +197,8 @@ export default {
|
||||||
console.log(err);
|
console.log(err);
|
||||||
this.loading = false;
|
this.loading = false;
|
||||||
}
|
}
|
||||||
}
|
},
|
||||||
}
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
<style lang="scss" scoped></style>
|
<style lang="scss" scoped></style>
|
|
@ -65,6 +65,7 @@
|
||||||
<el-form-item
|
<el-form-item
|
||||||
:label="$t('trials:dicomCfg:form:IsTestOK')"
|
:label="$t('trials:dicomCfg:form:IsTestOK')"
|
||||||
prop="IsTestOK"
|
prop="IsTestOK"
|
||||||
|
style="position: relative"
|
||||||
>
|
>
|
||||||
<el-tag
|
<el-tag
|
||||||
:type="form.IsTestOK ? 'success' : 'danger'"
|
:type="form.IsTestOK ? 'success' : 'danger'"
|
||||||
|
@ -73,21 +74,22 @@
|
||||||
>
|
>
|
||||||
{{ $fd("DicomTest", form.IsTestOK) }}
|
{{ $fd("DicomTest", form.IsTestOK) }}
|
||||||
</el-tag>
|
</el-tag>
|
||||||
|
<!-- 测试DICOM AE -->
|
||||||
|
<el-button
|
||||||
|
v-if="
|
||||||
|
isEdit &&
|
||||||
|
hasPermi(['trials:trials-panel:setting:trial-config:save']) &&
|
||||||
|
form.IsPACSConnect
|
||||||
|
"
|
||||||
|
type="primary"
|
||||||
|
style="position: absolute; right: 100px; top: 0"
|
||||||
|
@click.stop="testSCPServerConnect"
|
||||||
|
>
|
||||||
|
{{ $t("common:button:DicomTest") }}
|
||||||
|
</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</template>
|
</template>
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<!-- 测试DICOM AE -->
|
|
||||||
<el-button
|
|
||||||
v-if="
|
|
||||||
isEdit &&
|
|
||||||
hasPermi(['trials:trials-panel:setting:trial-config:save']) &&
|
|
||||||
form.IsPACSConnect
|
|
||||||
"
|
|
||||||
type="primary"
|
|
||||||
@click.stop="testSCPServerConnect"
|
|
||||||
>
|
|
||||||
{{ $t("common:button:DicomTest") }}
|
|
||||||
</el-button>
|
|
||||||
<!-- 保存 -->
|
<!-- 保存 -->
|
||||||
<el-button
|
<el-button
|
||||||
v-if="
|
v-if="
|
||||||
|
|
|
@ -258,7 +258,7 @@ const searchDataDefault = () => {
|
||||||
TrialSiteKeyInfo: null,
|
TrialSiteKeyInfo: null,
|
||||||
PageIndex: 1,
|
PageIndex: 1,
|
||||||
PageSize: 20,
|
PageSize: 20,
|
||||||
Asc: true,
|
Asc: false,
|
||||||
SortField: "LatestPushTime",
|
SortField: "LatestPushTime",
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -208,7 +208,7 @@ const searchDataDefault = () => {
|
||||||
TrialSiteKeyInfo: null,
|
TrialSiteKeyInfo: null,
|
||||||
PageIndex: 1,
|
PageIndex: 1,
|
||||||
PageSize: 20,
|
PageSize: 20,
|
||||||
Asc: true,
|
Asc: false,
|
||||||
SortField: "StartTime",
|
SortField: "StartTime",
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in New Issue