diff --git a/zdxt-web-client/zdxt-efcode-enforcement-app/src/views/enforcement/my/plan/cp_plan_edit.vue b/zdxt-web-client/zdxt-efcode-enforcement-app/src/views/enforcement/my/plan/cp_plan_edit.vue
index c4f3f2c2..494b3051 100644
--- a/zdxt-web-client/zdxt-efcode-enforcement-app/src/views/enforcement/my/plan/cp_plan_edit.vue
+++ b/zdxt-web-client/zdxt-efcode-enforcement-app/src/views/enforcement/my/plan/cp_plan_edit.vue
@@ -26,13 +26,12 @@
-
+
日常计划
专项计划
-
-
+
上午(9:00-12:00)
下午(14:00-18:00)
其他(18:00-21:00)
@@ -119,7 +118,7 @@
-
+
是
否
@@ -129,7 +128,7 @@
-
+
是
否
@@ -509,7 +508,13 @@ const loadDetail = (id) => {
const data = res.data;
Object.keys(form.value).forEach(key => {
if (data[key] !== undefined && data[key] !== null) {
- form.value[key] = data[key];
+ // 转换数值型字段,确保 radio v-model 与 :name 类型匹配
+ const numericFields = ['planType', 'planTime', 'planActualTime', 'isPublic', 'isUnion'];
+ if (numericFields.includes(key)) {
+ form.value[key] = Number(data[key]);
+ } else {
+ form.value[key] = data[key];
+ }
}
});
// 解析人员
@@ -523,6 +528,7 @@ const loadDetail = (id) => {
phone: i < tels.length ? tels[i] : '',
code: '',
}));
+ syncPersonData();
}
}
});
@@ -1077,27 +1083,20 @@ const doSubmit = () => {
color: #c8c9cc;
}
- :deep(.van-radio) {
- &--disabled {
- opacity: 0.5;
- }
-
- .van-radio__label {
- color: #969799;
- }
- }
-
- :deep(.van-radio__icon) {
- &--disabled {
- background: #ebedf0;
- border-color: #dcdee0;
- }
- }
-
.person-line .person-name,
.person-line .person-phone {
color: #969799;
}
}
}
+
+/* 只读/预填模式 radio 禁用样式 - 不使用 Vant :disabled,用 CSS 防止点击 */
+.readonly-radio {
+ pointer-events: none;
+ opacity: 0.6;
+}
+
+.readonly-radio .van-radio__label {
+ color: #969799 !important;
+}