Bladeren bron

修改跳转

yangg 1 maand geleden
bovenliggende
commit
a7c49ced0d

+ 1 - 1
pages/Personal/Personal.vue

@@ -682,7 +682,7 @@ import { apiBaseUrl } from '@/common/config.js';
 				threePeriodIndex: -1,
 				politicalOptions: ['群众', '共青团员', '中共党员', '民主党派'],
 				politicalIndex: -1,
-				ethnicOptions: ['汉族', '蒙古族', '回族', '藏族', '维吾尔族', '其他'],
+				ethnicOptions: ['汉族', '壮族', '回族', '满族', '维吾尔族', '苗族', '彝族', '土家族', '藏族', '蒙古族', '侗族', '布依族', '瑶族', '白族', '朝鲜族', '哈尼族', '黎族', '哈萨克族', '傣族', '畲族', '其他'],
 				ethnicIndex: -1,
 				marriageOptions: ['未婚', '已婚', '离异', '丧偶'],
 				marriageIndex: -1,

+ 84 - 10
pages/camera/camera.vue

@@ -1162,16 +1162,8 @@
 						this.proceedToNextGroup();
 					}
 				} else {
-					// 所有组都完成了,跳转到下一个页面
-					if(this.positionConfig.enable_posture_check){
-						uni.navigateTo({
-							url: '/pages/posture-guide/posture-guide'
-						});
-					}else{
-						uni.navigateTo({
-							url: '/pages/interview-question/interview-question'
-						});
-					}
+					// 所有组都完成了,根据配置跳转到下一个页面
+					this.navigateToNextPage();
 				}
 			},
 
@@ -1198,6 +1190,88 @@
 				this.showResult = false;
 			},
 
+			// 根据配置决定跳转到下一个页面
+			navigateToNextPage() {
+				// 获取本地存储的配置数据
+				let configData = {};
+				try {
+					const configStr = uni.getStorageSync('configData');
+					if (configStr && configStr.trim()) {
+						configData = JSON.parse(configStr);
+					}
+				} catch (error) {
+					console.error('解析configData失败:', error);
+					configData = {};
+				}
+
+				console.log('camera页面获取到的配置数据:', configData);
+
+				// 获取问题形式开关配置
+				const questionFormSwitches = configData?.question_form_switches || {};
+				
+				// 肢体检测配置
+				const hasPostureDetection =configData?.enable_posture_check;
+				// 候选人提问配置
+				const hasCandidateQuestions = questionFormSwitches.enable_candidate_questions;
+
+				let targetUrl = '/pages/success/success'; // 默认跳转到成功页面
+				let pageName = 'success页面';
+
+				console.log('camera页面配置检查:', {
+					hasPostureDetection,
+					hasCandidateQuestions,
+					questionFormSwitches
+				});
+
+				// 根据配置决定跳转页面(参考identity-verify页面的逻辑)
+				if (hasPostureDetection) {
+					// 如果启用了肢体检测,跳转到posture-guide页面
+					targetUrl = '/pages/posture-guide/posture-guide';
+					pageName = 'posture-guide页面';
+				} else if (hasCandidateQuestions) {
+					// 如果启用了候选人提问,跳转到interview-question页面
+					targetUrl = '/pages/interview-question/interview-question';
+					pageName = 'interview-question页面';
+				}else{
+					targetUrl = '/pages/success/success';
+					pageName = 'success页面';
+				}
+
+				console.log('camera页面根据配置跳转到:', targetUrl);
+
+				// 执行页面跳转
+				uni.navigateTo({
+					url: targetUrl,
+					success: () => {
+						console.log(`成功跳转到${pageName}`);
+					},
+					fail: (err) => {
+						console.error(`跳转到${pageName}失败:`, err);
+						
+						// 如果跳转失败,尝试使用redirectTo
+						uni.redirectTo({
+							url: targetUrl,
+							fail: (redirectErr) => {
+								console.error(`重定向到${pageName}也失败:`, redirectErr);
+								
+								// 最后尝试使用switchTab(如果是tabBar页面)
+								uni.switchTab({
+									url: targetUrl,
+									fail: (switchErr) => {
+										console.error('所有跳转方式都失败:', switchErr);
+										
+										// 如果所有跳转方式都失败,尝试返回上一页
+										uni.navigateBack({
+											delta: 1
+										});
+									}
+								});
+							}
+						});
+					}
+				});
+			},
+
 			// 保存当前题目的答案
 			saveAnswer() {
 				let answer;

+ 59 - 8
pages/identity-verify/identity-verify.vue

@@ -5041,24 +5041,75 @@ export default {
             }
           });
         } else {
-          // 其他职位ID跳转到camera页面
+          // 获取本地存储的配置数据
+          let configData = {};
+          try {
+            const configStr = uni.getStorageSync('configData');
+            if (configStr && configStr.trim()) {
+              configData = JSON.parse(configStr);
+            }
+          } catch (error) {
+            console.error('解析configData失败:', error);
+            configData = {};
+          }
+
+          console.log('获取到的配置数据:', configData);
+
+          // 获取问题形式开关配置
+          const questionFormSwitches = configData?.question_form_switches || {};
+          
+          // 检查是否启用了选择题相关功能
+          const hasChoiceQuestions = questionFormSwitches.enable_fill_blank || 
+                                    questionFormSwitches.enable_image_choice || 
+                                    questionFormSwitches.enable_multiple_choice || 
+                                    questionFormSwitches.enable_single_choice;
+          
+          // 检查是否启用了评分题功能
+          const hasScoringQuestions = questionFormSwitches.enable_scoring_questions;
+          //肢体检测
+          const hasPostureDetection = configData?.enable_posture_check;
+          //候选人提问 
+          const hasCandidateQuestions = questionFormSwitches.enable_candidate_questions;
+          let targetUrl = '/pages/camera/camera'; // 默认跳转到camera页面
+          let pageName = 'camera页面';
+          console.log('当前配置数据:', hasScoringQuestions);
+          // 根据配置决定跳转页面
+          if (hasChoiceQuestions) {
+            // 如果启用了评分题,跳转到posture-guide页面
+            targetUrl = '/pages/camera/camera';
+            pageName = 'posture-guide页面';
+          }else if(hasPostureDetection){
+            targetUrl = '/pages/posture-guide/posture-guide';
+            pageName = 'posture-guide页面';
+          }else if(hasCandidateQuestions){
+            targetUrl = '/pages/interview-question/interview-question';
+            pageName = 'interview-question页面';
+          } else {
+            // 如果启用了选择题相关功能,跳转到camera页面
+            targetUrl = '/pages/success/success';
+            pageName = 'camera页面';
+          }
+
+          console.log('根据配置跳转到:', targetUrl, '配置项:', questionFormSwitches);
+
+          // 执行页面跳转
           uni.navigateTo({
-            url: '/pages/camera/camera',
+            url: targetUrl,
             success: () => {
-              console.log('成功跳转到camera页面');
+              console.log(`成功跳转到${pageName}`);
             },
             fail: (err) => {
-              console.error('跳转到camera页面失败:', err);
+              console.error(`跳转到${pageName}失败:`, err);
               
               // 如果跳转失败,尝试使用redirectTo
               uni.redirectTo({
-                url: '/pages/camera/camera',
+                url: targetUrl,
                 fail: (redirectErr) => {
-                  console.error('重定向到camera页面也失败:', redirectErr);
+                  console.error(`重定向到${pageName}也失败:`, redirectErr);
                   
-                  // 最后尝试使用switchTab(如果camera是tabBar页面)
+                  // 最后尝试使用switchTab(如果是tabBar页面)
                   uni.switchTab({
-                    url: '/pages/camera/camera',
+                    url: targetUrl,
                     fail: (switchErr) => {
                       console.error('所有跳转方式都失败:', switchErr);
                       

+ 86 - 2
pages/interview_retake/interview_retake.vue

@@ -212,13 +212,97 @@ export default {
 				success: () => {
 					// 延迟跳转到成功页面
 					setTimeout(() => {
-						uni.redirectTo({
+						/* uni.redirectTo({
 							url: '/pages/interview-question/interview-question'//'/pages/success/success?type=retake&message=手部照片补拍完成,请等待系统审核'
-						});
+						}); */
+						this.navigateToNextPage();
 					}, 1500);
 				}
 			});
 		},
+		// 根据配置决定跳转到下一个页面
+		navigateToNextPage() {
+				// 获取本地存储的配置数据
+				let configData = {};
+				try {
+					const configStr = uni.getStorageSync('configData');
+					if (configStr && configStr.trim()) {
+						configData = JSON.parse(configStr);
+					}
+				} catch (error) {
+					console.error('解析configData失败:', error);
+					configData = {};
+				}
+
+				console.log('interview_success页面获取到的配置数据:', configData);
+
+				// 获取问题形式开关配置
+				const questionFormSwitches = configData?.question_form_switches || {};
+				
+				// 检查是否启用了选择题相关功能
+				const hasChoiceQuestions = questionFormSwitches.enable_fill_blank || 
+										  questionFormSwitches.enable_image_choice || 
+										  questionFormSwitches.enable_multiple_choice || 
+										  questionFormSwitches.enable_single_choice;
+				
+				// 肢体检测配置
+				const hasPostureDetection = configData?.enable_posture_check;
+				// 候选人提问配置
+				const hasCandidateQuestions = questionFormSwitches.enable_candidate_questions;
+
+				let targetUrl = '/pages/success/success'; // 默认跳转到成功页面
+				let pageName = 'success页面';
+
+				console.log('interview_success页面配置检查:', {
+					hasChoiceQuestions,
+					hasPostureDetection,
+					hasCandidateQuestions,
+					questionFormSwitches
+				});
+
+				if (hasCandidateQuestions) {
+					// 如果启用了候选人提问,跳转到interview-question页面
+					targetUrl = '/pages/interview-question/interview-question';
+					pageName = 'interview-question页面';
+				}else{
+					targetUrl = '/pages/success/success';
+					pageName = 'success页面';
+				}
+
+				console.log('interview_success页面根据配置跳转到:', targetUrl);
+
+				// 执行页面跳转
+				uni.reLaunch({
+					url: targetUrl,
+					success: () => {
+						console.log(`成功跳转到${pageName}`);
+					},
+					fail: (err) => {
+						console.error(`跳转到${pageName}失败:`, err);
+						
+						// 如果跳转失败,尝试使用navigateTo
+						uni.navigateTo({
+							url: targetUrl,
+							fail: (navigateErr) => {
+								console.error(`导航到${pageName}也失败:`, navigateErr);
+								
+								// 最后尝试使用redirectTo
+								uni.redirectTo({
+									url: targetUrl,
+									fail: (redirectErr) => {
+										console.error('所有跳转方式都失败:', redirectErr);
+										
+										// 如果所有跳转方式都失败,跳转到默认成功页面
+										uni.reLaunch({
+											url: '/pages/success/success'
+										});
+									}
+								});
+							}
+						});
+					}
+				});
+			},
 		handleError(e) {
 			console.error('相机错误:', e.detail);
 			uni.showToast({

+ 86 - 3
pages/interview_success/interview_success.vue

@@ -136,9 +136,8 @@ import { apiBaseUrl } from '@/common/config.js'; // 导入基础URL配置
 			},
 			goNext() {
 				if (!this.hasFailedItems) {
-					uni.reLaunch({
-						url: '/pages/interview-question/interview-question'//'/pages/success/success'
-					})
+					// 根据配置决定跳转到下一个页面
+					this.navigateToNextPage();
 				} else {
 					// 使用 redirectTo 替代 navigateTo
 					uni.reLaunch({
@@ -146,6 +145,90 @@ import { apiBaseUrl } from '@/common/config.js'; // 导入基础URL配置
 							 JSON.stringify(this.failedItems)
 					})
 				}
+			},
+
+			// 根据配置决定跳转到下一个页面
+			navigateToNextPage() {
+				// 获取本地存储的配置数据
+				let configData = {};
+				try {
+					const configStr = uni.getStorageSync('configData');
+					if (configStr && configStr.trim()) {
+						configData = JSON.parse(configStr);
+					}
+				} catch (error) {
+					console.error('解析configData失败:', error);
+					configData = {};
+				}
+
+				console.log('interview_success页面获取到的配置数据:', configData);
+
+				// 获取问题形式开关配置
+				const questionFormSwitches = configData?.question_form_switches || {};
+				
+				// 检查是否启用了选择题相关功能
+				const hasChoiceQuestions = questionFormSwitches.enable_fill_blank || 
+										  questionFormSwitches.enable_image_choice || 
+										  questionFormSwitches.enable_multiple_choice || 
+										  questionFormSwitches.enable_single_choice;
+				
+				// 肢体检测配置
+				const hasPostureDetection = configData?.enable_posture_check;
+				// 候选人提问配置
+				const hasCandidateQuestions = questionFormSwitches.enable_candidate_questions;
+
+				let targetUrl = '/pages/success/success'; // 默认跳转到成功页面
+				let pageName = 'success页面';
+
+				console.log('interview_success页面配置检查:', {
+					hasChoiceQuestions,
+					hasPostureDetection,
+					hasCandidateQuestions,
+					questionFormSwitches
+				});
+
+				if (hasCandidateQuestions) {
+					// 如果启用了候选人提问,跳转到interview-question页面
+					targetUrl = '/pages/interview-question/interview-question';
+					pageName = 'interview-question页面';
+				}else{
+					targetUrl = '/pages/success/success';
+					pageName = 'success页面';
+				}
+
+				console.log('interview_success页面根据配置跳转到:', targetUrl);
+
+				// 执行页面跳转
+				uni.reLaunch({
+					url: targetUrl,
+					success: () => {
+						console.log(`成功跳转到${pageName}`);
+					},
+					fail: (err) => {
+						console.error(`跳转到${pageName}失败:`, err);
+						
+						// 如果跳转失败,尝试使用navigateTo
+						uni.navigateTo({
+							url: targetUrl,
+							fail: (navigateErr) => {
+								console.error(`导航到${pageName}也失败:`, navigateErr);
+								
+								// 最后尝试使用redirectTo
+								uni.redirectTo({
+									url: targetUrl,
+									fail: (redirectErr) => {
+										console.error('所有跳转方式都失败:', redirectErr);
+										
+										// 如果所有跳转方式都失败,跳转到默认成功页面
+										uni.reLaunch({
+											url: '/pages/success/success'
+										});
+									}
+								});
+							}
+						});
+					}
+				});
 			}
 		}
 	}

+ 4 - 3
pages/job-detail/job-detail.vue

@@ -9,7 +9,7 @@
       <view class="job-requirements">
         <view class="requirement-item">
           <view class="dot"></view>
-          <text style="width: 90%;">{{ formatLocation(jobDetail.location) }}</text>
+          <text style="width: 100%;">{{ formatLocation(jobDetail.location) }}</text>
         </view>
         <view class="requirement-item">
           <view class="time-icon"></view>
@@ -165,7 +165,7 @@ export default {
             id: data.data.id,
             title: data.data.title || '',
             salary: data.data.salary_range ? `${data.data.salary_range}/月` : '',
-            department: `${data.data.department || ''} ${data.data.job_type === 1 ? '全职' : '兼职'}`,
+            department: data.data.job_type_name,//`${data.data.department || ''} ${data.data.job_type === 1 ? '全职' : '兼职'}`,
             location: data.data.location || '',
             experience: data.data.work_experience_required || '不限',
             benefits: data.data.competency_tags || ['五险一金', '带薪年假', '定期体检'],
@@ -441,7 +441,8 @@ export default {
 
 .job-requirements {
   display: flex;
-  align-items: center;
+  flex-direction: column;
+  align-items: flex-start;
   flex-wrap: wrap;
   margin-bottom: 20rpx;
 }

+ 4 - 4
unpackage/dist/cache/.vite/deps/_metadata.json

@@ -1,8 +1,8 @@
 {
-  "hash": "09013781",
-  "configHash": "8e8063da",
-  "lockfileHash": "e3b0c442",
-  "browserHash": "b11f3f04",
+  "hash": "2991c65d",
+  "configHash": "7636ee25",
+  "lockfileHash": "04d75623",
+  "browserHash": "ff97220b",
   "optimized": {},
   "chunks": {}
 }

+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/Personal/Personal.js

@@ -47,7 +47,7 @@ const _sfc_main = {
       threePeriodIndex: -1,
       politicalOptions: ["群众", "共青团员", "中共党员", "民主党派"],
       politicalIndex: -1,
-      ethnicOptions: ["汉族", "蒙古族", "回族", "藏族", "维吾尔族", "其他"],
+      ethnicOptions: ["汉族", "壮族", "回族", "满族", "维吾尔族", "苗族", "彝族", "土家族", "藏族", "蒙古族", "侗族", "布依族", "瑶族", "白族", "朝鲜族", "哈尼族", "黎族", "哈萨克族", "傣族", "畲族", "其他"],
       ethnicIndex: -1,
       marriageOptions: ["未婚", "已婚", "离异", "丧偶"],
       marriageIndex: -1,

+ 60 - 9
unpackage/dist/dev/mp-weixin/pages/camera/camera.js

@@ -779,15 +779,7 @@ const _sfc_main = {
           this.proceedToNextGroup();
         }
       } else {
-        if (this.positionConfig.enable_posture_check) {
-          common_vendor.index.navigateTo({
-            url: "/pages/posture-guide/posture-guide"
-          });
-        } else {
-          common_vendor.index.navigateTo({
-            url: "/pages/interview-question/interview-question"
-          });
-        }
+        this.navigateToNextPage();
       }
     },
     // 添加新的方法处理弹窗确认
@@ -807,6 +799,65 @@ const _sfc_main = {
       this.selectedOptions = [];
       this.showResult = false;
     },
+    // 根据配置决定跳转到下一个页面
+    navigateToNextPage() {
+      let configData = {};
+      try {
+        const configStr = common_vendor.index.getStorageSync("configData");
+        if (configStr && configStr.trim()) {
+          configData = JSON.parse(configStr);
+        }
+      } catch (error) {
+        console.error("解析configData失败:", error);
+        configData = {};
+      }
+      console.log("camera页面获取到的配置数据:", configData);
+      const questionFormSwitches = (configData == null ? void 0 : configData.question_form_switches) || {};
+      const hasPostureDetection = configData == null ? void 0 : configData.enable_posture_check;
+      const hasCandidateQuestions = questionFormSwitches.enable_candidate_questions;
+      let targetUrl = "/pages/success/success";
+      let pageName = "success页面";
+      console.log("camera页面配置检查:", {
+        hasPostureDetection,
+        hasCandidateQuestions,
+        questionFormSwitches
+      });
+      if (hasPostureDetection) {
+        targetUrl = "/pages/posture-guide/posture-guide";
+        pageName = "posture-guide页面";
+      } else if (hasCandidateQuestions) {
+        targetUrl = "/pages/interview-question/interview-question";
+        pageName = "interview-question页面";
+      } else {
+        targetUrl = "/pages/success/success";
+        pageName = "success页面";
+      }
+      console.log("camera页面根据配置跳转到:", targetUrl);
+      common_vendor.index.navigateTo({
+        url: targetUrl,
+        success: () => {
+          console.log(`成功跳转到${pageName}`);
+        },
+        fail: (err) => {
+          console.error(`跳转到${pageName}失败:`, err);
+          common_vendor.index.redirectTo({
+            url: targetUrl,
+            fail: (redirectErr) => {
+              console.error(`重定向到${pageName}也失败:`, redirectErr);
+              common_vendor.index.switchTab({
+                url: targetUrl,
+                fail: (switchErr) => {
+                  console.error("所有跳转方式都失败:", switchErr);
+                  common_vendor.index.navigateBack({
+                    delta: 1
+                  });
+                }
+              });
+            }
+          });
+        }
+      });
+    },
     // 保存当前题目的答案
     saveAnswer() {
       let answer;

+ 8 - 3
unpackage/dist/dev/mp-weixin/pages/demo/demo.js

@@ -313,7 +313,7 @@ const _sfc_main = {
     resetFollowUpAskedCount(jobPositionQuestionId) {
       if (!jobPositionQuestionId)
         return;
-      this.followUpAskedCountMap[jobPositionQuestionId] = 0;
+      this.followUpAskedCountMap[jobPositionQuestionId] = 1;
       console.log(`重置问题 ${jobPositionQuestionId} 的追问次数为: 0`);
     },
     incrementFollowUpCount(jobPositionQuestionId) {
@@ -1897,8 +1897,8 @@ const _sfc_main = {
           console.log("常规问题回答完成,准备检查追问,父问题ID:", this.parentJobPositionQuestionId);
           if (this.parentJobPositionQuestionId) {
             const currentQuestion = this.getCurrentQuestionByIndex(this.currentVideoIndex);
-            if (currentQuestion && typeof currentQuestion.follow_up_limit !== "undefined") {
-              this.setFollowUpLimit(this.parentJobPositionQuestionId, currentQuestion.follow_up_limit);
+            if (currentQuestion && typeof currentQuestion.follow_up_count !== "undefined") {
+              this.setFollowUpLimit(this.parentJobPositionQuestionId, currentQuestion.follow_up_count);
             } else if (typeof this.defaultFollowUpLimit !== "undefined") {
               this.setFollowUpLimit(this.parentJobPositionQuestionId, this.defaultFollowUpLimit);
             }
@@ -2894,6 +2894,11 @@ const _sfc_main = {
           const videoIndex = this.videoList.length - 1;
           this[`question${videoIndex}Subtitles`] = subtitleArray;
           this.subtitleMap[question.digital_human_video_url] = subtitleArray;
+          if (question.job_position_question_id) {
+            const followUpCount = question.follow_up_count || 0;
+            this.setFollowUpLimit(question.job_position_question_id, followUpCount);
+            console.log(`设置问题 ${question.job_position_question_id} 的追问次数限制为: ${followUpCount}`);
+          }
         }
       });
       if (this.videoList.length <= 1)

+ 39 - 6
unpackage/dist/dev/mp-weixin/pages/identity-verify/identity-verify.js

@@ -3567,19 +3567,52 @@ const _sfc_main = {
           }
         });
       } else {
+        let configData = {};
+        try {
+          const configStr = common_vendor.index.getStorageSync("configData");
+          if (configStr && configStr.trim()) {
+            configData = JSON.parse(configStr);
+          }
+        } catch (error) {
+          console.error("解析configData失败:", error);
+          configData = {};
+        }
+        console.log("获取到的配置数据:", configData);
+        const questionFormSwitches = (configData == null ? void 0 : configData.question_form_switches) || {};
+        const hasChoiceQuestions = questionFormSwitches.enable_fill_blank || questionFormSwitches.enable_image_choice || questionFormSwitches.enable_multiple_choice || questionFormSwitches.enable_single_choice;
+        const hasScoringQuestions = questionFormSwitches.enable_scoring_questions;
+        const hasPostureDetection = configData == null ? void 0 : configData.enable_posture_check;
+        const hasCandidateQuestions = questionFormSwitches.enable_candidate_questions;
+        let targetUrl = "/pages/camera/camera";
+        let pageName = "camera页面";
+        console.log("当前配置数据:", hasScoringQuestions);
+        if (hasChoiceQuestions) {
+          targetUrl = "/pages/camera/camera";
+          pageName = "posture-guide页面";
+        } else if (hasPostureDetection) {
+          targetUrl = "/pages/posture-guide/posture-guide";
+          pageName = "posture-guide页面";
+        } else if (hasCandidateQuestions) {
+          targetUrl = "/pages/interview-question/interview-question";
+          pageName = "interview-question页面";
+        } else {
+          targetUrl = "/pages/success/success";
+          pageName = "camera页面";
+        }
+        console.log("根据配置跳转到:", targetUrl, "配置项:", questionFormSwitches);
         common_vendor.index.navigateTo({
-          url: "/pages/camera/camera",
+          url: targetUrl,
           success: () => {
-            console.log("成功跳转到camera页面");
+            console.log(`成功跳转到${pageName}`);
           },
           fail: (err) => {
-            console.error("跳转到camera页面失败:", err);
+            console.error(`跳转到${pageName}失败:`, err);
             common_vendor.index.redirectTo({
-              url: "/pages/camera/camera",
+              url: targetUrl,
               fail: (redirectErr) => {
-                console.error("重定向到camera页面也失败:", redirectErr);
+                console.error(`重定向到${pageName}也失败:`, redirectErr);
                 common_vendor.index.switchTab({
-                  url: "/pages/camera/camera",
+                  url: targetUrl,
                   fail: (switchErr) => {
                     console.error("所有跳转方式都失败:", switchErr);
                     common_vendor.index.navigateBack({

+ 59 - 4
unpackage/dist/dev/mp-weixin/pages/interview_retake/interview_retake.js

@@ -147,14 +147,69 @@ const _sfc_main = {
         duration: 1500,
         success: () => {
           setTimeout(() => {
-            common_vendor.index.redirectTo({
-              url: "/pages/interview-question/interview-question"
-              //'/pages/success/success?type=retake&message=手部照片补拍完成,请等待系统审核'
-            });
+            this.navigateToNextPage();
           }, 1500);
         }
       });
     },
+    // 根据配置决定跳转到下一个页面
+    navigateToNextPage() {
+      let configData = {};
+      try {
+        const configStr = common_vendor.index.getStorageSync("configData");
+        if (configStr && configStr.trim()) {
+          configData = JSON.parse(configStr);
+        }
+      } catch (error) {
+        console.error("解析configData失败:", error);
+        configData = {};
+      }
+      console.log("interview_success页面获取到的配置数据:", configData);
+      const questionFormSwitches = (configData == null ? void 0 : configData.question_form_switches) || {};
+      const hasChoiceQuestions = questionFormSwitches.enable_fill_blank || questionFormSwitches.enable_image_choice || questionFormSwitches.enable_multiple_choice || questionFormSwitches.enable_single_choice;
+      const hasPostureDetection = configData == null ? void 0 : configData.enable_posture_check;
+      const hasCandidateQuestions = questionFormSwitches.enable_candidate_questions;
+      let targetUrl = "/pages/success/success";
+      let pageName = "success页面";
+      console.log("interview_success页面配置检查:", {
+        hasChoiceQuestions,
+        hasPostureDetection,
+        hasCandidateQuestions,
+        questionFormSwitches
+      });
+      if (hasCandidateQuestions) {
+        targetUrl = "/pages/interview-question/interview-question";
+        pageName = "interview-question页面";
+      } else {
+        targetUrl = "/pages/success/success";
+        pageName = "success页面";
+      }
+      console.log("interview_success页面根据配置跳转到:", targetUrl);
+      common_vendor.index.reLaunch({
+        url: targetUrl,
+        success: () => {
+          console.log(`成功跳转到${pageName}`);
+        },
+        fail: (err) => {
+          console.error(`跳转到${pageName}失败:`, err);
+          common_vendor.index.navigateTo({
+            url: targetUrl,
+            fail: (navigateErr) => {
+              console.error(`导航到${pageName}也失败:`, navigateErr);
+              common_vendor.index.redirectTo({
+                url: targetUrl,
+                fail: (redirectErr) => {
+                  console.error("所有跳转方式都失败:", redirectErr);
+                  common_vendor.index.reLaunch({
+                    url: "/pages/success/success"
+                  });
+                }
+              });
+            }
+          });
+        }
+      });
+    },
     handleError(e) {
       console.error("相机错误:", e.detail);
       common_vendor.index.showToast({

+ 59 - 4
unpackage/dist/dev/mp-weixin/pages/interview_success/interview_success.js

@@ -93,15 +93,70 @@ const _sfc_main = {
     },
     goNext() {
       if (!this.hasFailedItems) {
-        common_vendor.index.reLaunch({
-          url: "/pages/interview-question/interview-question"
-          //'/pages/success/success'
-        });
+        this.navigateToNextPage();
       } else {
         common_vendor.index.reLaunch({
           url: "/pages/interview_retake/interview_retake?failedItems=" + JSON.stringify(this.failedItems)
         });
       }
+    },
+    // 根据配置决定跳转到下一个页面
+    navigateToNextPage() {
+      let configData = {};
+      try {
+        const configStr = common_vendor.index.getStorageSync("configData");
+        if (configStr && configStr.trim()) {
+          configData = JSON.parse(configStr);
+        }
+      } catch (error) {
+        console.error("解析configData失败:", error);
+        configData = {};
+      }
+      console.log("interview_success页面获取到的配置数据:", configData);
+      const questionFormSwitches = (configData == null ? void 0 : configData.question_form_switches) || {};
+      const hasChoiceQuestions = questionFormSwitches.enable_fill_blank || questionFormSwitches.enable_image_choice || questionFormSwitches.enable_multiple_choice || questionFormSwitches.enable_single_choice;
+      const hasPostureDetection = configData == null ? void 0 : configData.enable_posture_check;
+      const hasCandidateQuestions = questionFormSwitches.enable_candidate_questions;
+      let targetUrl = "/pages/success/success";
+      let pageName = "success页面";
+      console.log("interview_success页面配置检查:", {
+        hasChoiceQuestions,
+        hasPostureDetection,
+        hasCandidateQuestions,
+        questionFormSwitches
+      });
+      if (hasCandidateQuestions) {
+        targetUrl = "/pages/interview-question/interview-question";
+        pageName = "interview-question页面";
+      } else {
+        targetUrl = "/pages/success/success";
+        pageName = "success页面";
+      }
+      console.log("interview_success页面根据配置跳转到:", targetUrl);
+      common_vendor.index.reLaunch({
+        url: targetUrl,
+        success: () => {
+          console.log(`成功跳转到${pageName}`);
+        },
+        fail: (err) => {
+          console.error(`跳转到${pageName}失败:`, err);
+          common_vendor.index.navigateTo({
+            url: targetUrl,
+            fail: (navigateErr) => {
+              console.error(`导航到${pageName}也失败:`, navigateErr);
+              common_vendor.index.redirectTo({
+                url: targetUrl,
+                fail: (redirectErr) => {
+                  console.error("所有跳转方式都失败:", redirectErr);
+                  common_vendor.index.reLaunch({
+                    url: "/pages/success/success"
+                  });
+                }
+              });
+            }
+          });
+        }
+      });
     }
   }
 };

+ 2 - 1
unpackage/dist/dev/mp-weixin/pages/job-detail/job-detail.js

@@ -79,7 +79,8 @@ const _sfc_main = {
             id: data.data.id,
             title: data.data.title || "",
             salary: data.data.salary_range ? `${data.data.salary_range}/月` : "",
-            department: `${data.data.department || ""} ${data.data.job_type === 1 ? "全职" : "兼职"}`,
+            department: data.data.job_type_name,
+            //`${data.data.department || ''} ${data.data.job_type === 1 ? '全职' : '兼职'}`,
             location: data.data.location || "",
             experience: data.data.work_experience_required || "不限",
             benefits: data.data.competency_tags || ["五险一金", "带薪年假", "定期体检"],

+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/job-detail/job-detail.wxml

@@ -1 +1 @@
-<view class="job-detail-container data-v-2bde8e2a"><view class="job-header data-v-2bde8e2a"><view class="job-title data-v-2bde8e2a">{{a}}</view><view class="job-salary data-v-2bde8e2a">{{b}}</view><view class="job-department data-v-2bde8e2a">{{c}}</view><view class="job-requirements data-v-2bde8e2a"><view class="requirement-item data-v-2bde8e2a"><view class="dot data-v-2bde8e2a"></view><text class="data-v-2bde8e2a" style="width:90%">{{d}}</text></view><view class="requirement-item data-v-2bde8e2a"><view class="time-icon data-v-2bde8e2a"></view><text class="data-v-2bde8e2a">{{e}}</text></view></view></view><view class="section data-v-2bde8e2a"><view class="section-title data-v-2bde8e2a">工作地点</view><view class="map-container data-v-2bde8e2a"><map id="jobLocationMap" class="map data-v-2bde8e2a" latitude="{{f}}" longitude="{{g}}" markers="{{h}}" scale="{{16}}" bindtap="{{i}}"></map></view></view><view class="section data-v-2bde8e2a"><view class="section-title data-v-2bde8e2a">岗位介绍</view><view class="job-description data-v-2bde8e2a"><view class="description-content data-v-2bde8e2a"><view wx:for="{{j}}" wx:for-item="item" wx:key="d" class="description-item data-v-2bde8e2a"><view class="blue-dot data-v-2bde8e2a"></view><block wx:if="{{item.a}}"><view class="description-text data-v-2bde8e2a"><rich-text class="data-v-2bde8e2a" nodes="{{item.b}}"/></view></block><block wx:else><text class="data-v-2bde8e2a" style="color:#333">{{item.c}}</text></block></view></view></view></view><view class="interview-button data-v-2bde8e2a" bindtap="{{k}}"><text class="data-v-2bde8e2a">开始面试</text></view></view>
+<view class="job-detail-container data-v-2bde8e2a"><view class="job-header data-v-2bde8e2a"><view class="job-title data-v-2bde8e2a">{{a}}</view><view class="job-salary data-v-2bde8e2a">{{b}}</view><view class="job-department data-v-2bde8e2a">{{c}}</view><view class="job-requirements data-v-2bde8e2a"><view class="requirement-item data-v-2bde8e2a"><view class="dot data-v-2bde8e2a"></view><text class="data-v-2bde8e2a" style="width:100%">{{d}}</text></view><view class="requirement-item data-v-2bde8e2a"><view class="time-icon data-v-2bde8e2a"></view><text class="data-v-2bde8e2a">{{e}}</text></view></view></view><view class="section data-v-2bde8e2a"><view class="section-title data-v-2bde8e2a">工作地点</view><view class="map-container data-v-2bde8e2a"><map id="jobLocationMap" class="map data-v-2bde8e2a" latitude="{{f}}" longitude="{{g}}" markers="{{h}}" scale="{{16}}" bindtap="{{i}}"></map></view></view><view class="section data-v-2bde8e2a"><view class="section-title data-v-2bde8e2a">岗位介绍</view><view class="job-description data-v-2bde8e2a"><view class="description-content data-v-2bde8e2a"><view wx:for="{{j}}" wx:for-item="item" wx:key="d" class="description-item data-v-2bde8e2a"><view class="blue-dot data-v-2bde8e2a"></view><block wx:if="{{item.a}}"><view class="description-text data-v-2bde8e2a"><rich-text class="data-v-2bde8e2a" nodes="{{item.b}}"/></view></block><block wx:else><text class="data-v-2bde8e2a" style="color:#333">{{item.c}}</text></block></view></view></view></view><view class="interview-button data-v-2bde8e2a" bindtap="{{k}}"><text class="data-v-2bde8e2a">开始面试</text></view></view>

+ 2 - 1
unpackage/dist/dev/mp-weixin/pages/job-detail/job-detail.wxss

@@ -50,7 +50,8 @@
 }
 .job-requirements.data-v-2bde8e2a {
   display: flex;
-  align-items: center;
+  flex-direction: column;
+  align-items: flex-start;
   flex-wrap: wrap;
   margin-bottom: 20rpx;
 }

+ 1 - 1
unpackage/dist/dev/mp-weixin/project.config.json

@@ -8,7 +8,7 @@
     "urlCheck": false,
     "es6": true,
     "postcss": false,
-    "minified": true,
+    "minified": false,
     "newFeature": true,
     "bigPackageSizeSupport": true,
     "babelSetting": {