diff --git a/packages/WidgetFormTable.vue b/packages/WidgetFormTable.vue
index 4e8640e7b816cb43a6e4c484418b7f51b30a7aec..bec11c3e6a67489da5f8a08e606d6d69ac56c864 100644
--- a/packages/WidgetFormTable.vue
+++ b/packages/WidgetFormTable.vue
@@ -224,6 +224,9 @@ export default {
if (data.type === "dynamic") {
data.prop = "fixed_field"
}
+ if (data.type == "title") {
+ delete data.label
+ }
data.cType = column.children.type === "form" ? "form" : "table"
data.subfield = true
delete data.icon
diff --git a/src/api/patient.js b/src/api/patient.js
new file mode 100644
index 0000000000000000000000000000000000000000..90b6f6ca432e644d289bb6f7a9ae1c1caac9357f
--- /dev/null
+++ b/src/api/patient.js
@@ -0,0 +1,180 @@
+import request from "@/utils/request"
+
+/* 患者数据 */
+export function getPatientPage(params = {}) {
+ let url = "/disease-data/data/patient/page?"
+ let keys = Object.keys(params)
+ for (let key of keys) {
+ url += `${encodeURIComponent(key)}=${params[key]}&`
+ }
+ url = url.substring(0, url.length - 1)
+ return request({
+ url: url,
+ method: "get",
+ })
+}
+
+// 随访分页
+export function getPatientFollowPage(params = {}) {
+ let url = "/disease-data/data/patient/follow/page?"
+ let keys = Object.keys(params)
+ for (let key of keys) {
+ url += `${encodeURIComponent(key)}=${params[key]}&`
+ }
+ url = url.substring(0, url.length - 1)
+ return request({
+ url: url,
+ method: "get",
+ })
+}
+
+export function delPatient(id) {
+ return request({
+ url: `/cloud-upms/sys/menu/${id}`,
+ method: "delete",
+ })
+}
+// 填报
+export function addPatient(data = {}, type = "") {
+ return request({
+ url: `/disease-data/data/patient/${type}`,
+ method: "post",
+ data,
+ })
+}
+
+/* 患者数据详情 */
+export function getPatientDetail(params = {}) {
+ return request({
+ url: "/disease-data/data/patient/info",
+ method: "get",
+ params,
+ })
+}
+
+/* 获取表单填报记录list*/
+export function getRecordList(params = {}) {
+ return request({
+ url: "/disease-data/data/patient/form/record/list",
+ method: "get",
+ params,
+ })
+}
+
+// 患者质控列表 分页查询
+
+export function getQcPage(params = {}) {
+ return request({
+ url: "/disease-data/data/qc/page",
+ method: "get",
+ params,
+ })
+}
+
+// 质控
+export function qcPatient(data = {}, type = "") {
+ return request({
+ url: `/disease-data/data/qc`,
+ method: "post",
+ data,
+ })
+}
+
+// 获取九院口腔癌患者信息(同屏对照使用)
+
+export function getJYpatientInfo(params = {}) {
+ return request({
+ url: "/jiuyuan-gather/patient/kqa/info",
+ method: "get",
+ params,
+ })
+}
+
+// 获取九院口腔癌随访表(同屏对照使用)
+
+export function getJYFollowInfo(params = {}) {
+ return request({
+ url: "/jiuyuan-gather/patient/kqa/follow/info",
+ method: "get",
+ params,
+ })
+}
+
+// 获取同济口腔 牙周病(yzb) | 口腔癌(kqa) 患者信息(同屏对照使用)
+
+export function getTJpatientInfo(params = {}, diseases = "yzb") {
+ return request({
+ url: `/tjkq-gather/patient/${diseases}/info`,
+ method: "get",
+ params,
+ })
+}
+
+// 获取九院牙周炎患者信息(同屏对照使用)
+
+export function getJYyzyPatientInfo(params = {}) {
+ return request({
+ url: "/jiuyuan-gather/patient/yzy/info",
+ method: "get",
+ params,
+ })
+}
+
+// 获取急性胰腺炎患者信息/检查信息/术治疗(同屏对照使用)
+export function getJxyzyPatientInfo(type, params = {}) {
+ return request({
+ url: `/changhai-gather/patient/${type}/info`,
+ method: "get",
+ params,
+ })
+}
+// 获取中山医院病历/检查信息/治疗(同屏对照使用)
+export function getZsyzyPatientInfo(params = {}) {
+ return request({
+ url: "/zsyzy-gather/patient/yzb/info",
+ method: "get",
+ params,
+ })
+}
+
+
+
+
+
+// 急性胰腺炎-评分表
+
+// 评分表新增修改
+export function saveApScore(data = {}) {
+ return request({
+ url: `disease-data/ap/score`,
+ method: "post",
+ data,
+ })
+}
+
+// 根据patientId查询评分表数据
+
+export function getApScore(patientId) {
+ return request({
+ url: `/disease-data/ap/score/list?patientId=${patientId}`,
+ method: "get",
+ })
+}
+
+// 根据patientId+type查询(评分趋势图用)
+export function getApScoreTypeList(params = {}) {
+ return request({
+ url: "disease-data/ap/score/type/list",
+ method: "get",
+ params,
+ })
+}
+
+// 根据patientId, scoreId查询detailList
+export function getApScoreDetailList(params = {}) {
+ return request({
+ url: "/disease-data/ap/score/detail/list",
+ method: "get",
+ params,
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
index 497b8919eaf180bf5617d1c141df8cf8b3be761d..ccb787ef77235bfd2b21a2b4aad3678831ef5b05 100644
--- a/src/api/user.js
+++ b/src/api/user.js
@@ -141,25 +141,21 @@ export function ssoLogin(token) {
})
}
-
-
-
//异常反馈
export function getAbnormalList(params) {
return request({
url: `/disease-data/sys/message/exception/feedBack/select/all/msg`,
method: "get",
- params
+ params,
})
}
-
// 修改系统信息-点击单条消息(进行已读操作)
export function setAbnormalStatus(params) {
return request({
url: `/disease-data/sys/message/exception/feedBack/do/read`,
method: "get",
- params
+ params,
})
}
@@ -171,3 +167,11 @@ export function getFeedBackNumber(id) {
})
}
+// 获取B端日志
+export function getLogPage(params = {}) {
+ return request({
+ url: "/cloud-upms/sys/log/page",
+ method: "get",
+ params,
+ })
+}
diff --git a/src/components/FormComponents/CustomForm/FormDynamic.vue b/src/components/FormComponents/CustomForm/FormDynamic.vue
index 0685a349ca9182d293e7d8a947a5299c6ed259b8..b758035185f81b4f9c22f2de01db2449c702882f 100644
--- a/src/components/FormComponents/CustomForm/FormDynamic.vue
+++ b/src/components/FormComponents/CustomForm/FormDynamic.vue
@@ -67,7 +67,19 @@
:is-show-important="isShowImportant"
>
-
+
+
+ {{ c.value }}
+
+
+ 2222
+
diff --git a/src/views/screening/ScreeningAdd.vue b/src/views/screening/ScreeningAdd.vue
new file mode 100644
index 0000000000000000000000000000000000000000..c25906b7280dea6889f0926206abcb58ad79bcaa
--- /dev/null
+++ b/src/views/screening/ScreeningAdd.vue
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
diff --git a/src/views/screening/components/ConfigForms.vue b/src/views/screening/components/ConfigForms.vue
new file mode 100644
index 0000000000000000000000000000000000000000..82b5b88dde6880f0aba3b9f5f06ffce591d2d5d0
--- /dev/null
+++ b/src/views/screening/components/ConfigForms.vue
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/screening/components/FormTab.vue b/src/views/screening/components/FormTab.vue
new file mode 100644
index 0000000000000000000000000000000000000000..82ac820c982433ec0344b7569695f7bd9097796e
--- /dev/null
+++ b/src/views/screening/components/FormTab.vue
@@ -0,0 +1,363 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/screening/components/mixin.js b/src/views/screening/components/mixin.js
new file mode 100644
index 0000000000000000000000000000000000000000..b74e0ab188429eb6cd8e804f8f104c1224cd11c0
--- /dev/null
+++ b/src/views/screening/components/mixin.js
@@ -0,0 +1,101 @@
+import { addPatient } from "@/api/patient.js"
+
+import FormTab from "./FormTab"
+import { mapGetters } from "vuex"
+import { getCurrentFormByType } from "@/api/coop-group.js"
+export default {
+ components: { FormTab },
+ data() {
+ return {
+ activeName: "index0",
+ fromLoading: false,
+ patientStandbyId: null, // 备用id
+ formTabs: [],
+ formTabsList: [],
+ isUpdated: false,
+ name: "",
+ patient_number: "",
+ }
+ },
+ computed: {
+ ...mapGetters({
+ group: ["user/group"],
+ }),
+ },
+
+ methods: {
+ handleTabClick({ index, name }) {
+ const { formId, id, silent } = this.formTabs[index]
+ if (formId && silent) {
+ this.formTabs[index]["silent"] = false //控制是否获取接口数据
+ return
+ }
+ this.formTabs.splice(index, 1, {
+ ...this.formTabsList.find((_) => _.id === id),
+ })
+ },
+ async addPatient(data, done, cb, type) {
+ addPatient(data, type)
+ .then((res) => {
+ this.$message.success("操作成功")
+ if (res.data) {
+ this.isUpdated = true
+ this.patientStandbyId = res.data.patientId
+ if (
+ cb &&
+ Object.prototype.toString.call(cb) === "[object Function]"
+ ) {
+ cb(res)
+ }
+ }
+ })
+ .finally((e) => {
+ done()
+ })
+ },
+
+ // json存储
+ setFormJson(formJson) {
+ const idx = this.activeName.replace("index", "")
+ this.formTabs[idx].formJson = formJson
+ this.formTabsList[idx].formJson = formJson
+ },
+
+ getCurrentFormByType(type = 1) {
+ this.fromLoading = true
+ getCurrentFormByType({
+ type: 1,
+ groupId: this.group.groupId,
+ })
+ .then((res) => {
+ if (res.code === 1) {
+ const formTabs = []
+ this.formTabsList = res.data.map((item, index) => {
+ if (index === 0) {
+ formTabs.push({
+ silent: false,
+ ...item,
+ label: item.tabName,
+ })
+ } else {
+ formTabs.push({
+ id: item.id,
+ silent: true,
+ label: item.tabName,
+ })
+ }
+ return {
+ ...item,
+ silent: false,
+ label: item.tabName,
+ }
+ })
+ this.formTabs = formTabs
+ }
+ })
+ .finally(() => {
+ this.fromLoading = false
+ })
+ },
+ },
+}
diff --git a/src/views/screening/index.vue b/src/views/screening/index.vue
index b70f5713bbe104ee499fd9c379490b2dd3857e88..c71af45dda097b402f5703e67f5c954bf7330dc7 100644
--- a/src/views/screening/index.vue
+++ b/src/views/screening/index.vue
@@ -1,14 +1,208 @@
- 添加筛查新病例
+
+
+
diff --git a/src/views/systems/colla-group/GroupForm.vue b/src/views/systems/colla-group/GroupForm.vue
index c0be4922b919a6ff4b2d3109e2483e2cb12ebfc9..ea2ef38f761ae1ca9b6c201784cc34a3430d07b8 100644
--- a/src/views/systems/colla-group/GroupForm.vue
+++ b/src/views/systems/colla-group/GroupForm.vue
@@ -1,33 +1,33 @@
-
-
-
+
+
+
@@ -184,14 +184,6 @@ export default {
prop: "tabName",
rules: [{ required: true, message: "请输入表单重命名" }],
},
- {
- type: "select",
- label: "机构/科室",
- placeholder: "请选择机构/科室",
- prop: "deptId",
- opts: [],
- rules: [{ required: true, message: "请选择机构/科室" }],
- },
{
type: "select",
label: "类型",
@@ -202,6 +194,7 @@ export default {
},
rules: [{ required: true, message: "请选择类型" }],
},
+
{
type: "select",
label: "填报方式",
@@ -219,6 +212,14 @@ export default {
],
rules: [{ required: true, message: "请选择填报方式" }],
},
+ {
+ type: "select",
+ label: "机构/科室",
+ placeholder: "请选择机构/科室",
+ prop: "deptId",
+ opts: [],
+ },
+
{
type: "select",
label: "对照模板",
@@ -273,7 +274,6 @@ export default {
})
},
-
handleCopyAdd(row) {
const data = Object.assign({}, row)
delete data.id
diff --git a/src/views/systems/database/index.vue b/src/views/systems/database/index.vue
index 89d14e1e0efb259d3255cdf522d4c66315b22ebe..a47bb5ecc3a684cbda3f2f482a32484d700ddd50 100644
--- a/src/views/systems/database/index.vue
+++ b/src/views/systems/database/index.vue
@@ -23,7 +23,7 @@
width="800px"
:close-modal="false"
ref="dialog"
- :title="formEdit.id ? '添加数据库' : '编辑数据库'"
+ :title="formEdit.id ? '编辑数据库' : '添加数据库'"
:form-edit="formEdit"
:form-data="formData"
@handleConfirm="handleConfirm"
diff --git a/src/views/systems/field-config/FieldList.vue b/src/views/systems/field-config/FieldList.vue
index 17b81b0364724b20e724b02c1a0c374d9b0a4b8a..ac1ceb238eb222b245eff853bafeaf2448e37fa4 100644
--- a/src/views/systems/field-config/FieldList.vue
+++ b/src/views/systems/field-config/FieldList.vue
@@ -184,11 +184,6 @@ export default {
minWidth: 120,
value: "fieldCode",
},
- {
- label: "数据库存储表名称",
- minWidth: 120,
- value: "tableName",
- },
{
label: "数据库存字段类型",
minWidth: 120,
@@ -261,6 +256,7 @@ export default {
{ type: "input", display: true },
form
)
+ console.log(this.widgetFormSelect)
this.widgetVisible = true
},
handleConfirm(form) {
diff --git a/src/views/systems/field-config/index.vue b/src/views/systems/field-config/index.vue
index 52ebb56c62836314d49251388a0761fb9a29db9c..54d0c750779fd2cb813684cac55e38d8f6a2290e 100644
--- a/src/views/systems/field-config/index.vue
+++ b/src/views/systems/field-config/index.vue
@@ -38,9 +38,9 @@
- {{ item.name }} | {{ item.code }}
+ {{ item.name }}
{{ item.code }}
diff --git a/src/views/systems/form-config/FormAdd.vue b/src/views/systems/form-config/FormAdd.vue
index 9e9c00df153b652f2f6247068f3ae4d71928a733..306b79f68a69bcc56f987f96a0b9085281292a82 100644
--- a/src/views/systems/form-config/FormAdd.vue
+++ b/src/views/systems/form-config/FormAdd.vue
@@ -100,6 +100,8 @@ export default {
customOldFields.push({
...field,
tableName: item.tableName,
+ tableCode: item.tableCode,
+ tableId: item.tableId,
})
})
diff --git a/src/views/systems/log/index.vue b/src/views/systems/log/index.vue
new file mode 100644
index 0000000000000000000000000000000000000000..ace6611f3ab5b88ba3f27f365de3a1fc5d5e10ff
--- /dev/null
+++ b/src/views/systems/log/index.vue
@@ -0,0 +1,177 @@
+
+
+
+
+
+
+
+
+
+