| | |
| | | # 页颿 é¢ |
| | | VUE_APP_TITLE = æµä¸å¤§äºé¢æºæ
§éè®¿å¹³å° |
| | | VUE_APP_TITLE = æµä¸å»å¤§äºé¢æºæ
§éè®¿å¹³å° |
| | | |
| | | # å¼åç¯å¢é
ç½® |
| | | ENV = 'development' |
| | | |
| | | # æµä¸å¤§äºé¢æºæ
§é访平å°/å¼åç¯å¢ |
| | | # æµä¸å»å¤§äºé¢æºæ
§é访平å°/å¼åç¯å¢ |
| | | VUE_APP_BASE_API = '/dev-api' |
| | | |
| | | # è·¯ç±æå è½½ |
| | |
| | | # 页颿 é¢ |
| | | VUE_APP_TITLE = æµä¸å¤§äºé¢æºæ
§éè®¿å¹³å° |
| | | VUE_APP_TITLE = æµä¸å»å¤§äºé¢æºæ
§éè®¿å¹³å° |
| | | |
| | | # ç产ç¯å¢é
ç½® |
| | | ENV = 'production' |
| | | |
| | | # æµä¸å¤§äºé¢æºæ
§é访平å°/ç产ç¯å¢ |
| | | # æµä¸å»å¤§äºé¢æºæ
§é访平å°/ç产ç¯å¢ |
| | | VUE_APP_BASE_API = '/prod-api' |
| | |
| | | # 页颿 é¢ |
| | | VUE_APP_TITLE = æµä¸å¤§äºé¢æºæ
§éè®¿å¹³å° |
| | | VUE_APP_TITLE = æµä¸å»å¤§äºé¢æºæ
§éè®¿å¹³å° |
| | | |
| | | NODE_ENV = production |
| | | |
| | | # æµè¯ç¯å¢é
ç½® |
| | | ENV = 'staging' |
| | | |
| | | # æµä¸å¤§äºé¢æºæ
§é访平å°/æµè¯ç¯å¢ |
| | | # æµä¸å»å¤§äºé¢æºæ
§é访平å°/æµè¯ç¯å¢ |
| | | VUE_APP_BASE_API = '/stage-api' |
| | |
| | | { |
| | | "name": "ruoyi", |
| | | "version": "3.8.5", |
| | | "description": "æµä¸å¤§äºé¢æºæ
§é访平å°", |
| | | "description": "æµä¸å»å¤§äºé¢æºæ
§é访平å°", |
| | | "author": "ææ°", |
| | | "license": "MIT", |
| | | "scripts": { |
| | |
| | | data: data |
| | | }); |
| | | } |
| | | // å é¤éç¨æ¨¡æ¿ |
| | | export function geturlinfo(id) { |
| | | return request({ |
| | | url: "/outPath/getInfoByParam", |
| | | method: 'post', |
| | | data: {param:id} |
| | | }); |
| | | } |
| | | // æäº¤ãé访 |
| | | export function SetsaveQuestionAnswer(data) { |
| | | return request({ |
| | |
| | | }, |
| | | data() { |
| | | return { |
| | | title: "æµä¸å¤§äºé¢æºæ
§é访平å°", |
| | | title: "æµä¸å»å¤§äºé¢æºæ
§é访平å°", |
| | | logo: logoImg, |
| | | }; |
| | | }, |
| | |
| | | |
| | | NProgress.configure({ showSpinner: false }) |
| | | |
| | | const whiteList = ['/login', '/auth-redirect', '/bind', '/register', '/outsideChain','/outsideChainwt','/outsideChainxj'] |
| | | const whiteList = ['/login', '/auth-redirect', '/bind', '/register','/wt','/xj','/sf', '/outsideChain','/outsideChainwt','/outsideChainxj'] |
| | | router.beforeEach((to, from, next) => { |
| | | NProgress.start() |
| | | if (getToken()) { |
| | |
| | | hidden: true |
| | | }, |
| | | { |
| | | path: '/sf', |
| | | component: () => import('@/views/outsideChainnew'), |
| | | hidden: true |
| | | }, |
| | | { |
| | | path: '/wt', |
| | | component: () => import('@/views/outsideChainwtnew'), |
| | | hidden: true |
| | | }, |
| | | { |
| | | path: '/xj', |
| | | component: () => import('@/views/outsideChainxjnew'), |
| | | hidden: true |
| | | }, |
| | | { |
| | | path: '/outsideChain', |
| | | component: () => import('@/views/outsideChain'), |
| | | hidden: true |
| | |
| | | width="200" |
| | | /> |
| | | <el-table-column |
| | | |
| | | label="任塿§è¡æ¹å¼" |
| | | align="center" |
| | | key="preachform" |
| | |
| | | :show-overflow-tooltip="true" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <span v-for="item in scope.row.preachform" |
| | | >{{ item }}ã |
| | | </span> |
| | | <span v-for="item in scope.row.preachform">{{ item }}ã </span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | |
| | | label="ä»»å¡åéæµç¨" |
| | | align="center" |
| | | key="serviceSubtaskRecordList" |
| | |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | |
| | | label="ä»»å¡ç»æè¯´æ" |
| | | width="120" |
| | | align="center" |
| | |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="æä½" |
| | | |
| | | align="center" |
| | | width="200" |
| | | class-name="small-padding fixed-width" |
| | |
| | | this.loading = true; |
| | | getTaskservelist(this.topqueryParams).then((response) => { |
| | | this.userList = response.rows[0].serviceSubtaskList; |
| | | this.total=response.total |
| | | this.cardlist[0].value = |
| | | Number(response.rows[0].wzx) + Number(response.rows[0].ysf); |
| | | this.cardlist[1].value = response.rows[0].ysf; |
| | |
| | | this.cardlist[4].value = response.rows[0].fssb; |
| | | this.cardlist[5].value = response.rows[0].blq; |
| | | this.cardlist[6].value = response.rows[0].yfs; |
| | | this.loading = false; |
| | | this.userList.forEach((item) => { |
| | | const idArray = null; |
| | | if (item.endtime) { |
| | | item.endDay = this.daysBetween(item.endtime); |
| | | } |
| | | const idArray = item.preachform.split(","); |
| | | if (item.endtime) { |
| | | idArray = item.preachform.split(","); |
| | | } |
| | | |
| | | item.preachform = idArray.map((value) => { |
| | | // æ¥æ¾id对åºç对象 |
| | | const item = this.checkboxlist.find((item) => item.value == value); |
| | |
| | | }); |
| | | }); |
| | | this.total = response.total; |
| | | this.loading = false; |
| | | }); |
| | | }, |
| | | // æ¥çé¨è¯é访详æ
|
| | |
| | | filterable |
| | | placeholder="è¯·éæ©ç§å®¤" |
| | | > |
| | | <el-option |
| | | <el-option |
| | | class="ruleFormaa" |
| | | v-for="item in belongDepts" |
| | | v-for="item in flatArray" |
| | | :key="item.deptCode" |
| | | :label="item.deptName" |
| | | :label="item.label" |
| | | :value="item.deptCode" |
| | | > |
| | | </el-option> |
| | |
| | | filterable |
| | | placeholder="è¯·éæ©ç
åº" |
| | | > |
| | | <el-option |
| | | <el-option |
| | | class="ruleFormaa" |
| | | v-for="item in belongWards" |
| | | :key="item.districtCode" |
| | | :label="item.districtName" |
| | | :value="item.districtCode" |
| | | v-for="item in flatArray" |
| | | :key="item.deptCode" |
| | | :label="item.label" |
| | | :value="item.deptCode" |
| | | > |
| | | </el-option> |
| | | </el-select> </el-form-item |
| | |
| | | } from "@/api/AiCentre/index"; |
| | | import OptionalForm from "@/components/OptionalForm"; //æ£åç»ä»¶ |
| | | import { getToken } from "@/utils/auth"; |
| | | import { deptTreeSelect } from "@/api/system/user"; |
| | | |
| | | |
| | | export default { |
| | | name: "Questionnaireinfo", |
| | |
| | | illnessVisible: false, //ææ ç¾ç
å¼¹æ¡ |
| | | Operateit: true, |
| | | deptOptions: [], |
| | | flatArray:[], |
| | | optionsillness: [], |
| | | delScriptVOList: [], |
| | | illnesslistapi: [], |
| | |
| | | created() { |
| | | this.getissueinfo(); |
| | | this.gettabList(); |
| | | this.getDeptTree(); |
| | | this.mode = store.getters.Askmode; |
| | | this.languagelist = store.getters.languagelist; |
| | | this.usable = store.getters.usable; |
| | |
| | | } |
| | | }); |
| | | }, |
| | | // è·åç§å®¤æ |
| | | getDeptTree() { |
| | | // ç§å®¤å表 |
| | | deptTreeSelect().then((response) => { |
| | | this.deptOptions = response.data; |
| | | this.flatArray = this.flattenArray(response.data); |
| | | }); |
| | | }, |
| | | flattenArray(multiArray) { |
| | | let result = []; |
| | | |
| | | // éå½å½æ°ï¼ç¨äºå°å¤çº§æ°ç»è½¬æ¢ä¸ºä¸ç»´æ°ç»ï¼åªå
嫿åºå±çå
ç´ |
| | | function flatten(element) { |
| | | // 妿å½åå
ç´ æåå
ç´ ï¼ç»§ç»éå½ |
| | | if (element.children && element.children.length > 0) { |
| | | element.children.forEach((child) => flatten(child)); |
| | | } else { |
| | | // å
éå
ç´ ä»¥é¿å
ä¿®æ¹åå§æ°æ® |
| | | let item = JSON.parse(JSON.stringify(element)); |
| | | result.push(item); // å°æåºå±çå
ç´ æ·»å å°ç»ææ°ç» |
| | | } |
| | | } |
| | | |
| | | // ä»é¡¶å±å
ç´ å¼å§éå½ |
| | | multiArray.forEach((element) => flatten(element)); |
| | | return result; // è¿ååªå
嫿åºå±å
ç´ çä¸ç»´æ°ç» |
| | | }, |
| | | submitForm(formName) { |
| | | this.$modal.loading("æ£å¨ä¿®æ£ä¿åæ°æ®ï¼è¯·ç¨å..."); |
| | | if (Array.isArray(this.ruleForm.suitway)) { |
| | |
| | | :rules="loginRules" |
| | | class="login-form" |
| | | > |
| | | <h3 class="title">æµä¸å¤§äºé¢æºæ
§é访平å°</h3> |
| | | <h3 class="title">æµä¸å»å¤§äºé¢æºæ
§é访平å°</h3> |
| | | <el-form-item prop="username"> |
| | | <el-input |
| | | v-model="loginForm.username" |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <div class="questionnaire"> |
| | | <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" |
| | | v-for="(item, index) in questionList" |
| | | :key="item.aaa" |
| | | > |
| | | <div class="scriptTopic-dev" :key="index" v-if="item.scriptType == 1"> |
| | | <div class="dev-text"> |
| | | {{ 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 |
| | | > |
| | | </el-radio-group> |
| | | </div> |
| | | <div v-show="item.prompt"> |
| | | <el-alert :title="item.prompt" type="warning"> </el-alert> |
| | | </div> |
| | | </div> |
| | | <!-- å¤é --> |
| | | <div class="scriptTopic-dev" :key="index" v-if="item.scriptType == 2"> |
| | | <div class="dev-text"> |
| | | {{ 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" |
| | | :label="items.optioncontent" |
| | | > |
| | | {{ items.optioncontent }} |
| | | </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> |
| | | </div> |
| | | <!-- 填空 --> |
| | | <div class="scriptTopic-dev" :key="index" v-if="item.scriptType == 4"> |
| | | <div class="dev-text"> |
| | | {{ 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="3" |
| | | placeholder="请è¾å
¥çæ¡" |
| | | v-model="item.scriptResult" |
| | | clearable |
| | | > |
| | | </el-input> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="bottom-fixed"> |
| | | <el-button |
| | | type="primary" |
| | | style="width: 80%; font-size: 20px" |
| | | @click="cache(true)" |
| | | >æäº¤é®å·</el-button |
| | | > |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <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="jsy" type="success"> </el-alert> |
| | | </div> |
| | | </el-dialog> --> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import { |
| | | getExternalfollowup, |
| | | getCachequestionnaire, |
| | | Cachequestionnaire, |
| | | Submitaquestionnaire, |
| | | geturlinfo, |
| | | } from "@/api/AiCentre/index"; |
| | | import JSEncrypt from "jsencrypt"; |
| | | export default { |
| | | data() { |
| | | return { |
| | | taskid: 355, |
| | | patid: 265823, |
| | | 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== ", |
| | | // å端ç§é¥ |
| | | privateKey: |
| | | " MIIBUwIBADANBgkqhkiG9w0BAQEFAASCAT0wggE5AgEAAkEAtDOpbUQhcEoYy77agRhIHmAzs7H+KHJhN56gTTI9fWq23j77nI055MFV3oQQziIrNUTNaPpEQhZXBpI0+f9K9QIDAQABAkB3n0fcWfrcoMN/FU3VnrnZOEF6CzFNxkgU9P8y36QECWKZ9JhYQkNpKrMC9oXlN3VSaRigV7B+L/I/a0Rs1W+tAiEA4jx7xcXJ4y4BNwAmVHt6NNiEkzIwWnwC/0qsEu8NsOsCIQDL6MMn1D2uznC6OuOWpxDCkBh1JL1NzZTZeH2G+hj7nwIgKGAC9tjFnvWm4dn0/T7MIIJDpsFeP8fCAS2iZ/6hwuECIAS/eLvWr1EAsZNEh8QcQ8GkBU3E+ztyjAK8UX/xFt/VAiBf79/1tDErX4/DChecM8w3c3DhbBcjuE3fHZn7p6/UKg==", |
| | | formData: { |
| | | question1: "", |
| | | question2: "", |
| | | question3: "", |
| | | }, |
| | | }; |
| | | }, |
| | | mounted() { |
| | | window.addEventListener("beforeunload", this.cache); |
| | | }, |
| | | beforeDestroy() { |
| | | window.removeEventListener("beforeunload", this.cache); |
| | | }, |
| | | created() { |
| | | this.geturlinfo(); |
| | | }, |
| | | methods: { |
| | | // è§£æurlid |
| | | geturlinfo() { |
| | | // let url = window.location.href; |
| | | let url = this.$route.query.p; |
| | | // let url = 'http://218.108.11.22:8093/sf/003'; |
| | | // let urlid = this.extractLastSegmentFromUrl(url); |
| | | |
| | | geturlinfo( url ).then((res) => { |
| | | if (res.code==200) { |
| | | this.getQuestionnaire(res.data.param1,res.data.param2,res.data.param3,res.data.param5,) |
| | | } |
| | | }); |
| | | }, |
| | | // extractLastSegmentFromUrl(url) { |
| | | // // æ¾å°æåä¸ä¸ª'/'çä½ç½® |
| | | // const lastSlashIndex = url.lastIndexOf('/'); |
| | | // // 妿æ¾å°äº'/'ï¼æªåå
¶åçææå符 |
| | | // if (lastSlashIndex !== -1) { |
| | | // return url.substring(lastSlashIndex + 1); |
| | | // } |
| | | // // å¦ææ²¡ææ¾å°'/'ï¼è¿å空å符串 |
| | | // return ''; |
| | | // }, |
| | | |
| | | // è·åæ°æ® |
| | | getQuestionnaire(param1,param2,param3) { |
| | | this.taskid = decodeURIComponent(param1); |
| | | this.patid = decodeURIComponent(param2); |
| | | this.taskname = param3; |
| | | // let taskid = |
| | | // "OFp7tn/B6x7IzKJetvGWHdSWBj7msRlnlj6am9dyuHTH6sEt4uBbVCUXs5kcF/e4O2W6vqHf2Bz9K3/evbYDmw=="; |
| | | // let patid = |
| | | // "CVk0j8O86AeCqhV5WPsBBYDg9fec0wDoDlP9imYK4wDBNIkxywZzMJEGlPagOxnq6qr2WYZo0U8MUGWRGnq8ZA=="; |
| | | // this.taskid = this.decrypt(taskid); |
| | | // this.patid = this.decrypt(patid); |
| | | // let taskids = this.encrypt(this.taskid); |
| | | // let patids = this.encrypt(this.patid); |
| | | // å
åç¼å |
| | | getCachequestionnaire({ param1: this.taskid, param2: this.patid }).then( |
| | | (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) { |
| | | item.scriptResult = JSON.parse(item.scriptResult); |
| | | } else if (item.scriptResult && item.scriptType == 2) { |
| | | item.scriptResult = item.scriptResult.split("&"); |
| | | } |
| | | }); |
| | | return; |
| | | } else { |
| | | this.getExternalfollowup(); |
| | | } |
| | | } else { |
| | | this.getExternalfollowup(); |
| | | } |
| | | } |
| | | ); |
| | | }, |
| | | // è·åæ°æ® |
| | | getExternalfollowup() { |
| | | getExternalfollowup({ param1: this.taskid, param2: this.patid }).then( |
| | | (res) => { |
| | | if (res.code == 200) { |
| | | this.questionList = res.data.script; |
| | | this.jsy = res.data.jsy; |
| | | this.kcb = res.data.kcb; |
| | | // å¤çé¢ç®æ¶éç»ææ ¼å¼ |
| | | this.questionList.forEach((item) => { |
| | | item.nextScriptno = Number(item.nextScriptno); |
| | | if (item.scriptType == 2) { |
| | | item.scriptResult = []; |
| | | } |
| | | }); |
| | | } |
| | | } |
| | | ); |
| | | }, |
| | | // å å¯å½æ° |
| | | encrypt(txt) { |
| | | const encryptor = new JSEncrypt(); |
| | | encryptor.setPublicKey(this.publicKey); // 设置å
¬é¥ |
| | | return encryptor.encrypt(txt); // å¯¹æ°æ®è¿è¡å å¯ |
| | | }, |
| | | // è§£å¯å½æ° |
| | | decrypt(txt) { |
| | | const encryptor = new JSEncrypt(); |
| | | encryptor.setPrivateKey(this.privateKey); // 设置ç§é¥ |
| | | return encryptor.decrypt(txt); // å¯¹æ°æ®è¿è¡è§£å¯ |
| | | }, |
| | | // æäº¤ |
| | | submitForm() { |
| | | // æäº¤è¡¨åé»è¾ |
| | | let form = { |
| | | param1: this.taskid, |
| | | param2: this.patid, |
| | | excep: this.excep, |
| | | serviceSubtaskDetailList: [], |
| | | }; |
| | | const arr = structuredClone(this.questionList); |
| | | // arr.forEach((item) => { |
| | | // item.asrtext = JSON.stringify(item.scriptResult); |
| | | // if (item.scriptType == 2 && item.scriptResult[0]) { |
| | | // item.scriptResult = item.scriptResult.join("&"); |
| | | // } |
| | | // }); |
| | | form.serviceSubtaskDetailList = arr; |
| | | Submitaquestionnaire(form).then((res) => { |
| | | if (res.code == 200) { |
| | | if (this.jsy) { |
| | | this.dialogVisible = true; |
| | | } |
| | | this.accomplish = true; |
| | | this.$modal.msgSuccess("æäº¤æå"); |
| | | } |
| | | }); |
| | | }, |
| | | // ç¼å |
| | | cache(subm) { |
| | | console.log("è¿å
¥ç¼å"); |
| | | let form = { |
| | | param1: this.taskid, |
| | | param2: this.patid, |
| | | 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.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("&"); |
| | | } else if (item.scriptType != 2 && item.scriptResult) { |
| | | item.scriptResult = JSON.stringify(item.scriptResult); |
| | | } |
| | | }); |
| | | form.svyLibTemplateScriptVOS = arr; |
| | | Cachequestionnaire(form).then((res) => { |
| | | if (res.code == 200) { |
| | | if (subm) { |
| | | this.submitForm(); |
| | | } |
| | | } |
| | | }); |
| | | }, |
| | | // å¤çåéé项 |
| | | handleOptionChange(selectedvalue, index, arr) { |
| | | // æ¥æ¾éä¸çé项对象 |
| | | const selectedOption = arr.svyLibTemplateTargetoptions.find( |
| | | (option) => option.optioncontent == selectedvalue |
| | | ); |
| | | if (selectedOption) { |
| | | // å°éä¸çé项对象ç id èµå¼ç» obj.sonId |
| | | this.questionList[index].nextScriptno = selectedOption.nextQuestion; |
| | | this.questionList[index].score = selectedOption.score; |
| | | this.questionList[index].prompt = selectedOption.prompt; |
| | | } |
| | | }, |
| | | // å¤çå¤éé项 |
| | | updateScore(selectedvalues, index, arr) { |
| | | // ��å åæ° |
| | | let score = 0; |
| | | selectedvalues.forEach((value) => { |
| | | const selectedOption = arr.svyLibTemplateTargetoptions.find( |
| | | (option) => option.optioncontent == value |
| | | ); |
| | | if (selectedOption) { |
| | | score += Number(selectedOption.score); |
| | | } |
| | | }); |
| | | this.questionList[index].score = score; |
| | | }, |
| | | }, |
| | | }; |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | .questionnaire { |
| | | // background-image: url("../assets/images/chainbackground.jpg"); |
| | | background-color: #f9f9fb; |
| | | background-size: cover; |
| | | background-attachment: fixed; /* ä¿æèæ¯åºå® */ |
| | | background-position: center; |
| | | font-family: Arial, sans-serif; |
| | | min-height: 100vh; |
| | | margin: 0; |
| | | padding: 0; |
| | | .CONTENT { |
| | | .title { |
| | | color: #3769f3; |
| | | font-size: 22px; |
| | | font-weight: bold; |
| | | margin-bottom: 20px; |
| | | text-align: center; |
| | | } |
| | | } |
| | | } |
| | | .preview-left { |
| | | margin: 10px; |
| | | margin-bottom: 60px; |
| | | background-color: #fff; |
| | | border-radius: 5px; |
| | | // margin: 20px; |
| | | padding: 10px; |
| | | height: 100%; |
| | | // 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; |
| | | } |
| | | } |
| | | } |
| | | .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> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <div class="questionnaire"> |
| | | <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" |
| | | v-for="(item, index) in questionList" |
| | | :key="item.aaa" |
| | | > |
| | | <div class="scriptTopic-dev" :key="index" v-if="item.scriptType == 1"> |
| | | <div class="dev-text"> |
| | | {{ 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 |
| | | > |
| | | </el-radio-group> |
| | | </div> |
| | | <div v-show="item.prompt"> |
| | | <el-alert :title="item.prompt" type="warning"> </el-alert> |
| | | </div> |
| | | </div> |
| | | <!-- å¤é --> |
| | | <div class="scriptTopic-dev" :key="index" v-if="item.scriptType == 2"> |
| | | <div class="dev-text"> |
| | | {{ 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" |
| | | :label="items.optioncontent" |
| | | > |
| | | {{ items.optioncontent }} |
| | | </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> |
| | | </div> |
| | | <!-- 填空 --> |
| | | <div class="scriptTopic-dev" :key="index" v-if="item.scriptType == 4"> |
| | | <div class="dev-text"> |
| | | {{ 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="3" |
| | | placeholder="请è¾å
¥çæ¡" |
| | | v-model="item.scriptResult" |
| | | clearable |
| | | > |
| | | </el-input> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="bottom-fixed"> |
| | | <el-button |
| | | type="primary" |
| | | style="width: 80%; font-size: 20px" |
| | | @click="cache(true)" |
| | | >æäº¤é®å·</el-button |
| | | > |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <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="jsy" type="success"> </el-alert> |
| | | </div> |
| | | </el-dialog> --> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import { |
| | | getExternalfollowup, |
| | | getCachequestionnaire, |
| | | Cachequestionnaire, |
| | | Submitaquestionnaire, |
| | | geturlinfo, |
| | | } from "@/api/AiCentre/index"; |
| | | import JSEncrypt from "jsencrypt"; |
| | | export default { |
| | | data() { |
| | | return { |
| | | taskid: 355, |
| | | patid: 265823, |
| | | 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== ", |
| | | // å端ç§é¥ |
| | | privateKey: |
| | | " MIIBUwIBADANBgkqhkiG9w0BAQEFAASCAT0wggE5AgEAAkEAtDOpbUQhcEoYy77agRhIHmAzs7H+KHJhN56gTTI9fWq23j77nI055MFV3oQQziIrNUTNaPpEQhZXBpI0+f9K9QIDAQABAkB3n0fcWfrcoMN/FU3VnrnZOEF6CzFNxkgU9P8y36QECWKZ9JhYQkNpKrMC9oXlN3VSaRigV7B+L/I/a0Rs1W+tAiEA4jx7xcXJ4y4BNwAmVHt6NNiEkzIwWnwC/0qsEu8NsOsCIQDL6MMn1D2uznC6OuOWpxDCkBh1JL1NzZTZeH2G+hj7nwIgKGAC9tjFnvWm4dn0/T7MIIJDpsFeP8fCAS2iZ/6hwuECIAS/eLvWr1EAsZNEh8QcQ8GkBU3E+ztyjAK8UX/xFt/VAiBf79/1tDErX4/DChecM8w3c3DhbBcjuE3fHZn7p6/UKg==", |
| | | formData: { |
| | | question1: "", |
| | | question2: "", |
| | | question3: "", |
| | | }, |
| | | }; |
| | | }, |
| | | mounted() { |
| | | window.addEventListener("beforeunload", this.cache); |
| | | }, |
| | | beforeDestroy() { |
| | | window.removeEventListener("beforeunload", this.cache); |
| | | }, |
| | | created() { |
| | | this.geturlinfo(); |
| | | }, |
| | | methods: { |
| | | // è§£æurlid |
| | | geturlinfo() { |
| | | // let url = window.location.href; |
| | | let url = this.$route.query.p; |
| | | console.log(url,"url"); |
| | | // let url = 'http://218.108.11.22:8093/sf/003'; |
| | | // let urlid = this.extractLastSegmentFromUrl(url); |
| | | |
| | | geturlinfo( url ).then((res) => { |
| | | if (res.code==200) { |
| | | this.getQuestionnaire(res.data.param1,res.data.param2,res.data.param3,res.data.param5,) |
| | | } |
| | | }); |
| | | }, |
| | | // extractLastSegmentFromUrl(url) { |
| | | // // æ¾å°æåä¸ä¸ª'/'çä½ç½® |
| | | // const lastSlashIndex = url.lastIndexOf('/'); |
| | | // // 妿æ¾å°äº'/'ï¼æªåå
¶åçææå符 |
| | | // if (lastSlashIndex !== -1) { |
| | | // return url.substring(lastSlashIndex + 1); |
| | | // } |
| | | // // å¦ææ²¡ææ¾å°'/'ï¼è¿å空å符串 |
| | | // return ''; |
| | | // }, |
| | | |
| | | // è·åæ°æ® |
| | | getQuestionnaire(param1,param2,param3) { |
| | | this.taskid = decodeURIComponent(param1); |
| | | this.patid = decodeURIComponent(param2); |
| | | this.taskname = decodeURIComponent(param3); |
| | | // let taskid = |
| | | // "OFp7tn/B6x7IzKJetvGWHdSWBj7msRlnlj6am9dyuHTH6sEt4uBbVCUXs5kcF/e4O2W6vqHf2Bz9K3/evbYDmw=="; |
| | | // let patid = |
| | | // "CVk0j8O86AeCqhV5WPsBBYDg9fec0wDoDlP9imYK4wDBNIkxywZzMJEGlPagOxnq6qr2WYZo0U8MUGWRGnq8ZA=="; |
| | | // this.taskid = this.decrypt(taskid); |
| | | // this.patid = this.decrypt(patid); |
| | | // let taskids = this.encrypt(this.taskid); |
| | | // let patids = this.encrypt(this.patid); |
| | | // å
åç¼å |
| | | getCachequestionnaire({ param1: this.taskid, param2: this.patid }).then( |
| | | (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) { |
| | | item.scriptResult = JSON.parse(item.scriptResult); |
| | | } else if (item.scriptResult && item.scriptType == 2) { |
| | | item.scriptResult = item.scriptResult.split("&"); |
| | | } |
| | | }); |
| | | return; |
| | | } else { |
| | | this.getExternalfollowup(); |
| | | } |
| | | } else { |
| | | this.getExternalfollowup(); |
| | | } |
| | | } |
| | | ); |
| | | }, |
| | | // è·åæ°æ® |
| | | getExternalfollowup() { |
| | | getExternalfollowup({ param1: this.taskid, param2: this.patid }).then( |
| | | (res) => { |
| | | if (res.code == 200) { |
| | | this.questionList = res.data.script; |
| | | this.jsy = res.data.jsy; |
| | | this.kcb = res.data.kcb; |
| | | // å¤çé¢ç®æ¶éç»ææ ¼å¼ |
| | | this.questionList.forEach((item) => { |
| | | item.nextScriptno = Number(item.nextScriptno); |
| | | if (item.scriptType == 2) { |
| | | item.scriptResult = []; |
| | | } |
| | | }); |
| | | } |
| | | } |
| | | ); |
| | | }, |
| | | // å å¯å½æ° |
| | | encrypt(txt) { |
| | | const encryptor = new JSEncrypt(); |
| | | encryptor.setPublicKey(this.publicKey); // 设置å
¬é¥ |
| | | return encryptor.encrypt(txt); // å¯¹æ°æ®è¿è¡å å¯ |
| | | }, |
| | | // è§£å¯å½æ° |
| | | decrypt(txt) { |
| | | const encryptor = new JSEncrypt(); |
| | | encryptor.setPrivateKey(this.privateKey); // 设置ç§é¥ |
| | | return encryptor.decrypt(txt); // å¯¹æ°æ®è¿è¡è§£å¯ |
| | | }, |
| | | // æäº¤ |
| | | submitForm() { |
| | | // æäº¤è¡¨åé»è¾ |
| | | let form = { |
| | | param1: this.taskid, |
| | | param2: this.patid, |
| | | excep: this.excep, |
| | | serviceSubtaskDetailList: [], |
| | | }; |
| | | const arr = structuredClone(this.questionList); |
| | | // arr.forEach((item) => { |
| | | // item.asrtext = JSON.stringify(item.scriptResult); |
| | | // if (item.scriptType == 2 && item.scriptResult[0]) { |
| | | // item.scriptResult = item.scriptResult.join("&"); |
| | | // } |
| | | // }); |
| | | form.serviceSubtaskDetailList = arr; |
| | | Submitaquestionnaire(form).then((res) => { |
| | | if (res.code == 200) { |
| | | if (this.jsy) { |
| | | this.dialogVisible = true; |
| | | } |
| | | this.accomplish = true; |
| | | this.$modal.msgSuccess("æäº¤æå"); |
| | | } |
| | | }); |
| | | }, |
| | | // ç¼å |
| | | cache(subm) { |
| | | console.log("è¿å
¥ç¼å"); |
| | | let form = { |
| | | param1: this.taskid, |
| | | param2: this.patid, |
| | | 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.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("&"); |
| | | } else if (item.scriptType != 2 && item.scriptResult) { |
| | | item.scriptResult = JSON.stringify(item.scriptResult); |
| | | } |
| | | }); |
| | | form.svyLibTemplateScriptVOS = arr; |
| | | Cachequestionnaire(form).then((res) => { |
| | | if (res.code == 200) { |
| | | if (subm) { |
| | | this.submitForm(); |
| | | } |
| | | } |
| | | }); |
| | | }, |
| | | // å¤çåéé项 |
| | | handleOptionChange(selectedvalue, index, arr) { |
| | | // æ¥æ¾éä¸çé项对象 |
| | | const selectedOption = arr.svyLibTemplateTargetoptions.find( |
| | | (option) => option.optioncontent == selectedvalue |
| | | ); |
| | | if (selectedOption) { |
| | | // å°éä¸çé项对象ç id èµå¼ç» obj.sonId |
| | | this.questionList[index].nextScriptno = selectedOption.nextQuestion; |
| | | this.questionList[index].score = selectedOption.score; |
| | | this.questionList[index].prompt = selectedOption.prompt; |
| | | } |
| | | }, |
| | | // å¤çå¤éé项 |
| | | updateScore(selectedvalues, index, arr) { |
| | | // ��å åæ° |
| | | let score = 0; |
| | | selectedvalues.forEach((value) => { |
| | | const selectedOption = arr.svyLibTemplateTargetoptions.find( |
| | | (option) => option.optioncontent == value |
| | | ); |
| | | if (selectedOption) { |
| | | score += Number(selectedOption.score); |
| | | } |
| | | }); |
| | | this.questionList[index].score = score; |
| | | }, |
| | | }, |
| | | }; |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | .questionnaire { |
| | | // background-image: url("../assets/images/chainbackground.jpg"); |
| | | background-color: #f9f9fb; |
| | | background-size: cover; |
| | | background-attachment: fixed; /* ä¿æèæ¯åºå® */ |
| | | background-position: center; |
| | | font-family: Arial, sans-serif; |
| | | min-height: 100vh; |
| | | margin: 0; |
| | | padding: 0; |
| | | .CONTENT { |
| | | .title { |
| | | color: #3769f3; |
| | | font-size: 22px; |
| | | font-weight: bold; |
| | | margin-bottom: 20px; |
| | | text-align: center; |
| | | } |
| | | } |
| | | } |
| | | .preview-left { |
| | | margin: 10px; |
| | | margin-bottom: 60px; |
| | | background-color: #fff; |
| | | border-radius: 5px; |
| | | // margin: 20px; |
| | | padding: 10px; |
| | | height: 100%; |
| | | // 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; |
| | | } |
| | | } |
| | | } |
| | | .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> |
| | |
| | | <template> |
| | | <div class="questionnaire"> |
| | | <!-- <div class="CONTENT"> |
| | | <div class="title">æ°åå»é¢å»æ¤ç¥è¯å®£æ</div> |
| | | <div class="title">æµä¸å»å¤§äºé¢å»æ¤ç¥è¯å®£æ</div> |
| | | <div class="preview-left"> |
| | | <div v-html="richText"></div> |
| | | </div> |
| | |
| | | <div class="CONTENT" > |
| | | <div class="preview-left"> |
| | | <div class="toptitle"> |
| | | <div class="title">{{ taskname ? taskname : "æ°åå»é¢å»æ¤ç¥è¯å®£æ" }}</div> |
| | | <div class="title">{{ taskname ? taskname : "æµä¸å»å¤§äºé¢å»æ¤ç¥è¯å®£æ" }}</div> |
| | | <div style="font-size: 22px; margin-bottom: 20px; line-height: 1.5"> |
| | | {{ |
| | | kcb |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <div class="questionnaire"> |
| | | <!-- <div class="CONTENT"> |
| | | <div class="title">æµä¸å»å¤§äºé¢å»æ¤ç¥è¯å®£æ</div> |
| | | <div class="preview-left"> |
| | | <div v-html="richText"></div> |
| | | </div> |
| | | |
| | | </div> --> |
| | | <div class="CONTENT" > |
| | | <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 v-html="richText"></div> |
| | | <div |
| | | style=" |
| | | text-align: center; |
| | | padding-top: 50px; |
| | | font-size: 24px; |
| | | color: #175997; |
| | | font-weight: 600; |
| | | margin-bottom: 10px; |
| | | " |
| | | > |
| | | {{ |
| | | jsy |
| | | ? jsy |
| | | : "çæ´»ä¸è¦å³é¸ç»åï¼æ³¨æä¼æ¯åè¥å
»ï¼éå½é»ç¼ï¼æçéé
ï¼ä¿æå¿æ
èç
ï¼å®æå¤è¯ã飿¬æ¬¡å®£æå
容就å°è¿éï¼ç¥æ¨èº«ä½å¥åº·ï¼" |
| | | }} </div> |
| | | <!-- <div style="font-size: 20px"> |
| | | {{ |
| | | jsy |
| | | ? jsy |
| | | : "çæ´»ä¸è¦å³é¸ç»åï¼æ³¨æä¼æ¯åè¥å
»ï¼éå½é»ç¼ï¼æçéé
ï¼ä¿æå¿æ
èç
ï¼å®æå¤è¯ã飿¬æ¬¡å®£æå
容就å°è¿éï¼ç¥æ¨èº«ä½å¥åº·ï¼" |
| | | }} |
| | | </div> --> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import { |
| | | getExternalfollowup, |
| | | SetsaveQuestionAnswer, |
| | | geturlinfo |
| | | } from "@/api/AiCentre/index"; |
| | | import { getToken } from "@/utils/auth"; |
| | | import axios from "axios"; |
| | | import JSEncrypt from "jsencrypt"; |
| | | export default { |
| | | data() { |
| | | return { |
| | | taskid: 355, |
| | | patid: 265823, |
| | | questionList: null, |
| | | // å端å
¬é¥ |
| | | publicKey: |
| | | "MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAKR0yHv0rbJWQE+Sc7/FwpW66qMd9qX2k6z+SDgkSdxWh/1GbBoAP7bDQQRF6vXmoKsD2ya42H6XRLSDXAoayuMCAwEAAQ== ", |
| | | // å端ç§é¥ |
| | | privateKey: |
| | | " MIIBUwIBADANBgkqhkiG9w0BAQEFAASCAT0wggE5AgEAAkEAtDOpbUQhcEoYy77agRhIHmAzs7H+KHJhN56gTTI9fWq23j77nI055MFV3oQQziIrNUTNaPpEQhZXBpI0+f9K9QIDAQABAkB3n0fcWfrcoMN/FU3VnrnZOEF6CzFNxkgU9P8y36QECWKZ9JhYQkNpKrMC9oXlN3VSaRigV7B+L/I/a0Rs1W+tAiEA4jx7xcXJ4y4BNwAmVHt6NNiEkzIwWnwC/0qsEu8NsOsCIQDL6MMn1D2uznC6OuOWpxDCkBh1JL1NzZTZeH2G+hj7nwIgKGAC9tjFnvWm4dn0/T7MIIJDpsFeP8fCAS2iZ/6hwuECIAS/eLvWr1EAsZNEh8QcQ8GkBU3E+ztyjAK8UX/xFt/VAiBf79/1tDErX4/DChecM8w3c3DhbBcjuE3fHZn7p6/UKg==", |
| | | formData: { |
| | | question1: "", |
| | | question2: "", |
| | | question3: "", |
| | | }, |
| | | richText: "<p>Hello, <strong>world</strong>!</p>", |
| | | url:'', |
| | | taskname:'', |
| | | kcb:'', |
| | | jsy:'', |
| | | }; |
| | | }, |
| | | |
| | | created() { |
| | | this.getQuestionnaire(); |
| | | }, |
| | | methods: { |
| | | // è§£æurlid |
| | | geturlinfo() { |
| | | // let url = window.location.href; |
| | | let url = this.$route.query.p; |
| | | // let url = 'http://218.108.11.22:8093/sf/003'; |
| | | // let urlid = this.extractLastSegmentFromUrl(url); |
| | | |
| | | geturlinfo( url ).then((res) => { |
| | | if (res.code==200) { |
| | | this.getQuestionnaire(res.data.param1,res.data.param2,res.data.param3,res.data.param5,) |
| | | } |
| | | }); |
| | | }, |
| | | extractLastSegmentFromUrl(url) { |
| | | // æ¾å°æåä¸ä¸ª'/'çä½ç½® |
| | | const lastSlashIndex = url.lastIndexOf('/'); |
| | | // 妿æ¾å°äº'/'ï¼æªåå
¶åçææå符 |
| | | if (lastSlashIndex !== -1) { |
| | | return url.substring(lastSlashIndex + 1); |
| | | } |
| | | // å¦ææ²¡ææ¾å°'/'ï¼è¿å空å符串 |
| | | return ''; |
| | | }, |
| | | // è·åæ°æ® |
| | | getQuestionnaire(param1,param2,param3) { |
| | | this.taskid = param1; |
| | | this.patid = param2; |
| | | this.taskname = param3; |
| | | // // let taskid = |
| | | // // "OFp7tn/B6x7IzKJetvGWHdSWBj7msRlnlj6am9dyuHTH6sEt4uBbVCUXs5kcF/e4O2W6vqHf2Bz9K3/evbYDmw=="; |
| | | // // let patid = |
| | | // // "CVk0j8O86AeCqhV5WPsBBYDg9fec0wDoDlP9imYK4wDBNIkxywZzMJEGlPagOxnq6qr2WYZo0U8MUGWRGnq8ZA=="; |
| | | // this.taskid = this.decrypt(taskid); |
| | | // this.patid = this.decrypt(patid); |
| | | |
| | | // // this.$modal.msgSuccess("ç¨æ·id为" + this.patid); |
| | | // // this.$modal.msgSuccess("ä»»å¡id为" + this.taskid); |
| | | // let taskids = this.encrypt(this.taskid); |
| | | // let patids = this.encrypt(this.patid); |
| | | getExternalfollowup({ param1: this.taskid, param2: this.patid }).then((res) => { |
| | | if (res.code == 200) { |
| | | this.url = res.data.script[0].richText; |
| | | this.jsy = res.data.jsy; |
| | | this.kcb = res.data.kcb; |
| | | // 临æ¶è·åæ°æ® |
| | | axios |
| | | .get(this.url) |
| | | .then((response) => { |
| | | console.log(response.data, "æ°æ®"); // è¾åºè·åå°çæä»¶å
容 |
| | | this.richText = response.data; |
| | | this.richText = this.addStyleToImages(this.richText); |
| | | }) |
| | | .catch((error) => { |
| | | console.error("Failed to fetch file:", error); |
| | | }); |
| | | } |
| | | }); |
| | | |
| | | }, |
| | | addStyleToImages(html) { |
| | | return html.replace( |
| | | /<img([^>]*)style=(['"])(?:(?!\2).)*\2([^>]*)>/g, |
| | | '<img$1style="width:100%;height:auto;"$3>' |
| | | ); |
| | | }, |
| | | // å å¯å½æ° |
| | | encrypt(txt) { |
| | | const encryptor = new JSEncrypt(); |
| | | encryptor.setPublicKey(this.publicKey); // 设置å
¬é¥ |
| | | return encryptor.encrypt(txt); // å¯¹æ°æ®è¿è¡å å¯ |
| | | }, |
| | | |
| | | // è§£å¯å½æ° |
| | | decrypt(txt) { |
| | | const encryptor = new JSEncrypt(); |
| | | encryptor.setPrivateKey(this.privateKey); // 设置ç§é¥ |
| | | return encryptor.decrypt(txt); // å¯¹æ°æ®è¿è¡è§£å¯ |
| | | }, |
| | | // æäº¤ |
| | | submitForm() { |
| | | // æäº¤è¡¨åé»è¾ |
| | | console.log(this.questionList); |
| | | let form = { |
| | | param1: this.taskid, |
| | | param2: this.patid, |
| | | ivrTaskcalldetailList: [], |
| | | }; |
| | | this.questionList.forEach((item) => { |
| | | let optionarr = []; |
| | | item.ivrLibaScriptTargetoptionList.forEach((option) => { |
| | | optionarr.push(option.targetvalue); |
| | | }); |
| | | let ivrTaskcalldetail = { |
| | | asrtext: item.asrtext, |
| | | valueType: item.valueType, |
| | | scriptContent: item.scriptContent, |
| | | targetoptions: optionarr.join(","), |
| | | }; |
| | | form.ivrTaskcalldetailList.push(ivrTaskcalldetail); |
| | | }); |
| | | console.log(form, "form"); |
| | | |
| | | SetsaveQuestionAnswer(form).then((res) => { |
| | | if (res.code == 200) { |
| | | this.$modal.msgSuccess("æäº¤æå"); |
| | | } |
| | | }); |
| | | // å¯ä»¥å°æ°æ®æäº¤å°å端æè
è¿è¡å
¶ä»å¤ç |
| | | }, |
| | | }, |
| | | }; |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | |
| | | .questionnaire { |
| | | background-image: url("../assets/images/chainbackground1.jpg"); |
| | | background-color: #f9f9fb; |
| | | background-size: cover; |
| | | background-attachment: fixed; /* ä¿æèæ¯åºå® */ |
| | | background-position: center; |
| | | font-family: Arial, sans-serif; |
| | | min-height: 100vh; |
| | | margin: 0; |
| | | padding: 0; |
| | | .CONTENT { |
| | | padding-top: 15px; |
| | | padding-bottom: 15px; |
| | | .title { |
| | | color: #3769f3; |
| | | font-size: 22px; |
| | | font-weight: bold; |
| | | margin-bottom: 20px; |
| | | text-align: center; |
| | | } |
| | | } |
| | | } |
| | | .preview-left { |
| | | margin: 10px; |
| | | margin-bottom: 60px; |
| | | background-color: #fff; |
| | | border-radius: 5px; |
| | | // margin: 20px; |
| | | padding: 10px; |
| | | padding-bottom: 100px; |
| | | height: 100%; |
| | | // 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; |
| | | } |
| | | } |
| | | } |
| | | </style> |
| | |
| | | :rules="registerRules" |
| | | class="register-form" |
| | | > |
| | | <h3 class="title">æµä¸å¤§äºé¢æºæ
§é访平å°</h3> |
| | | <h3 class="title">æµä¸å»å¤§äºé¢æºæ
§é访平å°</h3> |
| | | <el-form-item prop="username"> |
| | | <el-input |
| | | v-model="registerForm.username" |
| | |
| | | this.ruleForm.isoperation = 2; |
| | | this.ruleForm.tempDetpRelevances = []; |
| | | compileFollowup(this.ruleForm).then((res) => { |
| | | this.$modal.msgSuccess("ä¿®æ¹æå"); |
| | | if (res.code==200) { |
| | | this.$modal.msgSuccess("ä¿®æ¹æå"); |
| | | this.confirmillness(); |
| | | this.putbelongDepts(this.id); |
| | | this.$modal.closeLoading(); |
| | | // this.$modal.closeLoading(); |
| | | // this.$router.go(-1); |
| | | window.location.reload(); |
| | | }else{ |
| | | this.$modal.closeLoading(); |
| | | } |
| | | |
| | | }); |
| | | } else { |
| | | this.ruleForm.isoperation = 1; |
| | |
| | | : "1.0"; |
| | | this.ruleForm.tempDetpRelevances = []; |
| | | compileFollowup(this.ruleForm).then((res) => { |
| | | this.$modal.msgSuccess("æ°å¢æå"); |
| | | this.confirmillness(res.data); |
| | | this.putbelongDepts(res.data); |
| | | this.$modal.closeLoading(); |
| | | this.$router.go(-1); |
| | | if (res.code==200) { |
| | | this.$modal.msgSuccess("æ°å¢æå"); |
| | | this.confirmillness(res.data); |
| | | this.putbelongDepts(res.data); |
| | | this.$modal.closeLoading(); |
| | | this.$router.go(-1); |
| | | }else{ |
| | | this.$modal.closeLoading(); |
| | | } |
| | | |
| | | }); |
| | | } |
| | | }, |
| | |
| | | }; |
| | | // åèµ·wsè¯·æ± |
| | | sendWebsocket( |
| | | "ws://192.168.2.13:8095/chat?userId="+this.userid, |
| | | "ws://192.168.2.10:8095/chat?userId="+this.userid, |
| | | obj, |
| | | this.wsMessage, |
| | | this.wsError |
| | |
| | | // } |
| | | |
| | | |
| | | // clearTimeout(timerId) |
| | | |
| | | // ä¼å
å å
¥éç¨åºå¹é
ææ¬ |
| | | if (dataJson.nowQuestion.submoduleText) { |
| | | this.Answerline.push({ |
| | |
| | | this.sendFn(); // åè°ç¨ |
| | | } |
| | | }, this.timeout * 1000); |
| | | }else{ |
| | | clearTimeout(timerId) |
| | | } |
| | | console.log(this.questionList); |
| | | |
| | |
| | | console.log(obj, "å
¥å"); |
| | | // åèµ·wsè¯·æ± |
| | | sendWebsocket( |
| | | "ws://192.168.2.13:8095/chat?userId="+this.userid, |
| | | "ws://192.168.2.10:8095/chat?userId="+this.userid, |
| | | obj, |
| | | this.wsMessage, |
| | | this.wsError |
| | |
| | | |
| | | const CompressionPlugin = require('compression-webpack-plugin') |
| | | |
| | | const name = process.env.VUE_APP_TITLE || 'æµä¸å¤§äºé¢æºæ
§é访平å°' // ç½é¡µæ é¢ |
| | | const name = process.env.VUE_APP_TITLE || 'æµä¸å»å¤§äºé¢æºæ
§é访平å°' // ç½é¡µæ é¢ |
| | | |
| | | const port = process.env.port || process.env.npm_config_port || 8093 // ç«¯å£ |
| | | |
| | |
| | | // detail: https://cli.vuejs.org/config/#devserver-proxy |
| | | [process.env.VUE_APP_BASE_API]: { |
| | | // target: `http://192.168.168.60:8095`, |
| | | target: `http://192.168.2.13:8095`, |
| | | target: `http://10.202.20.185:8095`, |
| | | // target:`http://localhost:8095`, |
| | | // target: `http://192.168.101.135:8095`, |
| | | // target: `http://192.168.101.166:8093`, |