lijunjie лет назад: 2
Родитель
Сommit
99d8cfe04c

Разница между файлами не показана из-за своего большого размера
+ 1 - 0
UI/public/wenJuan.svg


+ 75 - 20
UI/src/views/main/questionnaireManagement/fillOut.vue

@@ -1,4 +1,6 @@
1
-<template>
1
+<template> 
2
+ 	<el-empty :image-size="100" image="/public/wenJuan.svg" description="该问卷暂不可用..." v-if="!rqDis" />
3
+
2 4
 	<div class="rqCss" v-if="rqDis">
3 5
 		<div class="app">
4 6
 			<div class="title">
@@ -183,9 +185,13 @@
183 185
 
184 186
 				for (const val of data.questionlist) {
185 187
 					if(val.type === '单选' || val.type === '问答'){
186
-						val['_content'] = val.answerdetail 
187
-					}else{
188
-						val['_content'] = val.answerdetail.split(',')
188
+						val['_content'] = val.answerdetail || ''
189
+					}else{  
190
+						if(val.answerdetail){
191
+							val['_content'] = val.answerdetail?.split(',')
192
+						} else {
193
+							val['_content'] = []
194
+						}
189 195
 					}
190 196
 				}
191 197
 
@@ -202,31 +208,53 @@
202 208
 						pageId.value = murmur; 
203 209
 						
204 210
 						getPageListData(`/survey/survey/getdetail?id=${query.id}&user=${murmur}`).then(({data})=>{ 
205
-
211
+							
206 212
 							if(data.existanswer === 1){
207 213
 								for (const val of data.questionlist) {
208 214
 									if(val.type === '单选' || val.type === '问答'){
209
-										val['_content'] = val.answerdetail 
215
+										val['_content'] = val.answerdetail || ''
210 216
 									}else{
211
-										val['_content'] = val.answerdetail.split(',')
217
+										if(val.answerdetail){
218
+											val['_content'] = val.answerdetail?.split(',')
219
+										} else {
220
+											val['_content'] = []
221
+										}
212 222
 									}
213 223
 								} 
214 224
 							}
215
-							formData.value = data;   
225
+							
226
+							formData.value = data;    
227
+							
228
+							// 不是进行中的问卷 全部隐藏
229
+							if(isEnd(formData.value) !== '进行中' && query.user !== '-1'){
230
+								return;
231
+							}
216 232
 
233
+							// 判断 只能微信填写 没有进行微信授权 该用户没有填写
217 234
 							if(formData.value.setting === 1 && query.code === undefined && formData.value.existanswer !== 1){
218 235
 								const appid = 'wxe8b06998505853d2';
219
-								// const url = encodeURI(`${getoRigin()}/fillOut?id=${v.surveyId}`);
220
-								const url = encodeURI(`http://67b12c3.r20.cpolar.top/fillOut?id=${query.id}`); //测试数据   
236
+								const url = encodeURI(`${getoRigin()}/fillOut?id=${query.id}`);  
221 237
 							 
222 238
 								location.replace(`https://open.weixin.qq.com/connect/oauth2/authorize?appid=${appid}&redirect_uri=${url}&response_type=code&scope=snsapi_userinfo&state=111#wechat_redirect`) 
223 239
 							
224
-							}else{
240
+							}else{ 
241
+								
242
+								// 判断 在微信环境 没有进行微信授权 该用户没有填写
243
+								if( navigator.userAgent.toLowerCase().indexOf('micromessenger') !== -1 && query.code === undefined && formData.value.existanswer !== 1 ){
244
+									const appid = 'wxe8b06998505853d2';
245
+									const url = encodeURI(`${getoRigin()}/fillOut?id=${query.id}`); 
246
+								
247
+									location.replace(`https://open.weixin.qq.com/connect/oauth2/authorize?appid=${appid}&redirect_uri=${url}&response_type=code&scope=snsapi_userinfo&state=111#wechat_redirect`) 
248
+								
249
+								}
250
+
251
+								// 显示页面
225 252
 								rqDis.value = true;
226 253
 								
254
+								// 判断 该用户没有填写   显示提交按钮
227 255
 								if(formData.value.existanswer !== 1){
228 256
 									buttDis.value = true;
229
-								}else{
257
+								}else{ //已填写 隐藏按钮
230 258
 									buttDis.value = false;
231 259
 								}
232 260
 							}
@@ -348,16 +376,18 @@
348 376
 				}) 
349 377
 			} else if (v.type === '排序'){
350 378
 				if(! Array.isArray(v._content)){
351
-					v._content = v._content.split(',');
379
+					v._content = v._content?.split(',');
352 380
 				}
353 381
 
354
-				params.answerlist.push({
355
-					answeruser :  pageId.value,    
356
-					answer : v._content.join(),    
357
-					optionid : 0,
358
-					questionid : v.questionId,
359
-					surveyid : v.surveyid
360
-				})
382
+				if(v._content){
383
+					params.answerlist.push({
384
+						answeruser :  pageId.value,    
385
+						answer : v._content?.join(),    
386
+						optionid : 0,
387
+						questionid : v.questionId,
388
+						surveyid : v.surveyid
389
+					})
390
+				}
361 391
 			} else {
362 392
 				if(! Array.isArray(v._content)){ 
363 393
 					v._content = v._content?.split(',') || [];
@@ -415,6 +445,31 @@
415 445
 		}
416 446
 	}
417 447
 
448
+	// 判断状态
449
+	function isEnd (data){
450
+		let oldTime = new Date(data.starttime).getTime();
451
+		let newTime = new Date(data.endtime).getTime();
452
+		let time = new Date().getTime();
453
+		
454
+
455
+		if(!data.endtime || !data.starttime){
456
+			return '未发布';
457
+		}
458
+
459
+		if(time < oldTime){
460
+			return '未开始';
461
+		}else if(time > newTime){
462
+			return '已结束';
463
+		}else if(time > oldTime && time < newTime){
464
+			return '进行中';
465
+		} 
466
+	}
467
+
468
+	// 获取域名
469
+	function getoRigin (){
470
+		return location.origin
471
+	}
472
+
418 473
 </script>
419 474
 
420 475
 

+ 1 - 1
UI/src/views/main/questionnaireManagement/surveyAdd.vue

@@ -177,7 +177,7 @@
177 177
 	const getData = function _f (){
178 178
 		if(id){ 
179 179
 			getPageListData(`/survey/survey/${id}`).then(({data})=>{
180
-				contentDatas.value['title'] = data['title'];
180
+				contentDatas.value['title'] = type === 'copy' ? `${data['title']}(复制)` : data['title'];
181 181
 				contentDatas.value['remark'] = data['remark']; 
182 182
 				contentDatas.value['surveyId'] = type === 'copy' ? 0 : Number(id); 
183 183
 				contentDatas.value['questionlist'] = [];