From 136b92041c3303fbb52f3d8ac95237c8788db93b Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期日, 27 四月 2025 09:16:58 +0800 Subject: [PATCH] 测试完成 --- src/views/patient/patient/index.vue | 253 ++++++++++++++++++++++++++++--------------------- 1 files changed, 144 insertions(+), 109 deletions(-) diff --git a/src/views/patient/patient/index.vue b/src/views/patient/patient/index.vue index 2e9b795..62796f9 100644 --- a/src/views/patient/patient/index.vue +++ b/src/views/patient/patient/index.vue @@ -1,7 +1,7 @@ <template> <div class="Questionnairemanagement"> <!-- 宸︿晶鏍� --> - <div class="sidecolumn"> + <!-- <div class="sidecolumn"> <div class="sidecolumn-top"> <div class="top-wj">鍖婚櫌鎮h��</div> </div> @@ -12,17 +12,16 @@ v-model="queryParams.allhosp" @tab-click="handleClick" > - <!-- <el-tab-pane label="鎮h�呭垪琛�" name="0"></el-tab-pane> --> <el-tab-pane label="鍑哄叆闄㈡偅鑰�" name="1"></el-tab-pane> <el-tab-pane label="闂ㄨ瘖鎮h��" name="2"></el-tab-pane> <el-tab-pane label="浣撴鎮h��" name="3"></el-tab-pane> </el-tabs> </div> - </div> + </div> --> <!-- 鍙充晶鏁版嵁 --> <div class="leftvlue"> - <div> + <!-- <div> <el-row :gutter="10"> <el-col :span="2.5" v-for="(item, index) in cardlist" :key="index"> <el-card @@ -45,7 +44,7 @@ </el-card> </el-col> </el-row> - </div> + </div> --> <div class="leftvlue-bg"> <el-row :gutter="20"> <!--鐢ㄦ埛鏁版嵁--> @@ -58,49 +57,6 @@ v-show="showSearch" label-width="98px" > - <!-- <el-form-item label="闄㈠尯" prop="userName"> - <el-select v-model="queryParams.value1" placeholder="璇烽�夋嫨"> - <el-option - v-for="item in options" - :key="item.value" - :label="item.label" - :value="item.value" - > - </el-option> - </el-select> - </el-form-item> --> - <!-- <el-form-item label="绉戝/鐥呭尯" prop="userName"> - <el-select v-model="queryParams.value2" placeholder="璇烽�夋嫨"> - <el-option - v-for="item in options" - :key="item.value" - :label="item.label" - :value="item.value" - > - </el-option> - </el-select> - </el-form-item> --> - <el-form-item - label-width="138px" - label="涓绘不鍖荤敓" - prop="userName" - > - <el-input - v-model="queryParams.drname" - placeholder="璇疯緭鍏ュ尰鐢熷鍚�" - maxlength="30" - @keyup.enter.native="handleQuery" - /> - </el-form-item> - - <el-form-item label="闂ㄨ瘖缂栧彿" prop="visitno"> - <el-input - v-model="queryParams.visitno" - placeholder="璇疯緭鍏ョ紪鍙�" - maxlength="30" - @keyup.enter.native="handleQuery" - /> - </el-form-item> <el-form-item label="鎮h�呭鍚�" prop="name"> <el-input v-model="queryParams.name" @@ -109,20 +65,28 @@ @keyup.enter.native="handleQuery" /> </el-form-item> - <el-form-item label="鎮h�呮潵婧�" prop="tagId"> - <el-select - v-model="queryParams.searchscope" - placeholder="璇烽�夋嫨鎮h�呮潵婧�" - > - <el-option - v-for="item in source" - :key="item.value" - :label="item.label" - :value="item.value" + <el-form-item label="鎮h�呮爣绛�" prop="tagname"> + <el-input + v-model="queryParams.tagname" + placeholder="杈撳叆杩涜妯$硦鏌ヨ" + maxlength="30" + @keyup.enter.native="handleQuery" + /> + </el-form-item> + <el-form-item label="鎮h�呰寖鍥�" prop="tagId"> + <el-select + v-model="queryParams.searchscope" + placeholder="璇烽�夋嫨鎮h�呰寖鍥�" > - </el-option> - </el-select> - </el-form-item> + <el-option + v-for="item in source" + :key="item.value" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> + </el-form-item> <el-form-item label="鑱旂郴鐢佃瘽" prop="telcode"> <el-input v-model="queryParams.telcode" @@ -150,7 +114,7 @@ </el-form> <el-row :gutter="10" class="mb8"> - <el-col :span="1.5"> + <!-- <el-col :span="1.5"> <el-button type="primary" plain @@ -160,7 +124,7 @@ v-hasPermi="['system:user:add']" >鏂板</el-button > - </el-col> + </el-col> --> <el-col :span="1.5"> <el-button @@ -215,6 +179,7 @@ <el-table v-loading="loading" :data="userList" + height="660" @selection-change="handleSelectionChange" > <el-table-column type="selection" width="50" align="center" /> @@ -242,8 +207,12 @@ align="center" key="age" prop="age" - width="60" - /> + width="160" + > <template slot-scope="scope"> + <span v-if="scope.row.age">{{ scope.row.age }}{{scope.row.ageUnit }}</span><span v-if="scope.row.age2">{{ scope.row.age2 }}{{scope.row.ageUnit2 }}</span> + + </template> + </el-table-column> <el-table-column label="鍑虹敓骞存湀" align="center" @@ -274,7 +243,7 @@ </span> </template> </el-table-column> - <el-table-column + <el-table-column label="璇佷欢鍙风爜" align="center" key="idcardno" @@ -296,7 +265,7 @@ prop="createTime" width="160" > - <template slot-scope="scope"> + <template slot-scope="scope"> <span>{{ formatTime(scope.row.createTime) }}</span> </template> </el-table-column> @@ -339,14 +308,22 @@ ><i class="el-icon-edit"></i>鎮h�呰繃婊�</span ></el-button > - <el-button + <!-- <el-button size="medium" type="text" @click="Distributionservice(scope.row)" ><span class="button-textxg" ><i class="el-icon-menu"></i>鏈嶅姟</span ></el-button - > + > --> + <!-- <el-button + size="medium" + type="text" + @click="RiskMarker(scope.row)" + ><span class="button-textxg" + ><i class="el-icon-menu"></i>椋庨櫓鏍囪</span + ></el-button + > --> </template> </el-table-column> </el-table> @@ -523,7 +500,7 @@ </el-form-item> </el-col> </el-row> - <el-row v-if="!amendtag"> + <el-row v-if="!amendtag"> <el-col :span="8"> <el-form-item label="姘戞棌" prop="name"> <el-input @@ -555,7 +532,7 @@ <el-row v-if="!amendtag"> <el-col :span="12"> - <el-form-item label="鍑虹敓鍦�" prop="idcardno"> + <el-form-item label="鍑虹敓鍦�" prop="birthplace"> <el-input v-model="form.birthplace" placeholder="鍥姐�佺渷銆佸湴甯傘�佸尯鍘裤�佽閬撶瓑璇︾粏淇℃伅" @@ -563,7 +540,7 @@ /> </el-form-item> </el-col ><el-col :span="12"> - <el-form-item label="灞呬綇鍦�" prop="idcardno"> + <el-form-item label="灞呬綇鍦�" prop="placeOfResidence"> <el-input v-model="form.placeOfResidence" placeholder="鍥姐�佺渷銆佸湴甯傘�佸尯鍘裤�佽閬撶瓑璇︾粏淇℃伅" @@ -574,7 +551,7 @@ </el-row> <el-row> - <el-col :span="amendtag?12:24"v-if="!amendtag" > + <el-col :span="amendtag ? 12 : 24" v-if="!amendtag"> <el-form-item label="鎮h�呯被鍨�"> <el-select v-model="form.pattype" placeholder="璇烽�夋嫨绫诲瀷"> <el-option @@ -648,20 +625,19 @@ :limit="1" accept=".xlsx, .xls" :headers="upload.headers" - :action="upload.url + '?updateSupport=' + upload.updateSupport" + :action="upload.url" :disabled="upload.isUploading" :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" - :auto-upload="false" drag > <i class="el-icon-upload"></i> <div class="el-upload__text">灏嗘枃浠舵嫋鍒版澶勶紝鎴�<em>鐐瑰嚮涓婁紶</em></div> <div class="el-upload__tip text-center" slot="tip"> - <div class="el-upload__tip" slot="tip"> + <!-- <div class="el-upload__tip" slot="tip"> <el-checkbox v-model="upload.updateSupport" /> 鏄惁鏇存柊宸茬粡瀛樺湪鐨勭敤鎴锋暟鎹� - </div> + </div> --> <span>浠呭厑璁稿鍏ls銆亁lsx鏍煎紡鏂囦欢銆�</span> <el-link type="primary" @@ -670,7 +646,7 @@ @click="importTemplate" >涓嬭浇妯℃澘 </el-link> - <el-link + <!-- <el-link type="success" :underline="false" style="font-size: 24px; vertical-align: baseline" @@ -678,7 +654,7 @@ target="_blank" > 鏌ョ湅妯℃澘</el-link - > + > --> </div> </el-upload> </div> @@ -773,6 +749,32 @@ <el-button type="primary" @click="CreateService">鍒涘缓鏈嶅姟</el-button> </div> </el-dialog> + <!-- 椋庨櫓绫诲瀷 --> + <el-dialog title="閫夋嫨椋庨櫓绫诲瀷" :visible.sync="RiskVisible"> + <el-card class="box-card"> + <el-form> + <el-form-item label="椋庨櫓绫诲瀷"> + <el-radio-group v-model="Riskradio"> + <el-radio :label="1">姝e父</el-radio> + <el-radio :label="2">杞诲井</el-radio> + <el-radio :label="3">楂樺嵄</el-radio> + </el-radio-group> + </el-form-item> + <el-form-item label="娲诲姩鎬ц川"> + <el-checkbox-group v-model="Risklist"> + <el-checkbox label="鎯呭喌1" name="type"></el-checkbox> + <el-checkbox label="鎯呭喌2" name="type"></el-checkbox> + <el-checkbox label="鎯呭喌3" name="type"></el-checkbox> + <el-checkbox label="鎯呭喌4" name="type"></el-checkbox> + </el-checkbox-group> + </el-form-item> + </el-form> + </el-card> + <div slot="footer" class="dialog-footer"> + <el-button @click="RiskVisible = false">鍙� 娑�</el-button> + <el-button type="primary" @click="RiskService">纭淇敼</el-button> + </div> + </el-dialog> </div> </template> @@ -797,7 +799,12 @@ export default { name: "Patient", - dicts: ["sys_normal_disable", "task_status", "sys_user_sex",'futter_patient'], + dicts: [ + "sys_normal_disable", + "task_status", + "sys_user_sex", + "futter_patient", + ], components: { Treeselect }, data() { return { @@ -814,6 +821,7 @@ // 鎬绘潯鏁� total: 0, tasktotal: 0, + Risklist: [], // 鐢ㄦ埛琛ㄦ牸鏁版嵁 userList: null, taskuserList: null, @@ -832,7 +840,10 @@ serviceVisible: false, serviceradio: 1, distributeVisible: false, + RiskVisible: false, tasktopic: "5", //鏂板绫诲瀷 + Riskradio: 1, + RiskObj: {}, // 鏌ヨ鍙傛暟 topqueryParams: { pageNum: 1, @@ -874,7 +885,6 @@ value: 2, label: "濂�", }, - ], cardlist: [ @@ -949,13 +959,16 @@ // 璁剧疆涓婁紶鐨勮姹傚ご閮� headers: { Authorization: "Bearer " + getToken() }, // 涓婁紶鐨勫湴鍧� - url: process.env.VUE_APP_BASE_API + "/system/user/importData", + url: process.env.VUE_APP_BASE_API + "/smartor/import/importPatInfo", }, // 鏌ヨ鍙傛暟 queryParams: { pageNum: 1, allhosp: "1", pageSize: 10, + searchscope: 2, + notrequiredFlag:1, + tagname: "", idcardno: undefined, name: undefined, status: undefined, @@ -987,7 +1000,7 @@ ], idcardno: [ - { required: true, message: "璇佷欢鍙疯兘涓虹┖", trigger: "blur" }, + { 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)$/, @@ -997,6 +1010,9 @@ ], placeOfResidence: [ { required: true, message: "灞呬綇鍦颁笉鑳戒负绌�", trigger: "blur" }, + ], + birthplace: [ + { required: true, message: "鍑虹敓鍦颁笉鑳戒负绌�", trigger: "blur" }, ], }, }; @@ -1016,6 +1032,22 @@ methods: { /** 鏌ヨ鎮h�呭垪琛� */ getList() { + if (this.queryParams.searchscope == 1) { + this.queryParams.leaveldeptcodes = store.getters.belongDepts.map( + (obj) => obj.deptCode + ); + this.queryParams.leavehospitaldistrictcodes = null; + } else if (this.queryParams.searchscope == 2) { + this.queryParams.leavehospitaldistrictcodes = + store.getters.belongWards.map((obj) => obj.districtCode); + this.queryParams.leaveldeptcodes = null; + } else { + this.queryParams.leaveldeptcodes = store.getters.belongDepts.map( + (obj) => obj.deptCode + ); + this.queryParams.leavehospitaldistrictcodes = + store.getters.belongWards.map((obj) => obj.districtCode); + } this.loading = true; messagelistpatient(this.queryParams).then((response) => { this.userList = response.rows; @@ -1056,6 +1088,10 @@ Distributionservice(row) { this.serviceVisible = true; }, + RiskMarker(row) { + this.RiskVisible = true; + this.RiskObj = row; + }, // 鍙栨秷鎸夐挳 cancel() { @@ -1078,31 +1114,19 @@ }, /** 鎼滅储鎸夐挳鎿嶄綔 */ handleQuery() { - if (this.queryParams.searchscope == 1) { - this.queryParams.leaveldeptcodes = store.getters.belongDepts.map( - (obj) => obj.deptCode - ); - this.queryParams.leavehospitaldistrictcodes=null; - } else if (this.queryParams.searchscope == 2) { - this.queryParams.leavehospitaldistrictcodes = - store.getters.belongWards.map((obj) => obj.districtCode); - this.queryParams.leaveldeptcodes=null; - } else { - this.queryParams.leaveldeptcodes = store.getters.belongDepts.map( - (obj) => obj.deptCode - ); - this.queryParams.leavehospitaldistrictcodes = - store.getters.belongWards.map((obj) => obj.districtCode); - } this.queryParams.pageNum = 1; this.getList(); }, /** 閲嶇疆鎸夐挳鎿嶄綔 */ resetQuery() { this.dateRange = []; - this.resetForm("queryForm"); - this.$refs.tree.setCurrentKey(null); - this.handleQuery(); + (this.queryParams = { + pageNum: 1, + allhosp: "1", + pageSize: 10, + searchscope: 2, + }), + this.handleQuery(); }, // 澶氶�夋閫変腑鏁版嵁 handleSelectionChange(selection) { @@ -1121,7 +1145,6 @@ handleUpdate(row) { const userIds = row.id || this.ids; particularpatient(userIds).then((response) => { - console.log(response); this.form = response.data; }); this.amendtag = true; @@ -1181,6 +1204,18 @@ query: { type: this.serviceradio }, }); }, + RiskService() { + this.RiskObj.visitFlag = this.Risklist.join(", "); + this.RiskObj.visitType = this.Riskradio; + alterpatient(this.RiskObj).then((res) => { + if (res.code == 200) { + this.getList(); + this.Risklist = []; + this.Riskradio = 1; + this.$modal.msgSuccess("寮傚父璁板綍鎴愬姛"); + } + }); + }, distribute() { this.distributeVisible = true; if (this.tasktopic == 1) { @@ -1224,7 +1259,7 @@ /** 涓嬭浇妯℃澘鎿嶄綔 */ importTemplate() { this.download( - "system/user/importTemplate", + "smartor/import/getImportPatTemplate", {}, `user_template_${new Date().getTime()}.xlsx` ); @@ -1266,9 +1301,9 @@ </script> <style lang="scss" scoped> -.Questionnairemanagement { - display: flex; -} +// .Questionnairemanagement { +// display: flex; +// } .sidecolumn { width: 180px; min-height: 100vh; @@ -1348,8 +1383,8 @@ cursor: pointer; /* 榧犳爣鎮诞鏃跺彉涓烘墜褰� */ } .leftvlue { - width: 80%; - margin-top: 10px; + width: 100%; + // margin-top: 10px; } .leftvlue-bg { // display: flex; -- Gitblit v1.9.3