From e353f0e17dc46203512dd272c5b559b094e40761 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期五, 25 七月 2025 15:02:36 +0800
Subject: [PATCH] 测试完成
---
src/views/outsideChainwt.vue | 333 +++++++++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 307 insertions(+), 26 deletions(-)
diff --git a/src/views/outsideChainwt.vue b/src/views/outsideChainwt.vue
index 483c35e..474eecc 100644
--- a/src/views/outsideChainwt.vue
+++ b/src/views/outsideChainwt.vue
@@ -1,8 +1,19 @@
<template>
<div class="questionnaire">
- <div class="CONTENT">
- <div class="title">{{ taskname ? taskname : "闂嵎" }}</div>
+ <div class="CONTENT" v-if="!accomplish">
<div class="preview-left">
+ <div class="toptitle">
+ <div class="title">{{ taskname ? taskname : "闂嵎" }}</div>
+ <div style="font-size: 22px; margin-bottom: 20px; line-height: 1.5">
+ {{
+ kcb
+ ? kcb
+ : "浜茬埍鐨勬偅鑰�-瀹跺睘锛屾偍濂斤紒鎴戜滑鏄棤閿″効绔ュ尰闄㈢殑鍖绘姢浜哄憳锛屼负浜嗘洿濂藉湴浜嗚В鎮ㄧ殑搴峰鎯呭喌锛岃鎮ㄦ娊涓�鐐瑰疂璐垫椂闂达紝瀹屾垚杩欎唤闅忚闂嵎銆�"
+ }}
+ <!-- 浜茬埍鐨勬偅鑰�/瀹跺睘鎮ㄥソ锛屼负浜嗘洿濂界殑浜嗚В鎮ㄥ嚭闄㈠悗鐨勫悍澶嶆儏鍐碉紝缁欐偍閫傚綋鍙婃椂鐨勫仴搴锋寚瀵硷紝璇锋偍鎶戒竴鐐瑰疂璐垫椂闂达紝瀹屾垚杩欎唤鍑洪櫌闅忚闂嵎璋冩煡銆� -->
+ </div>
+ </div>
+ <el-divider></el-divider>
<!-- 鍗曢�� -->
<div
class="topic-dev"
@@ -11,15 +22,25 @@
>
<div class="scriptTopic-dev" :key="index" v-if="item.scriptType == 1">
<div class="dev-text">
- {{ index + 1 }}銆乕鍗曢�塢<span>{{ item.scriptContent }}</span>
+ {{ index + 1 }}銆�<span style="line-height: 1.5"
+ >{{ item.scriptContent }}
+ <span style="color: #3ba2f7">[鍗曢�塢</span></span
+ >
</div>
<div class="dev-xx">
<el-radio-group
+ class="custom-radio"
v-model="item.scriptResult"
@change="handleOptionChange($event, index, item)"
>
<el-radio
+ border
v-for="(items, index) in item.svyLibTemplateTargetoptions"
+ :class="
+ items.isabnormal && item.scriptResult == items.optioncontent
+ ? 'red-star'
+ : ''
+ "
:key="index"
:label="items.optioncontent"
>{{ items.optioncontent }}</el-radio
@@ -33,14 +54,19 @@
<!-- 澶氶�� -->
<div class="scriptTopic-dev" :key="index" v-if="item.scriptType == 2">
<div class="dev-text">
- {{ index + 1 }}銆乕澶氶�塢<span>{{ item.scriptContent }}</span>
+ {{ index + 1 }}銆�<span style="line-height: 1.5"
+ >{{ item.scriptContent }}
+ <span style="color: #3ba2f7">[澶氶�塢</span></span
+ >
</div>
<div class="dev-xx">
<el-checkbox-group
+ class="custom-radio"
v-model="item.scriptResult"
@change="updateScore($event, index, item)"
>
<el-checkbox
+ border
@change="$forceUpdate()"
v-for="(items, indexs) in item.svyLibTemplateTargetoptions"
:key="indexs"
@@ -50,6 +76,7 @@
</el-checkbox>
</el-checkbox-group>
</div>
+ <!-- :class="items.isabnormal ? 'red-star' : ''" -->
<div v-show="item.prompt && item.scriptResult[0]">
<el-alert :title="item.prompt" type="warning"> </el-alert>
</div>
@@ -57,12 +84,15 @@
<!-- 濉┖ -->
<div class="scriptTopic-dev" :key="index" v-if="item.scriptType == 4">
<div class="dev-text">
- {{ index + 1 }}銆乕闂瓟]<span>{{ item.scriptContent }}</span>
+ {{ index + 1 }}銆�<span style="line-height: 1.5"
+ >{{ item.scriptContent
+ }}<span style="color: #3ba2f7">[闂瓟]</span></span
+ >
</div>
<div class="dev-xx">
<el-input
type="textarea"
- :rows="2"
+ :rows="3"
placeholder="璇疯緭鍏ョ瓟妗�"
v-model="item.scriptResult"
clearable
@@ -71,22 +101,47 @@
</div>
</div>
</div>
+ <div class="bottom-fixed">
+ <el-button
+ type="primary"
+ style="width: 80%; font-size: 20px"
+ @click="cache(true)"
+ >鎻愪氦闂嵎</el-button
+ >
+ </div>
</div>
- <el-form :model="formData" label-width="80px">
- <el-form-item>
- <el-button type="primary" @click="cache(true)">鎻愪氦闂嵎</el-button>
- <!-- <el-button type="primary" @click="cache">缂撳瓨闂嵎</el-button> -->
- </el-form-item>
- </el-form>
</div>
- <el-dialog
+ <div class="CONTENT" v-else>
+ <div class="preview-lefts">
+ <div
+ style="
+ text-align: center;
+ padding-top: 50px;
+ font-size: 24px;
+ color: #175997;
+ font-weight: 600;
+ margin-bottom: 10px;
+ "
+ >
+ 鎰熻阿鎮ㄧ殑閰嶅悎!
+ </div>
+ <div style="font-size: 20px">
+ {{
+ jsy
+ ? jsy
+ : "鎰熻阿鎮ㄥ弬涓庢湰娆¢殢璁裤�傛偍鐨勫弽棣堝府鍔╂垜浠洿濂藉湴浜嗚В瀹濆疂鐨勯�傚簲鎯呭喌锛屽苟涓烘偍鎻愪緵鏇寸簿鍑嗙殑鎶ょ悊寤鸿涓庡仴搴锋寚瀵笺�傜鎮ㄥ拰瀹濆疂鍋ュ悍蹇箰"
+ }}
+ </div>
+ </div>
+ </div>
+ <!-- <el-dialog
:visible.sync="dialogVisible"
width="50%"
>
<div>
- <el-alert :title="revisitAfter" type="success"> </el-alert>
+ <el-alert :title="jsy" type="success"> </el-alert>
</div>
- </el-dialog>
+ </el-dialog> -->
</div>
</template>
@@ -103,9 +158,99 @@
return {
taskid: 355,
patid: 265823,
- questionList: null,
- revisitAfter: null,
- dialogVisible:false,
+ kcb: "",
+ excep:'',
+ questionList: [
+ // {
+ // scriptType: 1,
+ // scriptContent: "鎮ㄧ殑骞撮緞鑼冨洿鏄紵",
+ // scriptResult: null,
+ // svyLibTemplateTargetoptions: [
+ // { optioncontent: "18-25", value: "18-25", isabnormal: true },
+ // { optioncontent: "26-35", value: "26-35" },
+ // { optioncontent: "36-45", value: "36-45" },
+ // { optioncontent: "46-55", value: "46-55" },
+ // { optioncontent: "56+", value: "56+" },
+ // ],
+ // required: true,
+ // },
+ // {
+ // scriptType: 1,
+ // scriptContent: "鎮ㄧ殑鑱屼笟鏄粈涔堬紵",
+ // scriptResult: null,
+ // svyLibTemplateTargetoptions: [
+ // { optioncontent: "瀛︾敓", value: "student" },
+ // { optioncontent: "鏁欏笀", value: "teacher" },
+ // { optioncontent: "宸ョ▼甯�", value: "engineer" },
+ // { optioncontent: "鍖荤敓", value: "doctor" },
+ // { optioncontent: "鍏朵粬", value: "other" },
+ // ],
+ // required: false,
+ // },
+ // {
+ // scriptType: 2,
+ // scriptContent: "鎮ㄦ劅鍏磋叮鐨勬椿鍔ㄦ湁鍝簺锛�",
+ // scriptResult: [],
+ // svyLibTemplateTargetoptions: [
+ // { optioncontent: "鏃呮父", value: "travel", isabnormal: true },
+ // { optioncontent: "闃呰", value: "reading", isabnormal: true },
+ // { optioncontent: "杩愬姩", value: "sports", isabnormal: true },
+ // { optioncontent: "闊充箰", value: "music" },
+ // { optioncontent: "鐢靛奖", value: "movies" },
+ // ],
+ // required: false,
+ // },
+ // {
+ // scriptType: 1,
+ // scriptContent: "鎮ㄧ殑鑱屼笟鏄粈涔堬紵",
+ // scriptResult: null,
+ // svyLibTemplateTargetoptions: [
+ // { optioncontent: "瀛︾敓", value: "student" },
+ // { optioncontent: "鏁欏笀", value: "teacher" },
+ // { optioncontent: "宸ョ▼甯�", value: "engineer" },
+ // { optioncontent: "鍖荤敓", value: "doctor" },
+ // { optioncontent: "鍏朵粬", value: "other" },
+ // ],
+ // required: false,
+ // },
+ // {
+ // scriptType: 1,
+ // scriptContent: "鎮ㄧ殑鑱屼笟鏄粈涔堬紵",
+ // scriptResult: null,
+ // svyLibTemplateTargetoptions: [
+ // { optioncontent: "瀛︾敓", value: "student" },
+ // { optioncontent: "鏁欏笀", value: "teacher" },
+ // { optioncontent: "宸ョ▼甯�", value: "engineer", isabnormal: true },
+ // { optioncontent: "鍖荤敓", value: "doctor" },
+ // { optioncontent: "鍏朵粬", value: "other" },
+ // ],
+ // required: false,
+ // },
+ // {
+ // scriptType: 1,
+ // scriptContent: "鎮ㄧ殑鑱屼笟鏄粈涔堬紵",
+ // scriptResult: null,
+ // svyLibTemplateTargetoptions: [
+ // { optioncontent: "瀛︾敓", value: "student" },
+ // { optioncontent: "鏁欏笀", value: "teacher" },
+ // { optioncontent: "宸ョ▼甯�", value: "engineer" },
+ // { optioncontent: "鍖荤敓", value: "doctor" },
+ // { optioncontent: "鍏朵粬", value: "other" },
+ // ],
+ // required: false,
+ // },
+ // {
+ // scriptType: 4,
+ // scriptContent: "鎮ㄧ殑濮撳悕鏄粈涔堬紵",
+ // scriptResult: "name",
+ // required: true,
+ // scriptResult: null,
+ // },
+ ],
+ jsy: null,
+ dialogVisible: false,
+ Endornot: true,
+ accomplish: false,
// 鍓嶇鍏挜
publicKey:
"MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAKR0yHv0rbJWQE+Sc7/FwpW66qMd9qX2k6z+SDgkSdxWh/1GbBoAP7bDQQRF6vXmoKsD2ya42H6XRLSDXAoayuMCAwEAAQ== ",
@@ -147,6 +292,7 @@
(res) => {
if (res.code == 200) {
this.questionList = res.data;
+ this.accomplish = res.data.submit;
if (this.questionList[0]) {
this.questionList.forEach((item) => {
if (item.scriptResult && item.scriptType != 2) {
@@ -171,7 +317,8 @@
(res) => {
if (res.code == 200) {
this.questionList = res.data.script;
- this.revisitAfter = res.data.revisitAfter;
+ this.jsy = res.data.jsy;
+ this.kcb = res.data.kcb;
// 澶勭悊棰樼洰鏀堕泦缁撴灉鏍煎紡
this.questionList.forEach((item) => {
item.nextScriptno = Number(item.nextScriptno);
@@ -201,6 +348,7 @@
let form = {
param1: this.taskid,
param2: this.patid,
+ excep:this.excep,
serviceSubtaskDetailList: [],
};
const arr = structuredClone(this.questionList);
@@ -213,9 +361,10 @@
form.serviceSubtaskDetailList = arr;
Submitaquestionnaire(form).then((res) => {
if (res.code == 200) {
- if (this.revisitAfter) {
- this.dialogVisible=true
+ if (this.jsy) {
+ this.dialogVisible = true;
}
+ this.accomplish = true;
this.$modal.msgSuccess("鎻愪氦鎴愬姛");
}
});
@@ -229,6 +378,20 @@
svyLibTemplateScriptVOS: [],
};
const arr = structuredClone(this.questionList);
+ console.log(arr,'srr')
+ arr.forEach((item, index) => {
+ var obj = item.svyLibTemplateTargetoptions.find(
+ (items) => items.optioncontent == item.scriptResult
+ );
+ if (obj) {
+ if (obj.isabnormal) {
+ console.log(obj.isabnormal);
+ form.excep = 1;
+ this.excep=1;
+ }
+ }
+ });
+
arr.forEach((item) => {
if (item.scriptType == 2 && item.scriptResult[0]) {
item.scriptResult = item.scriptResult.join("&");
@@ -239,7 +402,6 @@
form.svyLibTemplateScriptVOS = arr;
Cachequestionnaire(form).then((res) => {
if (res.code == 200) {
- this.$modal.msgSuccess("鎻愪氦鎴愬姛");
if (subm) {
this.submitForm();
}
@@ -279,7 +441,8 @@
<style lang="scss" scoped>
.questionnaire {
- background-image: url("../assets/images/chainbackground.jpg");
+ // background-image: url("../assets/images/chainbackground.jpg");
+ background-color: #f9f9fb;
background-size: cover;
background-attachment: fixed; /* 淇濇寔鑳屾櫙鍥哄畾 */
background-position: center;
@@ -288,8 +451,8 @@
margin: 0;
padding: 0;
.CONTENT {
- padding: 10px;
.title {
+ color: #3769f3;
font-size: 22px;
font-weight: bold;
margin-bottom: 20px;
@@ -298,9 +461,13 @@
}
}
.preview-left {
- margin: 20px;
+ margin: 10px;
+ margin-bottom: 60px;
+ background-color: #fff;
+ border-radius: 5px;
// margin: 20px;
- padding: 30px;
+ padding: 10px;
+ height: 100%;
// background: #ffff;
border: 1px solid #dcdfe6;
-webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12),
@@ -313,4 +480,118 @@
}
}
}
+.preview-lefts {
+ margin: 10px;
+ background-color: #fff;
+ border-radius: 5px;
+ // margin: 20px;
+ padding: 10px;
+ height: 95vh; // background: #ffff;
+ border: 1px solid #dcdfe6;
+ -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12),
+ 0 0 6px 0 rgba(0, 0, 0, 0.04);
+ .topic-dev {
+ margin-bottom: 25px;
+ font-size: 20px !important;
+ .dev-text {
+ margin-bottom: 10px;
+ }
+ }
+}
+
+.red-star {
+ ::v-deep.el-radio__label {
+ position: relative;
+ padding-right: 10px; /* 鏍规嵁闇�瑕佽皟鏁� */
+ }
+ ::v-deep.el-radio__label::after {
+ content: "*";
+ color: red;
+ position: absolute;
+ right: -5px; /* 鏍规嵁闇�瑕佽皟鏁� */
+ top: 0;
+ }
+ ::v-deep.el-checkbox__label {
+ position: relative;
+ padding-right: 10px; /* 鏍规嵁闇�瑕佽皟鏁� */
+ }
+ ::v-deep.el-checkbox__label::after {
+ content: "*";
+ color: red;
+ position: absolute;
+ right: -5px; /* 鏍规嵁闇�瑕佽皟鏁� */
+ top: 0;
+ }
+}
+::v-deep.el-checkbox-group {
+ font-size: 0;
+ display: flex;
+ flex-direction: column;
+ margin: 5px 0;
+}
+::v-deep.el-checkbox.is-bordered + .el-checkbox.is-bordered {
+ margin-left: 0;
+}
+
+::v-deep.el-radio-group {
+ display: flex;
+ flex-direction: column;
+ margin: 5px 0;
+}
+::v-deep.el-radio.is-bordered + .el-radio.is-bordered {
+ /* margin-left: 10px; */
+ margin-left: 0;
+}
+::v-deep.custom-radio .el-radio {
+ margin: 2px 0;
+}
+
+.radio-option {
+ flex: none; /* 涓嶈閫夐」鑷姩濉厖绌洪棿 */
+ white-space: nowrap; /* 闃叉閫夐」鏂囨湰鎹㈣ */
+ margin: 0 10px; /* 璁剧疆閫夐」宸﹀彸鐨勯棿闅� */
+ font-size: 20px; /* 澧炲ぇ瀛椾綋澶у皬 */
+}
+
+.el-radio__label {
+ font-size: 20px; /* 澧炲ぇ鏍囩鏂囧瓧澶у皬 */
+}
+.toptitle {
+}
+.bottom-fixed {
+ position: fixed;
+ bottom: 0;
+ left: 0;
+ width: 100%;
+ text-align: center;
+ padding: 10px 0; /* 鏍规嵁闇�瑕佽皟鏁村唴杈硅窛 */
+ background: #fff; /* 鏍规嵁闇�瑕佽皟鏁磋儗鏅鑹� */
+ box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.1); /* 鍙�夌殑闃村奖鏁堟灉 */
+ z-index: 1000; /* 纭繚鎸夐挳鍦ㄩ〉闈㈡渶涓婂眰 */
+}
+::v-deep.el-alert--warning.is-light {
+ background-color: #fbf9f3;
+ color: #ffba00;
+}
+::v-deep {
+ .el-alert__title {
+ font-size: 20px;
+ line-height: 18px;
+ }
+}
+::v-deep.el-radio--medium.is-bordered .el-radio__label {
+ font-size: 20px;
+}
+::v-deep.el-radio--medium.is-bordered {
+ padding: 5px 20px 0px 10px;
+ border-radius: 4px;
+ height: 36px;
+}
+::v-deep.el-checkbox.is-bordered.el-checkbox--medium .el-checkbox__label {
+ line-height: 17px;
+ font-size: 20px;
+}
+::v-deep.el-checkbox {
+ margin-right: 0px;
+}
</style>
--
Gitblit v1.9.3