From df59cae6f3c73605a3f3b4055fdca5b4dabde2c2 Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期四, 05 九月 2024 18:32:17 +0800 Subject: [PATCH] 测试完成 --- src/views/index.vue | 17 dist .zip | 0 src/api/system/user.js | 2 vue.config.js | 6 src/api/system/role.js | 2 src/views/knowledge/questionnaire/compilequer/index.vue | 82 ++++ src/views/patient/patient/index.vue | 131 ++++---- src/views/patient/propaganda/QuestionnaireTask.vue | 286 ++++++++++++------ publicNetwork.zip | 0 src/components/Regular/index.vue | 7 src/views/knowledge/questionbank/particulars/index.vue | 78 +++- src/views/patient/patient/profile/index.vue | 219 +++++++++----- src/views/repositoryai/intention/index.vue | 26 + 13 files changed, 553 insertions(+), 303 deletions(-) diff --git a/dist .zip b/dist .zip new file mode 100644 index 0000000..3fbdea0 --- /dev/null +++ b/dist .zip Binary files differ diff --git a/publicNetwork.zip b/publicNetwork.zip new file mode 100644 index 0000000..7d6684f --- /dev/null +++ b/publicNetwork.zip Binary files differ diff --git a/src/api/system/role.js b/src/api/system/role.js index ffb8d1d..1df8e40 100644 --- a/src/api/system/role.js +++ b/src/api/system/role.js @@ -20,7 +20,7 @@ // 鏂板瑙掕壊 export function addRole(data) { return request({ - url: '/system/role', + url: '/system/role/add', method: 'post', data: data }) diff --git a/src/api/system/user.js b/src/api/system/user.js index 1f33108..2aeb7e1 100644 --- a/src/api/system/user.js +++ b/src/api/system/user.js @@ -51,7 +51,7 @@ password } return request({ - url: '/system/user/resetPwd/edit', + url: '/system/user/resetPwd', method: 'post', data: data }) diff --git a/src/components/Regular/index.vue b/src/components/Regular/index.vue index b52668f..9a033d5 100644 --- a/src/components/Regular/index.vue +++ b/src/components/Regular/index.vue @@ -36,7 +36,9 @@ <el-col :span="20" ><el-form-item label="閫夐」璇存槑"> <el-input - type="text" + style="width: 500px;" + type="textarea" + :rows="2" placeholder="璇疯緭鍏�" v-model="item.optiondesc" show-word-limit @@ -244,6 +246,9 @@ targetvalue: [ { required: true, message: "璇疯緭鍏ラ�夐」鍚嶇О", trigger: "blur" }, ], + isabnormal: [ + { required: true, message: "璇疯緭鍏ラ�夐」鍚嶇О", trigger: "blur" }, + ], }, }; }, diff --git a/src/views/index.vue b/src/views/index.vue index 2fe2587..f03c396 100644 --- a/src/views/index.vue +++ b/src/views/index.vue @@ -245,23 +245,18 @@ > <el-col :span="7"> <div style="display: flex"> - <div class="subtitle">鍑洪櫌闅忚</div> + <div class="subtitle">婊℃剰搴﹁皟鏌�</div> <div class="grid-contents bg-purple-light">0娆�</div> </div> </el-col> <el-col :span="7"> <div style="display: flex"> - <div class="subtitle">鍑洪櫌瀹f暀</div> + <div class="subtitle">鍏朵粬閫氱煡</div> <div class="grid-contents bg-purple-light">0娆�</div> </div> </el-col> - <el-col :span="7"> - <div style="display: flex"> - <div class="subtitle">澶嶈瘖閫氱煡</div> - <div class="grid-contents bg-purple-light">0娆�</div> - </div> - </el-col> </el-row + </el-row > <el-row> <el-col :span="3" @@ -269,20 +264,20 @@ > <el-col :span="7"> <div style="display: flex"> - <div class="subtitle">鍑洪櫌闅忚</div> + <div class="subtitle">鍦ㄩ櫌瀹f暀</div> <div class="grid-contents bg-purple-light">0娆�</div> </div> </el-col> <el-col :span="7"> <div style="display: flex"> - <div class="subtitle">鍑洪櫌瀹f暀</div> + <div class="subtitle">鍦ㄩ櫌璇勪及</div> <div class="grid-contents bg-purple-light">0娆�</div> </div> </el-col> <el-col :span="7"> <div style="display: flex"> - <div class="subtitle">澶嶈瘖閫氱煡</div> + <div class="subtitle">鍏朵粬閫氱煡</div> <div class="grid-contents bg-purple-light">0娆�</div> </div> </el-col> </el-row diff --git a/src/views/knowledge/questionbank/particulars/index.vue b/src/views/knowledge/questionbank/particulars/index.vue index 0adb83f..bf5f9c8 100644 --- a/src/views/knowledge/questionbank/particulars/index.vue +++ b/src/views/knowledge/questionbank/particulars/index.vue @@ -23,7 +23,7 @@ </div> <div v-if="Editprogress == 1"> <el-card class="box-card"> - <el-form :inline="true" :model="topicobj" class="demo-form-inline"> + <el-form :inline="true" ref="topicobj" :model="topicobj" :rules="rules" class="demo-form-inline"> <div class="headline"> 鍩虹淇℃伅閰嶇疆 <span style="margin-left: 30px" @@ -42,7 +42,7 @@ <div style="margin-left: 8%"> <el-row :gutter="10"> <el-col :span="8"> - <el-form-item label="闂鍒嗙被"> + <el-form-item label="闂鍒嗙被" prop="categoryid"> <el-select v-model="topicobj.categoryid" size="medium" @@ -66,7 +66,7 @@ </el-form-item> </el-col> <el-col :span="8"> - <el-form-item label="璇勪环绫诲瀷"> + <el-form-item label="璇勪环绫诲瀷" prop="scoretype"> <el-select v-model="topicobj.scoretype" placeholder="璇烽�夋嫨鍒嗙被" @@ -82,7 +82,7 @@ </el-form-item> </el-col> <el-col :span="8" v-if="topicobj.scoretype == 1"> - <el-form-item label="棰樼洰寰楀垎"> + <el-form-item label="棰樼洰寰楀垎" prop="score"> <el-input v-model="topicobj.score" placeholder="璇疯緭鍏ュ垎鏁�" @@ -93,14 +93,14 @@ <el-row :gutter="10"> <el-col :span="8" - ><el-form-item label="棰樼洰鏍囬"> + ><el-form-item label="棰樼洰鏍囬" prop="scriptTopic"> <el-input v-model="topicobj.scriptTopic" placeholder="璇疯緭鍏ユ爣棰�" ></el-input> </el-form-item ></el-col> <el-col :span="8" - ><el-form-item label="鏄惁鍙敤"> + ><el-form-item label="鏄惁鍙敤" prop="isavailable"> <el-radio-group v-model="topicobj.isavailable"> <el-radio @change="$forceUpdate()" @@ -111,8 +111,8 @@ </el-radio-group> </el-form-item></el-col > - <el-col :span="8"> - <el-form-item label="鏄惁蹇呭~"> + <!-- <el-col :span="8"> + <el-form-item label="鏄惁蹇呭~" prop="ismandatory"> <el-radio-group v-model="topicobj.ismandatory"> <el-radio @change="$forceUpdate()" @@ -122,11 +122,11 @@ > </el-radio-group> </el-form-item> - </el-col> + </el-col> --> </el-row> <el-row :gutter="10"> <el-col :span="8"> - <el-form-item label="璇█"> + <el-form-item label="璇█" prop="language"> <el-select v-model="topicobj.language" size="medium" @@ -145,7 +145,7 @@ </el-form-item> </el-col> <el-col :span="8" - ><el-form-item label="棰樼洰绫诲瀷"> + ><el-form-item label="棰樼洰绫诲瀷" prop="scriptType"> <el-select v-model="topicobj.scriptType" @change="changefn" @@ -164,7 +164,7 @@ </el-select> </el-form-item ></el-col> <el-col :span="8" - ><el-form-item label="閫傜敤鏂瑰紡"> + ><el-form-item label="閫傜敤鏂瑰紡" prop="suitway"> <el-select v-model="topicobj.suitway" disabled @@ -180,7 +180,7 @@ </el-option> </el-select></el-form-item ></el-col> </el-row> - <el-form-item label="棰樼洰鍐呭"> + <el-form-item label="棰樼洰鍐呭" prop="scriptContent"> <el-input style="width: 40vw" type="textarea" @@ -235,7 +235,7 @@ </el-form-item> </el-col> </el-row> --> - <el-form-item label="棰樼洰璇存槑"> + <el-form-item label="棰樼洰璇存槑" prop="targetname"> <el-input style="width: 40vw" type="textarea" @@ -527,7 +527,7 @@ <el-input type="textarea" :rows="4" - placeholder="姝ゅ灞曠ず鏀堕泦淇℃伅" + placeholder="姝ゅ灞曠ず闂瓟棰樻敹闆嗕俊鎭�" v-model="testgovalue" > </el-input> @@ -607,14 +607,6 @@ align="center" key="targetdesc" prop="targetdesc" - width="200" - :show-overflow-tooltip="true" - /> - <el-table-column - label="璇█" - align="center" - key="language" - prop="language" width="200" :show-overflow-tooltip="true" /> @@ -732,6 +724,8 @@ svyLibScriptOptions: [], svyLibScriptTagList: [], suitway: "1", + scoretype:'4', + language:'鏅�氳瘽', }, headers: { Authorization: "Bearer " + getToken(), @@ -799,6 +793,36 @@ valuetype: [], usable: [], mode: [], //鏂瑰紡 + // 琛ㄥ崟鏍¢獙 + rules: { + categoryid: [ + { required: true, message: "闂鍒嗙被涓嶈兘涓虹┖", trigger: "blur" }, + ], + scoretype: [ + { required: true, message: "璇勪环绫诲瀷涓嶈兘涓虹┖", trigger: "blur" }, + ], + language: [ + { required: true, message: "璇█涓嶈兘涓虹┖", trigger: "blur" }, + ], + isavailable: [ + { required: true, message: "鍙敤鐘舵�佷笉鑳戒负绌�", trigger: "blur" }, + ], + scriptTopic: [ + { required: true, message: "棰樼洰鏍囬涓嶈兘涓虹┖", trigger: "blur" }, + ], + ismandatory: [ + { required: true, message: "鏄惁蹇呭~涓嶈兘涓虹┖", trigger: "blur" }, + ], + scriptType: [ + { required: true, message: "棰樼洰绫诲瀷涓嶈兘涓虹┖", trigger: "blur" }, + ], + suitway: [ + { required: true, message: "閫傜敤鏂瑰紡涓嶈兘涓虹┖", trigger: "blur" }, + ], + scriptContent: [ + { required: true, message: "棰樼洰鍐呭涓嶈兘涓虹┖", trigger: "blur" }, + ], + }, }; }, @@ -889,7 +913,9 @@ }, // 鏂板鎴栦慨鏀硅鎯� compileissue() { - this.topicobj.svyLibScriptOptions = this.topicobj.svyLibScriptOptions.map( + this.$refs["topicobj"].validate((valid) => { + if (valid) { + this.topicobj.svyLibScriptOptions = this.topicobj.svyLibScriptOptions.map( (item) => { if (item.isoperation != 1 && item.isoperation != 3) { item.isoperation = 2; @@ -943,6 +969,10 @@ if (this.illnesslistapi.length) { deltargetillness(this.illnesslistapi.join(",")).then((res) => {}); } + } + }) + + }, // 鍒ゆ柇鍒嗗�� Scorejudgment() { diff --git a/src/views/knowledge/questionnaire/compilequer/index.vue b/src/views/knowledge/questionnaire/compilequer/index.vue index f8218e2..7d0fc22 100644 --- a/src/views/knowledge/questionnaire/compilequer/index.vue +++ b/src/views/knowledge/questionnaire/compilequer/index.vue @@ -41,7 +41,7 @@ > <el-row :gutter="10"> <el-col :span="10"> - <el-form-item label="闂嵎鍒嗙被" prop="region"> + <el-form-item label="闂嵎鍒嗙被" prop="categoryid"> <el-select v-model="ruleForm.categoryid" size="medium" @@ -65,7 +65,7 @@ </el-form-item> </el-col> <el-col :span="10"> - <el-form-item label="璇勪环绫诲瀷"> + <el-form-item label="璇勪环绫诲瀷" prop="scoreType"> <el-select v-model="ruleForm.scoreType" placeholder="璇烽�夋嫨鍒嗙被" @@ -81,12 +81,12 @@ </el-form-item> </el-col> </el-row> - <el-form-item label="闂嵎鏍囬" prop="name"> + <el-form-item label="闂嵎鏍囬" prop="svyname"> <div style="width: 30%"> <el-input v-model="ruleForm.svyname"></el-input> </div> </el-form-item> - <el-form-item label="闂嵎鎻忚堪"> + <el-form-item label="闂嵎鎻忚堪" prop="description"> <el-input style="width: 40vw" type="textarea" @@ -98,7 +98,19 @@ ></el-form-item> <el-row> - <el-form-item label="鏍囩" prop="desc"> + <el-form-item prop="dynamicTags" > + <template #label> + 鏍囩 + <el-tooltip + class="item" + effect="light" + content="鍑嗙‘銆佹壖瑕併�佸閲嶇殑鏍囩锛屽彲浠ヨ鎮ㄥ湪绯荤粺浣跨敤涓柟渚跨殑鏌ユ壘鍒拌妯$増銆�" + placement="top-start" + > + <i class="el-icon-warning-outline"></i> + </el-tooltip> + <!-- 鍦ㄦ爣绛惧悗鎻掑叆绾㈣壊鏄熷彿 --> + </template> <div class="xinz-inf"> <el-tag :key="tag.tagname" @@ -142,7 +154,18 @@ </el-form-item> </el-row> <div class="xinz-infs"> - <el-form-item label="閫傜敤鐤剧梾" prop="region"> + <el-form-item > + <template #label> + 閫傜敤鐤剧梾 + <el-tooltip + class="item" + effect="light" + content="閫夋嫨濂介�傜敤鐤剧梾鍚庯紝鍙互鏂逛究鎮ㄩ�氳繃鐤剧梾璇婃柇鏌ユ壘鍒板搴旂殑鐥呬汉!" + placement="top-start" + > + <i class="el-icon-warning-outline"></i> + </el-tooltip> + </template> <el-tag v-for="tag in displayedTags" :key="tag.icdid" @@ -168,7 +191,7 @@ ></el-input> </el-form-item ></el-col> <el-col :span="9"> - <el-form-item label="鍙敤鐘舵��" prop="region"> + <el-form-item label="鍙敤鐘舵��" prop="isAvailable"> <el-radio-group v-model="ruleForm.isAvailable"> <el-radio v-for="(item, index) in usable" @@ -179,7 +202,7 @@ </el-form-item></el-col > </el-row> - <el-form-item label="闂嵎鏂瑰紡" prop="region"> + <el-form-item label="闂嵎鏂瑰紡" prop="suitway"> <el-select v-model="ruleForm.suitway" size="medium" @@ -237,7 +260,7 @@ </el-form-item></el-col > </el-row> - <el-form-item label="闂嵎缁撴潫璇�"> + <el-form-item label="闂嵎缁撴潫璇�" prop="conclusion"> <el-input style="width: 40vw" type="textarea" @@ -1208,11 +1231,42 @@ svyTemplateLibScripts: [], tempDetpRelevances: [], svyLibTemplateTagList: [], + scoreType:'4', + isAvailable:'0' }, indexform: { svyLibTemplateTargetoptions: [], }, - rules: {}, + // 琛ㄥ崟鏍¢獙 + rules: { + categoryid: [ + { required: true, message: "闂嵎鍒嗙被涓嶈兘涓虹┖", trigger: "blur" }, + ], + scoreType: [ + { required: true, message: "璇勪环绫诲瀷涓嶈兘涓虹┖", trigger: "blur" }, + ], + svyname: [ + { required: true, message: "闂嵎鏍囬涓嶈兘涓虹┖", trigger: "blur" }, + ], + isAvailable: [ + { required: true, message: "鍙敤鐘舵�佷笉鑳戒负绌�", trigger: "blur" }, + ], + scriptTopic: [ + { required: true, message: "棰樼洰鏍囬涓嶈兘涓虹┖", trigger: "blur" }, + ], + ismandatory: [ + { required: true, message: "鏄惁蹇呭~涓嶈兘涓虹┖", trigger: "blur" }, + ], + scriptType: [ + { required: true, message: "棰樼洰绫诲瀷涓嶈兘涓虹┖", trigger: "blur" }, + ], + suitway: [ + { required: true, message: "闂嵎鏂瑰紡涓嶈兘涓虹┖", trigger: "blur" }, + ], + conclusion: [ + { required: true, message: "闂嵎缁撴潫璇笉鑳戒负绌�", trigger: "blur" }, + ], + }, rulesa: {}, optionsclass: [], //鍒嗙被鍒楄〃 optionlist: [ @@ -1380,11 +1434,13 @@ // 鑾峰彇鏁版嵁 getissueinfo() { this.id = this.$route.query.id; - this.ruleForm = { + this.ruleForm= { svyTemplateLibScripts: [], tempDetpRelevances: [], svyLibTemplateTagList: [], - }; + scoreType:'4', + isAvailable:'0' + }, this.topicobj = {}; if (this.id) { @@ -1416,7 +1472,7 @@ }, submitForm(formName) { this.$modal.loading("姝e湪淇淇濆瓨鏁版嵁锛岃绋嶅��..."); - if (this.ruleForm.suitway) { + if (Array.isArray(this.ruleForm.suitway)) { this.ruleForm.suitway = this.ruleForm.suitway.join(","); } if (!this.ruleForm.categoryid) { diff --git a/src/views/patient/patient/index.vue b/src/views/patient/patient/index.vue index f9cc682..f8a68f5 100644 --- a/src/views/patient/patient/index.vue +++ b/src/views/patient/patient/index.vue @@ -950,49 +950,42 @@ }, // 琛ㄥ崟鏍¢獙 rules: { - // userName: [ - // { required: true, message: "鐢ㄦ埛鍚嶇О涓嶈兘涓虹┖", trigger: "blur" }, - // { - // min: 2, - // max: 20, - // message: "鐢ㄦ埛鍚嶇О闀垮害蹇呴』浠嬩簬 2 鍜� 20 涔嬮棿", - // trigger: "blur", - // }, - // ], - // nickName: [ - // { required: true, message: "鐢ㄦ埛鏄电О涓嶈兘涓虹┖", trigger: "blur" }, - // ], - // password: [ - // { required: true, message: "鐢ㄦ埛瀵嗙爜涓嶈兘涓虹┖", trigger: "blur" }, - // { - // min: 5, - // max: 20, - // message: "鐢ㄦ埛瀵嗙爜闀垮害蹇呴』浠嬩簬 5 鍜� 20 涔嬮棿", - // trigger: "blur", - // }, - // ], - // email: [ - // { - // type: "email", - // message: "璇疯緭鍏ユ纭殑閭鍦板潃", - // trigger: ["blur", "change"], - // }, - // ], - // phonenumber: [ - // { - // pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/, - // message: "璇疯緭鍏ユ纭殑鎵嬫満鍙风爜", - // trigger: "blur", - // }, - // ], - // IDnumber: [ - // { - // pattern: - // /^\d{6}((((((19|20)\d{2})(0[13-9]|1[012])(0[1-9]|[12]\d|30))|(((19|20)\d{2})(0[13578]|1[02])31)|((19|20)\d{2})02(0[1-9]|1\d|2[0-8])|((((19|20)([13579][26]|[2468][048]|0[48]))|(2000))0229))\d{3})|((((\d{2})(0[13-9]|1[012])(0[1-9]|[12]\d|30))|((\d{2})(0[13578]|1[02])31)|((\d{2})02(0[1-9]|1\d|2[0-8]))|(([13579][26]|[2468][048]|0[048])0229))\d{2}))(\d|X|x)$/, - // message: "璇疯緭鍏ユ纭殑韬唤璇佸彿鐮�", - // trigger: "blur", - // }, - // ], + name: [ + { required: true, message: "鐢ㄦ埛鍚嶇О涓嶈兘涓虹┖", trigger: "blur" }, + { + min: 2, + max: 20, + message: "鐢ㄦ埛鍚嶇О闀垮害蹇呴』浠嬩簬 2 鍜� 20 涔嬮棿", + trigger: "blur", + }, + ], + + sex: [{ required: true, message: "鎬у埆涓嶈兘涓虹┖", trigger: "blur" }], + age: [{ required: true, message: "骞撮緞涓嶈兘涓虹┖", trigger: "blur" }], + nation: [{ required: true, message: "姘戞棌涓嶈兘涓虹┖", trigger: "blur" }], + telcode: [ + { required: true, message: "鑱旂郴鏂瑰紡涓嶈兘涓虹┖", trigger: "blur" }, + { + pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/, + message: "璇疯緭鍏ユ纭殑鎵嬫満鍙风爜", + trigger: "blur", + }, + ], + idcardtype: [ + { required: true, message: "璇佷欢绫诲瀷涓嶈兘涓虹┖", trigger: "blur" }, + ], + idcardno: [ + { required: true, message: "璇佷欢鍙疯兘涓虹┖", trigger: "blur" }, + { + pattern: + /^\d{6}((((((19|20)\d{2})(0[13-9]|1[012])(0[1-9]|[12]\d|30))|(((19|20)\d{2})(0[13578]|1[02])31)|((19|20)\d{2})02(0[1-9]|1\d|2[0-8])|((((19|20)([13579][26]|[2468][048]|0[48]))|(2000))0229))\d{3})|((((\d{2})(0[13-9]|1[012])(0[1-9]|[12]\d|30))|((\d{2})(0[13578]|1[02])31)|((\d{2})02(0[1-9]|1\d|2[0-8]))|(([13579][26]|[2468][048]|0[048])0229))\d{2}))(\d|X|x)$/, + message: "璇疯緭鍏ユ纭殑韬唤璇佸彿鐮�", + trigger: "blur", + }, + ], + placeOfResidence: [ + { required: true, message: "灞呬綇鍦颁笉鑳戒负绌�", trigger: "blur" }, + ], }, }; }, @@ -1111,30 +1104,34 @@ }, //淇敼/鏂板鎮h�� submitForm() { - if (this.amendtag) { - this.form.isoperation = 2; - alterpatient(this.form) - .then((response) => { - console.log(response); - }) - .then(() => { - this.getList(); - this.$modal.msgSuccess("淇敼鎴愬姛"); - }); - } else { - this.form.isoperation = 1; - alterpatient(this.form) - .then((response) => { - console.log(response); - }) - .then(() => { - this.getList(); - this.$modal.msgSuccess("娣诲姞鎴愬姛"); - }); - } - this.reset(); - // this.idds = ""; - this.Labelchange = false; + this.$refs["form"].validate((valid) => { + if (valid) { + if (this.amendtag) { + this.form.isoperation = 2; + alterpatient(this.form) + .then((response) => { + console.log(response); + }) + .then(() => { + this.getList(); + this.$modal.msgSuccess("淇敼鎴愬姛"); + }); + } else { + this.form.isoperation = 1; + alterpatient(this.form) + .then((response) => { + console.log(response); + }) + .then(() => { + this.getList(); + this.$modal.msgSuccess("娣诲姞鎴愬姛"); + }); + } + this.reset(); + // this.idds = ""; + this.Labelchange = false; + } + }); }, /** 鍒犻櫎鎸夐挳鎿嶄綔 */ diff --git a/src/views/patient/patient/profile/index.vue b/src/views/patient/patient/profile/index.vue index 3c3304d..66ceabc 100644 --- a/src/views/patient/patient/profile/index.vue +++ b/src/views/patient/patient/profile/index.vue @@ -113,81 +113,101 @@ <el-button type="primary" @click="savefile">淇濆瓨鎮h�呮。妗�</el-button> </div> <div class="detailed"> - <el-row :gutter="20"> - <el-col :span="12" - ><div class="grid-content bg-purple"> - 鎮h�呭鍚嶏細<span class="spanvalue">{{ userform.name }}</span> - </div></el-col - > - <el-col :span="12" - ><div class="grid-content bg-purple"> - 鑱旂郴鐢佃瘽锛�<span class="spanvalue">{{ userform.telcode }}</span> - </div></el-col - > - </el-row> - <el-row :gutter="20"> - <el-col :span="24" - ><div class="grid-content bg-purple"> - 鍑虹敓鍦帮細<span class="spanvalue">{{ userform.birthplace }}</span> - </div></el-col - > - </el-row> - <el-row :gutter="20"> - <el-col :span="24" - ><div class="grid-content bg-purple"> - 灞呬綇鍦帮細<span class="spanvalue">{{ - userform.placeOfResidence - }}</span> - </div></el-col - > - </el-row> - <el-row :gutter="20"> - <el-col :span="24" - ><div class="xinz-inf"> - <el-tag - :key="tag.tagname" - type="success" - v-for="tag in dynamicTags" - closable - :disable-transitions="false" - @close="handleClose(tag)" - > - {{ tag.tagname }} - </el-tag> - <el-select - v-if="inputVisible" - v-model="inputValue" - @change="handleInputConfirm" - filterable - allow-create - default-first-option - placeholder="璇烽�夋嫨/鏌ヨ" - > - <el-option - v-for="item in options" - :key="item.tagid" - :label="item.tagname" - :value="item.tagname" - > - </el-option> - </el-select> + <el-form + ref="userform" + :model="userform" + :rules="rules" + label-width="100px" + > + <el-row :gutter="20"> + <el-col :span="12"> + <el-form-item label="鎮h�呭鍚�" prop="name"> + <el-input + v-model="userform.name" + placeholder="璇疯緭鍏ュ鍚�" + maxlength="30" + ></el-input> </el-form-item + ></el-col> + <el-col :span="12" + ><el-form-item label="鑱旂郴鏂瑰紡" prop="telcode"> + <el-input + v-model="userform.telcode" + placeholder="璇疯緭鍏ヨ仈绯绘柟寮�" + maxlength="30" + /> </el-form-item + ></el-col> + </el-row> + <el-row :gutter="20"> + <el-col :span="24"> + <el-form-item label="鍑虹敓鍦�" prop="birthplace"> + <el-input + v-model="userform.birthplace" + placeholder="鍥姐�佺渷銆佸湴甯傘�佸尯鍘裤�佽閬撶瓑璇︾粏淇℃伅" + maxlength="50" + /> </el-form-item + ></el-col> + </el-row> + <el-row :gutter="20"> + <el-col :span="24" + ><el-form-item label="灞呬綇鍦�" prop="placeOfResidence"> + <el-input + v-model="userform.placeOfResidence" + placeholder="鍥姐�佺渷銆佸湴甯傘�佸尯鍘裤�佽閬撶瓑璇︾粏淇℃伅" + maxlength="50" + /> </el-form-item + ></el-col> + </el-row> + <el-row :gutter="20"> + <el-col :span="24"> + <el-form-item label="鏍囩" prop="desc"> + <div class="xinz-inf"> + <el-tag + :key="tag.tagname" + type="success" + v-for="tag in dynamicTags" + v-if="tag.isoperation != 3" + closable + :disable-transitions="false" + @close="handleClose(tag)" + > + {{ tag.tagname }} + </el-tag> + <el-select + v-if="inputVisible" + v-model="inputValue" + @change="handleInputConfirm" + filterable + allow-create + default-first-option + placeholder="璇烽�夋嫨/鏌ヨ" + > + <el-option + v-for="item in options" + :key="item.tagid" + :label="item.tagname" + :value="item.tagname" + > + </el-option> + </el-select> - <el-button - v-else - class="button-new-tag" - size="small" - @click="showInput" - >+ 鏂板鏍囩</el-button - > - </div></el-col - > - </el-row> + <el-button + v-else + class="button-new-tag" + size="small" + @click="showInput" + >+ 鏂板鏍囩</el-button + > + </div> + </el-form-item> + </el-col> + </el-row> + </el-form> </div> </div> <div class="top-message"> <div class="headline">鐥呭彶</div> <div class="detailed"> - <el-form ref="form" :model="form" label-width="100px"> + <el-form :model="form" label-width="100px"> <el-row> <el-col :span="8"> <el-form-item label="杩囧線鐤剧梾" prop="name"> @@ -860,6 +880,39 @@ { label: "娴嬮噺鏃堕棿", width: "", prop: "name" }, { label: "浣撴俯", width: "", prop: "sex" }, ], + // 琛ㄥ崟鏍¢獙 + rules: { + name: [ + { required: true, message: "鐢ㄦ埛鍚嶇О涓嶈兘涓虹┖", trigger: "blur" }, + { + min: 2, + max: 20, + message: "鐢ㄦ埛鍚嶇О闀垮害蹇呴』浠嬩簬 2 鍜� 20 涔嬮棿", + trigger: "blur", + }, + ], + + sex: [{ required: true, message: "鎬у埆涓嶈兘涓虹┖", trigger: "blur" }], + age: [{ required: true, message: "骞撮緞涓嶈兘涓虹┖", trigger: "blur" }], + nation: [{ required: true, message: "姘戞棌涓嶈兘涓虹┖", trigger: "blur" }], + telcode: [ + { required: true, message: "鑱旂郴鏂瑰紡涓嶈兘涓虹┖", trigger: "blur" }, + { + pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/, + message: "璇疯緭鍏ユ纭殑鎵嬫満鍙风爜", + trigger: "blur", + }, + ], + idcardtype: [ + { required: true, message: "璇佷欢绫诲瀷涓嶈兘涓虹┖", trigger: "blur" }, + ], + idcardno: [ + { required: true, message: "璇佷欢鍙疯兘涓虹┖", trigger: "blur" }, + ], + placeOfResidence: [ + { required: true, message: "灞呬綇鍦颁笉鑳戒负绌�", trigger: "blur" }, + ], + }, }; }, created() { @@ -941,17 +994,21 @@ }, // 淇濆瓨鎮h�呮。妗� savefile() { - // this.userform.tagList = this.dynamicTags; - this.userform.isoperation = 2; - alterpatient(this.userform).then((res) => { - if (res.code == 200) { - this.$modal.msgSuccess("鍩虹淇℃伅淇濆瓨鎴愬姛"); - } else { - this.$modal.msgError("鍩虹淇℃伅淇敼澶辫触"); + this.$refs["userform"].validate((valid) => { + if (valid) { + this.userform.isoperation = 2; + this.userform.tagList = this.dynamicTags; + alterpatient(this.userform).then((res) => { + if (res.code == 200) { + this.$modal.msgSuccess("鍩虹淇℃伅淇濆瓨鎴愬姛"); + } else { + this.$modal.msgError("鍩虹淇℃伅淇敼澶辫触"); + } + }); + // 鐥呭彶 + this.medicalhistory(); } }); - // 鐥呭彶 - this.medicalhistory(); }, // 鐥呭彶 medicalhistory() { @@ -1099,8 +1156,8 @@ }, handleClose(tag) { const lindex = this.dynamicTags.indexOf(tag); - this.dynamicTags.splice(this.dynamicTags.indexOf(tag), 1); - this.userform.tagList[lindex].isoperation = 3; + // this.dynamicTags.splice(this.dynamicTags.indexOf(tag), 1); + this.dynamicTags[lindex].isoperation = 3; }, showInput() { @@ -1128,7 +1185,7 @@ }; } console.log(tagvalue); - this.userform.tagList.push(tagvalue); + // this.userform.tagList.push(tagvalue); this.dynamicTags.push(tagvalue); console.log(this.userform.tagList); console.log(this.dynamicTags); diff --git a/src/views/patient/propaganda/QuestionnaireTask.vue b/src/views/patient/propaganda/QuestionnaireTask.vue index 1573ba4..e7b0051 100644 --- a/src/views/patient/propaganda/QuestionnaireTask.vue +++ b/src/views/patient/propaganda/QuestionnaireTask.vue @@ -30,33 +30,68 @@ <div>鍩虹淇℃伅</div> </div> <div class="jic-value"> - <el-form ref="form" :model="form" label-width="105px"> + <el-form + ref="form" + :model="form" + :rules="rules" + label-width="125px" + > <el-row :gutter="20"> <el-col :span="12" - ><el-form-item label="浠诲姟鍚嶇О"> + ><el-form-item label="浠诲姟鍚嶇О" prop="taskName"> <el-input style="width: 220px" v-model="form.taskName" placeholder="璇疯緭鍏ヤ换鍔″悕绉�" /> </el-form-item ></el-col> + <el-col :span="12" + ><el-form-item label="浠诲姟绫诲瀷"> + <el-select + v-model="serviceType" + placeholder="璇烽�夋嫨鏂板绫诲瀷" + > + <el-option + v-for="item in tasktypes" + :key="item.value" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> </el-form-item + ></el-col> </el-row> - <el-form-item label="浠诲姟鎻忚堪"> + <el-form-item label="浠诲姟鎻忚堪" prop="taskDesc"> <el-input type="textarea" v-model="form.taskDesc" placeholder="璇疯緭鍏ヤ换鍔℃弿杩�" /> </el-form-item> - <el-form-item label="鍙戦�佽缃細"> + <el-form-item label="鏈嶅姟褰㈠紡" prop="taskDesc"> + <el-checkbox-group v-model="checkList"> + <el-checkbox + v-for="(item, index) in checkboxlist" + :key="index" + :label="item.value" + > + {{ item.label }}</el-checkbox + > + </el-checkbox-group> + </el-form-item> + <el-form-item label="鎵ц璁剧疆" prop="sendType"> <el-radio-group v-model="form.sendType"> - <el-radio :label="1">鏃堕棿娈靛彂閫�</el-radio> - <el-radio :label="3">鏃堕棿鐐瑰彂閫�</el-radio> - <el-radio :label="2">鍗冲埢鍙戦��</el-radio> + <el-radio :label="1">鏃堕棿娈垫墽琛�</el-radio> + <el-radio :label="3">鏃堕棿鐐规墽琛�</el-radio> + <el-radio :label="2">鍗冲埢鎵ц</el-radio> </el-radio-group> </el-form-item> - <el-form-item label="鍙戦�佹棩鏈燂細" v-if="form.sendType == 1"> + <el-form-item + label="鎵ц鏃ユ湡" + v-if="form.sendType == 1" + prop="daytime" + > <el-date-picker v-model="daytime" @change="changeTimeday" @@ -69,7 +104,11 @@ </el-date-picker> </el-form-item> - <el-form-item label="鍙戦�佹椂闂寸偣锛�" v-if="form.sendType == 3"> + <el-form-item + label="鎵ц鏃堕棿鐐�" + v-if="form.sendType == 3" + prop="daytime" + > <div style="display: flex"> <div style="margin-right: 10px"> <el-date-picker @@ -84,12 +123,14 @@ </div> </el-form-item> - <el-form-item label="鍙戦�佹椂闂存锛�" v-if="form.sendType == 1"> + <el-form-item + label="鎵ц鏃堕棿娈�" + v-if="form.sendType == 1" + prop="daytime" + > <div style="display: flex"> <div style="margin-right: 10px"> - <span style="font-size: 18px; margin-right: 10px" - >鏃堕棿娈典竴</span - > + <span style="font-size: 18px; margin-right: 10px">鈶�</span> <el-time-picker is-range arrow-control @@ -104,9 +145,7 @@ </el-time-picker> </div> <div style="margin-right: 10px"> - <span style="font-size: 18px; margin-right: 10px" - >鏃堕棿娈典簩</span - > + <span style="font-size: 18px; margin-right: 10px">鈶�</span> <el-time-picker is-range arrow-control @@ -121,9 +160,7 @@ </el-time-picker> </div> <div style="margin-right: 10px"> - <span style="font-size: 18px; margin-right: 10px" - >鏃堕棿娈典笁</span - > + <span style="font-size: 18px; margin-right: 10px">鈶�</span> <el-time-picker is-range arrow-control @@ -139,28 +176,21 @@ </div> </div> </el-form-item> - <el-form-item label="鏈嶅姟褰㈠紡"> - <el-checkbox-group v-model="checkList"> - <el-checkbox - v-for="(item, index) in checkboxlist" - :key="index" - :label="item.value" - > - {{ item.label }}</el-checkbox - > - </el-checkbox-group> - </el-form-item> - <el-row :gutter="20"> - <el-col :span="10" - ><el-form-item label="妯℃澘鍚嶇О"> - <el-input - style="width: 300px" - :disabled="true" - v-model="form.templatename" - placeholder="璇峰湪涓嬪垪閫夋嫨" - /> </el-form-item - ></el-col> - <el-col :span="4"> + </el-form> + </div> + </div> + <div class="examine-jic"> + <div class="headline"> + <div>浠诲姟浣跨敤妯℃澘</div> + <div style="margin-left: 20px"> + <el-form :model="form"> + <el-form-item label=""> + <el-input + style="width: 300px" + :disabled="true" + v-model="form.templatename" + placeholder="璇风偣鍑诲彸渚ч�夋嫨" + /> <el-button type="primary" icon="el-icon-edit" @@ -169,23 +199,21 @@ ></el-button> <el-button - v-if="this.form.libtemplateid" + v-if="this.form.libtemplateid" type="success" icon="el-icon-search" @click="previewfnmb" circle ></el-button> - </el-col> - </el-row> - </el-form> + </el-form-item> + </el-form> + </div> </div> - </div> - <div class="examine-jic"> - <div class="headline"> - <div>鍙橀噺鍖归厤閲忓弬</div> - </div> + <div class="examine-jic"> <div class="jic-value"> + <div style="margin-bottom: 10px">妯℃澘涓娇鐢ㄧ殑鍙橀噺锛�</div> + <el-row :gutter="20"> <el-table :data="variableList" style="width: 100%"> <el-table-column @@ -335,7 +363,7 @@ v-show="showSearch" label-width="98px" > - <el-form-item label="鎮h�呭悕绉帮細"> + <el-form-item label="鎮h�咃細"> <el-input v-model="patientqueryParams.name" @keyup.enter.native="handleQuery" @@ -592,13 +620,13 @@ questionList: [], // 鎮h�呰〃鍗� tableLabelhz: [ - // { label: "搴忓彿", width: "", prop: "patid" }, - { label: "鎮h�呭悕绉�", width: "", prop: "name" }, + { label: "鎮h��", width: "", prop: "name" }, + { label: "韬唤璇�", width: "200", prop: "idcardno" }, { label: "鎬у埆", width: "", prop: "sex" }, { label: "骞撮緞", width: "", prop: "age" }, - { label: "灏辫瘖绉戝", width: "", prop: "deptName" }, - { label: "鍏ラ櫌鏃ユ湡", width: "", prop: "inhosptime" }, - { label: "鍒涘缓浜猴紙缂猴級", width: "", prop: "update_by" }, + { label: "鍖荤敓", width: "", prop: "drname" }, + { label: "绉戝", width: "", prop: "deptName" }, + { label: "灏辫瘖/鍑洪櫌鏃ユ湡", width: "280", prop: "inhosptime" }, ], tableLabelwj: [ @@ -728,8 +756,62 @@ label: "浣撴鐥呬汉", }, ], + tasktypes: [ + { + value: 1, + label: "鐩戞祴璇勪及", + }, + { + value: 2, + label: "鍑洪櫌闅忚", + }, + { + value: 3, + label: "闂ㄨ瘖闅忚", + }, + { + value: 4, + label: "瀹f暀鍏虫��", + }, + { + value: 5, + label: "澶嶈瘖绠$悊", + }, + { + value: 6, + label: "婊℃剰搴﹁皟鏌�", + }, + { + value: 7, + label: "鎮h�呮姤鍛�", + }, + + { + value: 8, + label: "鍏朵粬閫氱煡", + }, + ], + rules: { + taskName: [ + { required: true, message: "浠诲姟鍚嶇О涓嶈兘涓虹┖", trigger: "blur" }, + { + min: 2, + max: 20, + message: "浠诲姟鍚嶇О闀垮害蹇呴』浠嬩簬 2 鍜� 20 涔嬮棿", + trigger: "blur", + }, + ], + + taskDesc: [ + { required: true, message: "浠诲姟鎻忚堪涓嶈兘涓虹┖", trigger: "blur" }, + ], + sendType: [ + { required: true, message: "鍙戦�佽缃笉鑳戒负绌�", trigger: "blur" }, + ], + daytime: [{ required: true, message: "姘戞棌涓嶈兘涓虹┖", trigger: "blur" }], + }, quote: false, - serviceType:null, + serviceType: null, }; }, components: { SFtable }, @@ -899,38 +981,49 @@ }, // 淇濆瓨 submitForm(formName) { - this.form.preachform = this.checkList.join(","); - - if (!this.form.patTaskRelevances[0]) { - this.$modal.msgError("璇烽�夋嫨鐥呬汉"); - return; - } - const filteredArray = this.variableList.filter( - (item) => - item.name !== "濮撳悕" && item.name !== "鐢佃瘽" && item.name !== "鍦板潃" - ); - console.log(filteredArray, "瀛樺墠鍙橀噺"); - this.form.textParam = this.convertFormat2ToFormat1(filteredArray); - if (this.form.taskid) { - this.form.isoperation = 2; - } else { - this.form.isoperation = 1; - } - if (!this.form.type) { - this.form.type = this.$route.query.type; - } - this.form.serviceType=this.serviceType; - Editsingletask(this.form).then((res) => { - if (res.code == 200) { - if (this.form.taskid) { - this.$modal.msgSuccess("鏂板鎴愬姛"); + this.$refs["form"].validate((valid) => { + if (valid) { + if (this.checkList[0]) { + this.form.preachform = this.checkList.join(","); } else { - this.$modal.msgSuccess("淇敼鎴愬姛"); + this.$modal.msgError("璇烽�夋嫨鏈嶅姟绫诲瀷"); + return; } - this.$router.push({ - path: "/followvisit/tasklist", - query: { tasktopic: this.form.serviceType }, + if (!this.form.patTaskRelevances[0]) { + this.$modal.msgError("璇烽�夋嫨鐥呬汉"); + return; + } + const filteredArray = this.variableList.filter( + (item) => + item.name !== "濮撳悕" && + item.name !== "鐢佃瘽" && + item.name !== "鍦板潃" + ); + this.form.textParam = this.convertFormat2ToFormat1(filteredArray); + if (this.form.taskid) { + this.form.isoperation = 2; + } else { + this.form.isoperation = 1; + } + if (!this.form.type) { + this.form.type = this.$route.query.type; + } + this.form.serviceType = this.serviceType; + Editsingletask(this.form).then((res) => { + if (res.code == 200) { + if (this.form.taskid) { + this.$modal.msgSuccess("鏂板鎴愬姛"); + } else { + this.$modal.msgSuccess("淇敼鎴愬姛"); + } + this.$router.push({ + path: "/followvisit/tasklist", + query: { tasktopic: this.form.serviceType }, + }); + } }); + }else{ + this.$modal.msgError("琛ㄥ崟鍐呭鏈畬鍠勶紝璇锋鏌�"); } }); }, @@ -1001,17 +1094,17 @@ }); if (this.patientqueryParams.allhosp == 1) { this.tableLabelhz = [ - { label: "鎮h�呭悕绉�", width: "", prop: "name" }, + { label: "鎮h��", width: "", prop: "name" }, + { label: "韬唤璇�", width: "200", prop: "idcardno" }, { label: "鎬у埆", width: "", prop: "sex" }, { label: "骞撮緞", width: "", prop: "age" }, - { label: "涓讳换鍖诲笀", width: "", prop: "drname" }, - { label: "灏辫瘖绉戝", width: "", prop: "deptName" }, - { label: "鍏ラ櫌鏃ユ湡", width: "", prop: "inhosptime" }, - { label: "鍒涘缓浜�", width: "", prop: "createBy" }, + { label: "鍖荤敓", width: "", prop: "drname" }, + { label: "绉戝", width: "", prop: "deptName" }, + { label: "灏辫瘖/鍑洪櫌鏃ユ湡", width: "280", prop: "inhosptime" }, ]; } else if (this.patientqueryParams.allhosp == 2) { this.tableLabelhz = [ - { label: "鎮h�呭悕绉�", width: "", prop: "name" }, + { label: "鎮h��", width: "", prop: "name" }, { label: "鎬у埆", width: "", prop: "sex" }, { label: "骞撮緞", width: "", prop: "age" }, { label: "璇婃柇", width: "", prop: "diagname" }, @@ -1127,20 +1220,20 @@ }, // 鑾峰彇璇︽儏 Getdetails() { - this.form= { + this.form = { patTaskRelevances: [], sendType: 1, templatename: "", templateid: null, libtemplateid: null, }; - this.questionList=[]; + this.questionList = []; if (this.id) { Questionnairetaskget({ taskid: this.id }).then((res) => { let filteredArray = ""; if (res.code == 200) { this.form = res.data; - this.form.serviceType=this.serviceType; + this.form.serviceType = this.serviceType; this.form.patTaskRelevances = this.form.patTaskRelevances ? this.form.patTaskRelevances : []; @@ -1357,11 +1450,12 @@ margin: 20px; .headline { font-size: 24px; + height: 40px; border-left: 5px solid #41a1be; padding-left: 5px; margin-bottom: 10px; display: flex; - justify-content: space-between; + // justify-content: space-between; .Add-details { font-size: 18px; color: #02a7f0; diff --git a/src/views/repositoryai/intention/index.vue b/src/views/repositoryai/intention/index.vue index e8b0995..0411e4e 100644 --- a/src/views/repositoryai/intention/index.vue +++ b/src/views/repositoryai/intention/index.vue @@ -432,7 +432,7 @@ <div class="tsgname" @click="tsgnameto">鎻掑叆濉┖</div> </div> </el-form-item> --> - <el-form-item label="鏍囩" prop="desc" v-if="!measurement"> + <el-form-item label="鏍囩" prop="dynamicTags" v-if="!measurement"> <div class="xinz-inf"> <el-tag :key="tag.tagname" @@ -472,7 +472,7 @@ </el-form-item> <el-row v-if="!measurement"> <el-col :span="24"> - <el-form-item> + <el-form-item prop="valueType"> <template #label> 鍊肩被鍨� <el-tooltip @@ -495,7 +495,7 @@ > <el-row v-if="!measurement"> <el-col :span="24"> - <el-form-item label="棰樼洰绫诲瀷"> + <el-form-item label="棰樼洰绫诲瀷" prop="scriptType"> <el-radio-group @input="Changtype" v-model="indexform.scriptType" @@ -801,10 +801,25 @@ { required: true, message: "鎸囨爣鍒嗙被涓嶈兘涓虹┖", trigger: "blur" }, ], language: [ - { required: true, message: "鎸囨爣璇█涓嶈兘涓虹┖", trigger: "blur" }, + { required: true, message: "璇█涓嶈兘涓虹┖", trigger: "blur" }, ], isAvailable: [ - { required: true, message: "鎸囨爣璇█涓嶈兘涓虹┖", trigger: "blur" }, + { required: true, message: "鍙敤鐘舵�佷笉鑳戒负绌�", trigger: "blur" }, + ], + targetdesc: [ + { required: true, message: "鎸囨爣鎻忚堪涓嶈兘涓虹┖", trigger: "blur" }, + ], + dynamicTags: [ + { required: true, message: "鏍囩涓嶈兘涓虹┖", trigger: "blur" }, + ], + valueType: [ + { required: true, message: "鍊肩被鍨嬩笉鑳戒负绌�", trigger: "blur" }, + ], + scriptType: [ + { required: true, message: "棰樼洰绫诲瀷涓嶈兘涓虹┖", trigger: "blur" }, + ], + suitWayList: [ + { required: true, message: "閫傜敤鍦烘櫙涓嶈兘涓虹┖", trigger: "blur" }, ], }, }; @@ -1275,6 +1290,7 @@ targetregex: "", targetregex2: "", isoperation: 1, + isabnormal:0, picturePath: "", dynamiccruxs: [], nodynamiccruxs: [], diff --git a/vue.config.js b/vue.config.js index 6474684..527692e 100644 --- a/vue.config.js +++ b/vue.config.js @@ -9,7 +9,7 @@ const name = process.env.VUE_APP_TITLE || '鎮h�呮櫤鎱ф湇鍔$郴缁�' // 缃戦〉鏍囬 -const port = process.env.port || process.env.npm_config_port || 8093 // 绔彛 +const port = process.env.port || process.env.npm_config_port || 8096 // 绔彛 // vue.config.js 閰嶇疆璇存槑 //瀹樻柟vue.config.js 鍙傝�冩枃妗� https://cli.vuejs.org/zh/config/#css-loaderoptions @@ -35,9 +35,9 @@ proxy: { // detail: https://cli.vuejs.org/config/#devserver-proxy [process.env.VUE_APP_BASE_API]: { - // target: `http://192.168.1.10:8095`, + target: `http://192.168.1.10:8095`, // target:`http://localhost:8095`, - target: `http://192.168.101.135:8095`, + // target: `http://192.168.101.135:8095`, changeOrigin: true, pathRewrite: { ['^' + process.env.VUE_APP_BASE_API]: '' -- Gitblit v1.9.3