hookehuyr

联调表单设置功能

...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
2 * @Author: hookehuyr hookehuyr@gmail.com 2 * @Author: hookehuyr hookehuyr@gmail.com
3 * @Date: 2022-05-26 23:52:36 3 * @Date: 2022-05-26 23:52:36
4 * @LastEditors: hookehuyr hookehuyr@gmail.com 4 * @LastEditors: hookehuyr hookehuyr@gmail.com
5 - * @LastEditTime: 2022-11-23 13:21:48 5 + * @LastEditTime: 2022-12-06 16:13:12
6 * @FilePath: /data-table/src/App.vue 6 * @FilePath: /data-table/src/App.vue
7 * @Description: 7 * @Description:
8 --> 8 -->
...@@ -71,9 +71,8 @@ onMounted(async () => { ...@@ -71,9 +71,8 @@ onMounted(async () => {
71 // wx.error((err) => { 71 // wx.error((err) => {
72 // console.warn(err); 72 // console.warn(err);
73 // }); 73 // });
74 - // const { data } = await getFormSettingAPI({ form_code: $route.query.code });
75 // 数据收集设置 74 // 数据收集设置
76 - const { data } = await getFormSettingAPI({ form_code: "jxrteb" }); 75 + const { data, extend } = await getFormSettingAPI({ form_code: $route.query.code });
77 const form_setting = {}; 76 const form_setting = {};
78 if (data.length) { 77 if (data.length) {
79 data[0].property_list.forEach((prop) => { 78 data[0].property_list.forEach((prop) => {
...@@ -84,20 +83,26 @@ onMounted(async () => { ...@@ -84,20 +83,26 @@ onMounted(async () => {
84 ? prop["setting_value"] 83 ? prop["setting_value"]
85 : prop["setting_value"][0], 84 : prop["setting_value"][0],
86 }; 85 };
87 - Object.assign(form_setting, obj); 86 + Object.assign(form_setting, obj, extend);
88 }); 87 });
89 } 88 }
90 // 缓存表单设置 89 // 缓存表单设置
91 store.changeFormSetting(form_setting); 90 store.changeFormSetting(form_setting);
92 // 判断跳转页面 91 // 判断跳转页面
93 - if (form_setting.enable && form_setting.enable === 0) { 92 + if (form_setting.sjsj_enable && form_setting.sjsj_enable === 0) {
94 - // 开启/停止表单 93 + // 表单已结束
95 - $router.push("/stop"); 94 + $router.push("/stop?status=disable");
95 + }
96 + // 开启后有开始和结束时间,不在时间范围的显示表单还未开始或者已经结束
97 + if (form_setting.sjsj_is_time_range && form_setting.sjsj_is_time_range === 1) {
98 + // 未开始
99 + if (form_setting.server_time < form_setting.sjsj_begin_time) {
100 + $router.push("/stop?status=apply");
101 + }
102 + // 已结束
103 + if (form_setting.server_time > form_setting.sjsj_end_time) {
104 + $router.push("/stop?status=finish");
96 } 105 }
97 - if (form_setting.is_time_range && form_setting.is_time_range === 0) {
98 - // 是否设定开启/停止时间
99 - // $router.push("/");
100 - console.warn("是否设定开启/停止时间");
101 } 106 }
102 }); 107 });
103 </script> 108 </script>
......
1 <!-- 1 <!--
2 * @Date: 2022-07-18 10:22:22 2 * @Date: 2022-07-18 10:22:22
3 * @LastEditors: hookehuyr hookehuyr@gmail.com 3 * @LastEditors: hookehuyr hookehuyr@gmail.com
4 - * @LastEditTime: 2022-12-06 15:34:23 4 + * @LastEditTime: 2022-12-06 16:13:57
5 * @FilePath: /data-table/src/views/index.vue 5 * @FilePath: /data-table/src/views/index.vue
6 * @Description: 首页 6 * @Description: 首页
7 --> 7 -->
8 <template> 8 <template>
9 <van-notice-bar 9 <van-notice-bar
10 - v-if="notice_text" 10 + v-if="formSetting.sjsj_is_count_down"
11 left-icon="volume-o" 11 left-icon="volume-o"
12 :text="notice_text" 12 :text="notice_text"
13 scrollable 13 scrollable
...@@ -239,14 +239,12 @@ onMounted(async () => { ...@@ -239,14 +239,12 @@ onMounted(async () => {
239 // createComponentType(mockData.value); 239 // createComponentType(mockData.value);
240 createComponentType(formData.value); 240 createComponentType(formData.value);
241 // 241 //
242 - // console.warn(formSetting.value); 242 + notice_text.value = `表单报名将在 ${formSetting.value.sjsj_end_time} 后结束`;
243 - notice_text.value = "表单报名将在2022-12-21 12:32后结束";
244 }); 243 });
245 244
246 // 操作绑定自定义字段回调 245 // 操作绑定自定义字段回调
247 const onActive = (item) => { 246 const onActive = (item) => {
248 if (item.key === "area_picker") { 247 if (item.key === "area_picker") {
249 - console.warn(item);
250 postData.value[item.filed_name] = item.value; 248 postData.value[item.filed_name] = item.value;
251 } 249 }
252 if (item.key === "image_uploader") { 250 if (item.key === "image_uploader") {
......
...@@ -15,7 +15,11 @@ ...@@ -15,7 +15,11 @@
15 style="vertical-align: bottom" 15 style="vertical-align: bottom"
16 :src="icon_success" 16 :src="icon_success"
17 /> 17 />
18 - <p style="font-size: 1.05rem; margin: 0.5rem; font-weight: bold">表单停止提交</p> 18 + <p style="font-size: 1.05rem; margin: 0.5rem; font-weight: bold">
19 + <span v-if="status === 'apply'">表单未开始</span>
20 + <span v-if="status === 'finish'">表单已结束</span>
21 + <span v-if="status === 'disable'">表单已关闭</span>
22 + </p>
19 <!-- <p style="font-size: 0.9rem; margin-bottom: 0.5rem">您的作品正在审核中</p> --> 23 <!-- <p style="font-size: 0.9rem; margin-bottom: 0.5rem">您的作品正在审核中</p> -->
20 <!-- <p style="font-size: 0.9rem">请耐心等待~~</p> --> 24 <!-- <p style="font-size: 0.9rem">请耐心等待~~</p> -->
21 </div> 25 </div>
...@@ -54,6 +58,8 @@ const styleObj = { ...@@ -54,6 +58,8 @@ const styleObj = {
54 color: "#FFFFFF", 58 color: "#FFFFFF",
55 }; 59 };
56 60
61 +const status = $route.query.status;
62 +
57 onMounted(() => {}); 63 onMounted(() => {});
58 64
59 const handle = () => { 65 const handle = () => {
......