From 32d68a00f504d2a8c66d1d2f989cbf19ef86bf46 Mon Sep 17 00:00:00 2001
From: miaojiale <1123971748@qq.com>
Date: Tue, 6 Jun 2023 10:43:32 +0800
Subject: [PATCH] =?UTF-8?q?=E8=87=AA=E6=B5=8B=E4=BF=AE=E5=A4=8Dbug?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../CustomForm/FormItemSelf.vue | 6 +-
.../CustomForm/FormItemText.vue | 4 +-
...45\207\206JSON\346\225\260\346\215\256.js" | 191 ++++++++++++++++--
src/views/screening/DraftBox.vue | 3 +
.../screening/components/ConfigForms.vue | 8 +
src/views/screening/components/FormTab.vue | 32 +--
src/views/screening/index.vue | 22 +-
7 files changed, 228 insertions(+), 38 deletions(-)
diff --git a/src/components/FormComponents/CustomForm/FormItemSelf.vue b/src/components/FormComponents/CustomForm/FormItemSelf.vue
index 2c99374..0bcd1f4 100644
--- a/src/components/FormComponents/CustomForm/FormItemSelf.vue
+++ b/src/components/FormComponents/CustomForm/FormItemSelf.vue
@@ -327,7 +327,11 @@
@change="handleChange"
>
{{ age + (age ? "岁" : "") }}
diff --git a/src/components/FormComponents/CustomForm/FormItemText.vue b/src/components/FormComponents/CustomForm/FormItemText.vue
index 0dcb263..203e640 100644
--- a/src/components/FormComponents/CustomForm/FormItemText.vue
+++ b/src/components/FormComponents/CustomForm/FormItemText.vue
@@ -27,9 +27,9 @@
{{ handleUnionName(form[item.prop]) }}
-
+
{{
form[item.prop] | getItemText(item.dicData, item.type)
}}
diff --git "a/src/components/FormComponents/CustomForm/\347\255\233\346\237\245\345\205\245\351\200\211\346\216\222\351\231\244\346\240\207\345\207\206JSON\346\225\260\346\215\256.js" "b/src/components/FormComponents/CustomForm/\347\255\233\346\237\245\345\205\245\351\200\211\346\216\222\351\231\244\346\240\207\345\207\206JSON\346\225\260\346\215\256.js"
index 9f2296b..1178397 100644
--- "a/src/components/FormComponents/CustomForm/\347\255\233\346\237\245\345\205\245\351\200\211\346\216\222\351\231\244\346\240\207\345\207\206JSON\346\225\260\346\215\256.js"
+++ "b/src/components/FormComponents/CustomForm/\347\255\233\346\237\245\345\205\245\351\200\211\346\216\222\351\231\244\346\240\207\345\207\206JSON\346\225\260\346\215\256.js"
@@ -22,13 +22,13 @@ formJson = {
labelWidth: 8,
column: [
{
- type: "input",
+ type: "select",
display: true,
importantField: false,
styles: {},
autoRequired: 0,
personalRequired: 0,
- label: "医联体编号",
+ label: "医联体",
prop: "union_id",
fieldType: "varchar",
fieldLength: "127",
@@ -39,12 +39,18 @@ formJson = {
cType: "",
subfield: false,
span: 24,
- width: 12,
+ width: 24,
required: true,
rules: [{ required: true, message: "医联体编号必须填写" }],
xs: 24,
sm: 24,
md: 24,
+ cascaderItem: [],
+ filterable: true,
+ clearable: true,
+ dicType: "",
+ props: { label: "label", value: "value" },
+ dicData: [],
},
{
type: "input",
@@ -62,8 +68,10 @@ formJson = {
cType: "",
subfield: false,
span: 24,
- width: 12,
- rules: [{ required: true, message: "筛查点编号必须填写" }],
+ width: 24,
+ rules: [
+ { required: true, message: "筛查点编号必须填写", trigger: "blur" },
+ ],
required: true,
xs: 24,
sm: 24,
@@ -79,6 +87,110 @@ formJson = {
display: true,
labelWidth: 8,
column: [
+ {
+ type: "radio",
+ display: true,
+ importantField: false,
+ styles: {},
+ autoRequired: 0,
+ personalRequired: 0,
+ prop: "sex",
+ dicData: [
+ {
+ label: "女",
+ value: "2",
+ id: "1595351964546281474",
+ parentId: "",
+ },
+ {
+ label: "男",
+ value: "1",
+ id: "1595351940139626497",
+ parentId: "",
+ },
+ ],
+ dynamicshSet: [],
+ dicType: "d-sex",
+ props: { label: "label", value: "value" },
+ label: "性别",
+ fieldType: "varchar",
+ fieldLength: "20",
+ tableName: "患者信息",
+ tableCode: "gas_patient_info",
+ tableId: "1595347991491833857",
+ notFilter: false,
+ cType: "",
+ subfield: false,
+ required: true,
+ rules: [{ required: true, message: "请选择性别" }],
+ xs: 24,
+ sm: 24,
+ md: 24,
+ span: 24,
+ width: 24,
+ },
+ {
+ type: "date",
+ display: true,
+ importantField: false,
+ styles: {},
+ format: "yyyy-MM-dd",
+ valueFormat: "yyyy-MM-dd",
+ prop: "survey_time",
+ dicType: "",
+ label: "调查时间",
+ fieldType: "datetime",
+ tableName: "问卷调查",
+ tableCode: "gas_question",
+ tableId: "1597462007689347074",
+ notFilter: false,
+ cType: "",
+ subfield: false,
+ span: 24,
+ rules: [
+ { required: true, message: "调查时间必须填写" },
+ {
+ validator: function checkAge(rule, value, callback) {
+ if (!value) {
+ return callback(new Error("请选择出生日期"))
+ }
+ var sex = sessionStorage.getItem("addSex")
+ var survey_time = sessionStorage.getItem("survey_time")
+ var birthday = sessionStorage.getItem("birthday")
+ if (!sex || !survey_time || !birthday) {
+ return
+ }
+ birthday = new Date(birthday.replace(/-/g, "/"))
+ var d = new Date(survey_time.replace(/-/g, "/"))
+ var age =
+ d.getFullYear() -
+ birthday.getFullYear() -
+ (d.getMonth() < birthday.getMonth() ||
+ (d.getMonth() == birthday.getMonth() &&
+ d.getDate() < birthday.getDate())
+ ? 1
+ : 0)
+ console.log(sex)
+ if (sex == 1) {
+ if (age < 40 || age > 79) {
+ callback(new Error("年龄不符合筛查条件"))
+ } else {
+ callback()
+ }
+ } else {
+ if (age < 50 || age > 79) {
+ callback(new Error("年龄不符合筛查条件"))
+ } else {
+ callback()
+ }
+ }
+ },
+ trigger: "change",
+ },
+ ],
+ required: true,
+ pattern: "checkAge",
+ },
{
type: "date",
display: true,
@@ -98,9 +210,9 @@ formJson = {
cType: "",
subfield: false,
autoRequired: 0,
- personalRequired: 1,
+ personalRequired: 0,
span: 24,
- width: 12,
+ width: 24,
required: true,
rules: [
{ required: true, message: "出生日期必须填写" },
@@ -109,8 +221,14 @@ formJson = {
if (!value) {
return callback(new Error("请选择出生日期"))
}
- var birthday = new Date(value.replace(/-/g))
- var d = new Date()
+ var sex = sessionStorage.getItem("addSex")
+ var survey_time = sessionStorage.getItem("survey_time")
+ var birthday = sessionStorage.getItem("birthday")
+ if (!sex || !survey_time || !birthday) {
+ return
+ }
+ birthday = new Date(birthday.replace(/-/g, "/"))
+ var d = new Date(survey_time.replace(/-/g, "/"))
var age =
d.getFullYear() -
birthday.getFullYear() -
@@ -119,11 +237,19 @@ formJson = {
d.getDate() < birthday.getDate())
? 1
: 0)
- console.log(age)
- if (age < 40 || age > 80) {
- callback(new Error("年龄不符合筛查条件"))
+ console.log(sex)
+ if (sex == 1) {
+ if (age < 40 || age > 79) {
+ callback(new Error("年龄不符合筛查条件"))
+ } else {
+ callback()
+ }
} else {
- callback()
+ if (age < 50 || age > 79) {
+ callback(new Error("年龄不符合筛查条件"))
+ } else {
+ callback()
+ }
}
},
trigger: "change",
@@ -135,6 +261,22 @@ formJson = {
sm: 24,
md: 24,
},
+ {
+ type: "input",
+ display: false,
+ importantField: false,
+ styles: {},
+ prop: "age",
+ label: "年龄",
+ fieldType: "int",
+ fieldLength: "11",
+ tableName: "患者信息",
+ tableCode: "gas_patient_info",
+ tableId: "1595347991491833857",
+ notFilter: false,
+ cType: "",
+ subfield: false,
+ },
{
type: "radio",
display: true,
@@ -170,7 +312,7 @@ formJson = {
cType: "",
subfield: false,
span: 24,
- width: 12,
+ width: 24,
required: true,
rules: [{ required: true, message: "请选择知情同意" }],
},
@@ -224,6 +366,9 @@ formJson = {
xs: 24,
sm: 24,
md: 24,
+ rules: [{ required: true, message: "请选择" }],
+ required: true,
+ pattern: "请选择",
},
{
type: "radio",
@@ -266,6 +411,9 @@ formJson = {
lg: 24,
autoRequired: 0,
personalRequired: 0,
+ rules: [{ required: true, message: "请选择" }],
+ required: true,
+ pattern: "请选择",
},
{
type: "radio",
@@ -307,6 +455,9 @@ formJson = {
sm: 24,
md: 24,
lg: 24,
+ rules: [{ required: true, message: "请选择" }],
+ required: true,
+ pattern: "请选择",
},
{
type: "radio",
@@ -348,6 +499,9 @@ formJson = {
sm: 24,
md: 24,
lg: 24,
+ rules: [{ required: true, message: "请选择" }],
+ required: true,
+ pattern: "请选择",
},
{
type: "radio",
@@ -389,6 +543,9 @@ formJson = {
sm: 24,
md: 24,
lg: 24,
+ rules: [{ required: true, message: "请选择" }],
+ required: true,
+ pattern: "请选择",
},
{
type: "radio",
@@ -429,6 +586,9 @@ formJson = {
sm: 24,
md: 24,
lg: 24,
+ rules: [{ required: true, message: "请选择" }],
+ required: true,
+ pattern: "请选择",
},
{
type: "radio",
@@ -469,6 +629,9 @@ formJson = {
sm: 24,
md: 24,
lg: 24,
+ rules: [{ required: true, message: "请选择" }],
+ required: true,
+ pattern: "请选择",
},
],
},
diff --git a/src/views/screening/DraftBox.vue b/src/views/screening/DraftBox.vue
index 9543b25..177b762 100644
--- a/src/views/screening/DraftBox.vue
+++ b/src/views/screening/DraftBox.vue
@@ -209,6 +209,9 @@ export default {
},
handleAdd({ patientId, name }, index, disabled = false) {
sessionStorage.removeItem("index1Data")
+ sessionStorage.removeItem("survey_time")
+ sessionStorage.removeItem("birthday")
+ this.$store.commit("table/setAge", "")
this.disabled = disabled
this.patientId = patientId || null
this.name = name
diff --git a/src/views/screening/components/ConfigForms.vue b/src/views/screening/components/ConfigForms.vue
index 17a5327..aef0767 100644
--- a/src/views/screening/components/ConfigForms.vue
+++ b/src/views/screening/components/ConfigForms.vue
@@ -337,6 +337,10 @@ export default {
this.addPatient(data, done, cb, () => {
this.$refs.showDialog.dialogVisible = true
this.loading = false
+ sessionStorage.removeItem("birthday")
+ sessionStorage.removeItem("addSex")
+ sessionStorage.removeItem("survey_time")
+ this.$store.commit("table/setAge", "")
})
},
onPrev(done) {
@@ -375,6 +379,10 @@ export default {
},
continueSubmit() {
sessionStorage.removeItem("index1Data")
+ sessionStorage.removeItem("birthday")
+ sessionStorage.removeItem("addSex")
+ sessionStorage.removeItem("survey_time")
+ this.$store.commit("table/setAge", "")
this.activeName = "index0"
// 清空表单
// for (let i = 0; i < this.$refs.formTabs.length; i++) {
diff --git a/src/views/screening/components/FormTab.vue b/src/views/screening/components/FormTab.vue
index 76d0c45..6b4e192 100644
--- a/src/views/screening/components/FormTab.vue
+++ b/src/views/screening/components/FormTab.vue
@@ -418,10 +418,10 @@ export default {
formRecordId: this.formData.formRecordId,
})
.then((res) => {
+ this.formatData(res)
sessionStorage.setItem("addSex", res.data.data.sex)
sessionStorage.setItem("birthday", res.data.data.birthday)
sessionStorage.setItem("survey_time", res.data.data.survey_time)
- this.formatData(res)
})
.finally(() => {
this.loading = false
@@ -440,19 +440,23 @@ export default {
form["YZZKJC"] = JSON.parse(form["YZZKJC"])
}
console.log("form形成", form, this.formData)
- if (form.birthday) {
- let birthday = new Date(form.birthday.replace(/-/g, "/"))
- let date = new Date()
- let age =
- date.getFullYear() -
- birthday.getFullYear() -
- (date.getMonth() < birthday.getMonth() ||
- (date.getMonth() == birthday.getMonth() &&
- date.getDate() < birthday.getDate())
- ? 1
- : 0)
- form.age = age
- }
+ // if (form.survey_time && sessionStorage.getItem("survey_time")) {
+ // let survey_time = sessionStorage.getItem("survey_time")
+ // form.survey_time = survey_time
+ // }
+ // if (form.birthday) {
+ // let birthday = new Date(form.birthday.replace(/-/g, "/"))
+ // let date = new Date(form.survey_time.replace(/-/g, "/"))
+ // let age =
+ // date.getFullYear() -
+ // birthday.getFullYear() -
+ // (date.getMonth() < birthday.getMonth() ||
+ // (date.getMonth() == birthday.getMonth() &&
+ // date.getDate() < birthday.getDate())
+ // ? 1
+ // : 0)
+ // form.age = age
+ // }
if (!cache) {
this.formData.formEdit = form
}
diff --git a/src/views/screening/index.vue b/src/views/screening/index.vue
index 382103e..52d13b6 100644
--- a/src/views/screening/index.vue
+++ b/src/views/screening/index.vue
@@ -317,6 +317,9 @@ export default {
tabDisabled = true
) {
sessionStorage.removeItem("index1Data")
+ sessionStorage.removeItem("survey_time")
+ sessionStorage.removeItem("birthday")
+ this.$store.commit("table/setAge", "")
this.disabled = disabled
this.tabDisabled = tabDisabled
this.patientId = patientId || null
@@ -361,9 +364,11 @@ export default {
this.handleSearch(form)
},
handleSearch(form) {
- this.$router.push({
- query: {},
- })
+ if (this.$route.query.checkStatus) {
+ this.$router.push({
+ query: {},
+ })
+ }
this.listLoading = true
const params = Object.assign(this.cacheForm, form)
const data = {}
@@ -440,14 +445,17 @@ export default {
// if (this.$route.path == "/screening/index") {
// this.tabDisabled = false
// }
+ console.log(this.$route.query.patientId)
if (this.$route.query.patientId) {
let patientId = this.$route.query.patientId
+ this.patientId = patientId
// this.$nextTick(() => {
- this.disabled = true
- this.tabDisabled = false
- this.patientId = patientId || null
- this.isDetail = true
+ this.handleView({
+ patientId: patientId,
+ name: "",
+ })
// })
+ console.log("有数据啊")
}
},
mounted() {
--
2.22.0