From 5e1745487b290612c6282006822b431843a081af Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期四, 15 五月 2025 14:49:36 +0800 Subject: [PATCH] 测试完成 --- src/views/patient/patient/hospital.vue | 382 +++++++++++++++++++++++++++++++++++------------------ 1 files changed, 251 insertions(+), 131 deletions(-) diff --git a/src/views/patient/patient/hospital.vue b/src/views/patient/patient/hospital.vue index ff41d50..80ce156 100644 --- a/src/views/patient/patient/hospital.vue +++ b/src/views/patient/patient/hospital.vue @@ -11,7 +11,7 @@ v-show="showSearch" label-width="98px" > - <el-form-item label="濮撳悕" prop="name"> + <el-form-item label="鎮h�呭鍚�" prop="name"> <el-input v-model="queryParams.patname" placeholder="璇疯緭鍏ュ鍚�" @@ -20,9 +20,25 @@ @keyup.enter.native="handleQuery" /> </el-form-item> - <el-form-item label="鎮h�呯紪鍙�" prop="patid"> + <el-form-item label="涓绘不鍖荤敓" prop="name"> <el-input - v-model="queryParams.patid" + v-model="queryParams.drname" + placeholder="璇疯緭鍏ュ鍚�" + clearable + @keyup.enter.native="handleQuery" + /> + </el-form-item> + <el-form-item label="璐d换鎶ゅ+" prop="name"> + <el-input + v-model="queryParams.nurseName" + placeholder="璇疯緭鍏ュ鍚�" + clearable + @keyup.enter.native="handleQuery" + /> + </el-form-item> + <el-form-item label="浣忛櫌鍙�" prop="inhospno"> + <el-input + v-model="queryParams.inhospno" placeholder="璇疯緭鍏ユ偅鑰呯紪鍙�" clearable style="width: 250px" @@ -30,37 +46,25 @@ /> </el-form-item> - <el-form-item label="鎶ょ悊绛夌骇" prop="tagId"> - <el-select v-model="queryParams.Patientid" placeholder="璇烽�夋嫨"> - <el-option - v-for="dict in dict.type.nursinggrade" - :key="dict.value" - :label="dict.label" - :value="dict.value" - > - </el-option> - </el-select> + <el-form-item label="鎮h�呰寖鍥�" prop="status"> + <el-cascader + v-model="queryParams.scopetype" + placeholder="榛樿鍏ㄩ儴" + :options="sourcetype" + :props="{ expandTrigger: 'hover' }" + @change="handleChange" + ></el-cascader> </el-form-item> - <el-form-item label="鎮h�呰寖鍥�" prop="tagId"> - <el-select v-model="queryParams.Patientid" placeholder="璇烽�夋嫨"> - <el-option - v-for="item in Patientrange" - :key="item.id" - :label="item.name" - :value="item.id" - > - </el-option> - </el-select> - </el-form-item> - <el-form-item label=" 鍏ラ櫌鏃ユ湡 " prop="createTime"> + <el-form-item label=" 鍑洪櫌鏃ユ湡 " prop="createTime"> <el-date-picker - clearable - v-model="queryParams.createTime" - type="date" + v-model="dateRange" + style="width: 240px" value-format="yyyy-MM-dd" - placeholder="璇烽�夋嫨 灏辫瘖鏃ユ湡 " - > - </el-date-picker> + type="daterange" + range-separator="-" + start-placeholder="寮�濮嬫棩鏈�" + end-placeholder="缁撴潫鏃ユ湡" + ></el-date-picker> </el-form-item> <el-row> @@ -83,7 +87,7 @@ </el-form> <el-row :gutter="10" class="mb8"> - <el-col :span="1.5"> + <!-- <el-col :span="1.5"> <el-button type="primary" plain @@ -93,8 +97,8 @@ v-hasPermi="['system:user:add']" >鏂板</el-button > - </el-col> - <el-col :span="1.5"> + </el-col> --> + <!-- <el-col :span="1.5"> <el-button type="success" plain @@ -105,7 +109,7 @@ v-hasPermi="['system:user:edit']" >淇敼</el-button > - </el-col> + </el-col> --> <el-col :span="1.5"> <el-button type="danger" @@ -118,37 +122,13 @@ >鍒犻櫎</el-button > </el-col> - <el-col :span="19"> - <div class="documentf"> - <div class="document"> - <el-button - type="info" - plain - icon="el-icon-upload2" - size="medium" - @click="handleImport" - v-hasPermi="['system:user:import']" - >瀵煎叆</el-button - > - </div> - <div class="document"> - <el-button - type="warning" - plain - icon="el-icon-download" - size="medium" - @click="handleExport" - v-hasPermi="['system:user:export']" - >瀵煎嚭</el-button - > - </div> - </div> - </el-col> + <!-- <el-col :span="1.5"> </el-col> --> </el-row> <el-table v-loading="loading" :data="userList" + height="808" @selection-change="handleSelectionChange" > <el-table-column type="selection" width="50" align="center" /> @@ -167,23 +147,56 @@ width="160" > <template slot-scope="scope"> - <span>{{ parseTime(scope.row.endtime) }}</span> + <span>{{ formatTime(scope.row.endtime) }}</span> </template> </el-table-column> <el-table-column label="浣忛櫌鍙�" align="center" - key="patid" - prop="patid" + key="inhospno" + prop="inhospno" + width="120" /> - <el-table-column + <!-- <el-table-column label="濮撳悕" + width="100" align="center" key="patname" prop="patname" - /> - <el-table-column label="鎬у埆" align="center" key="sex" prop="sex"> + /> --> + <el-table-column + fixed + label="濮撳悕" + width="100" + align="center" + key="patname" + prop="patname" + > + <template slot-scope="scope"> + <el-button + size="medium" + type="text" + @click=" + gettoken360( + scope.row.idcardno, + scope.row.drcode, + scope.row.drname + ) + " + ><span class="button-textsc">{{ + scope.row.patname + }}</span></el-button + > + </template> + </el-table-column> + <el-table-column + label="鎬у埆" + width="100" + align="center" + key="sex" + prop="sex" + > <template slot-scope="scope"> <span>{{ scope.row.sex == 1 ? "鐢�" : "濂�" }}</span> </template> @@ -193,13 +206,13 @@ align="center" key="age" prop="age" - width="120" + width="80" /> <el-table-column label="鑱旂郴鐢佃瘽" align="center" - key="telephone" - prop="telephone" + key="telcode" + prop="telcode" width="120" /> @@ -225,10 +238,17 @@ width="120" /> --> <el-table-column - label="鐥呭尯" + label="绉戝" align="center" key="deptname" prop="deptname" + width="120" + /> + <el-table-column + label="鐥呭尯" + align="center" + key="leavehospitaldistrictname" + prop="leavehospitaldistrictname" width="120" /> <el-table-column @@ -248,8 +268,8 @@ <el-table-column label="璐d换鎶ゅ+" align="center" - key="Sister" - prop="Sister" + key="nurseName" + prop="nurseName" width="120" /> @@ -270,7 +290,6 @@ query: { id: scope.row.patid }, }) " - v-hasPermi="['system:user:edit']" ><span class="button-textsc" ><i class="el-icon-zoom-in"></i>鏌ョ湅</span ></el-button @@ -338,8 +357,10 @@ <div class="uploading" v-else-if="dractive == 2"> <el-table :data="uploadingData" style="width: 100%"> <el-table-column prop="serial" label="搴忓彿"> </el-table-column> - <el-table-column prop="name" label="濮撳悕"> </el-table-column> - <el-table-column prop="sex" label="鎬у埆"> </el-table-column> + <el-table-column prop="name" label="濮撳悕" width="100"> + </el-table-column> + <el-table-column prop="sex" label="鎬у埆" width="100"> + </el-table-column> <el-table-column prop="certificate" label="璇佷欢绫诲瀷"> </el-table-column> <el-table-column prop="certificatenum" label="璇佷欢鍙风爜"> @@ -383,19 +404,24 @@ <script> import { delUser } from "@/api/system/user"; +import { listpatient } from "@/api/patient/record"; import { - listpatient, - particularpatient, + messagelistpatient, + alterpatient, addpatient, + particularpatient, deletepatient, Exporterrorpatient, toleadpatient, -} from "@/api/patient/record"; +} from "@/api/patient/homepage"; import { listtag } from "@/api/system/label"; import { getToken } from "@/utils/auth"; import Treeselect from "@riophae/vue-treeselect"; import { listDept } from "@/api/system/dept"; import "@riophae/vue-treeselect/dist/vue-treeselect.css"; +import { query360PatInfo } from "@/api/AiCentre/index"; + +import store from "@/store"; export default { name: "behospitalized", @@ -430,6 +456,53 @@ amendtag: false, //鏄惁淇敼 // 鏃ユ湡鑼冨洿 dateRange: [], + source: [ + { + value: 0, + label: "鎵�灞炴偅鑰�", + }, + { + value: 1, + label: "绉戝鎮h��", + }, + { + value: 2, + label: "鐥呭尯鎮h��", + }, + ], + postData: { + XiaoXiTou: { + FaSongFCSJC: "ZJHES", + FaSongJGID: localStorage.getItem("orgid"), + FaSongJGMC: localStorage.getItem("orgname"), + FaSongSJ: "2025-01-09聽17:29:36", + FaSongXTJC: "SUIFANGXT", + FaSongXTMC: "闅忚绯荤粺", + XiaoXiID: "5FA92AFB-9833-4608-87C7-F56A654AC171", + XiaoXiLX: "SC_LC_360STCX", + XiaoXiMC: "360聽瑙嗗浘鏌ヨ", + ZuHuID: localStorage.getItem("ZuHuID"), + ZuHuMC: localStorage.getItem("orgname"), + }, + YeWuXX: { + BingRenXX: { + ZhengJianHM: "", + ZhengJianLXDM: "01", + ZhengJianLXMC: "灞呮皯韬唤璇�", + ZuZhiJGID: localStorage.getItem("orgid"), + ZuZhiJGMC: localStorage.getItem("orgname"), + }, + YongHuXX: { + XiTongID: "SUIFANGXT", + XiTongMC: "闅忚绯荤粺", + YongHuID: "1400466972205912064", + YongHuXM: "JNRMYY", + ZuZhiJGID: localStorage.getItem("orgid"), + ZuZhiJGMC: localStorage.getItem("orgname"), + idp: "lyra", + }, + }, + }, paperstypes: [ { papersname: "韬唤璇�" }, { papersname: "鎶ょ収" }, @@ -447,6 +520,22 @@ idcardtype: "", relativetelcode: "", }, + sourcetype: [ + { + value: 1, + label: "绉戝", + children: [], + }, + { + value: 2, + label: "鐥呭尯", + children: [], + }, + { + value: 3, + label: "鍏ㄩ儴", + }, + ], //瀵煎叆杩涘害 dractive: 1, // 瀵煎叆灞曠ず琛ㄥ崟 @@ -489,58 +578,14 @@ queryParams: { pageNum: 1, pageSize: 10, - idcardno: undefined, - name: undefined, - status: undefined, - tagIds: undefined, - telcode: undefined, + cry: 1, + searchscope: 3, + scopetype: [], + leaveldeptcodes: [], + leavehospitaldistrictcodes: [], }, // 琛ㄥ崟鏍¢獙 - 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", - // }, - // ], - }, + rules: {}, }; }, watch: { @@ -550,6 +595,24 @@ }, }, created() { + this.sourcetype[0].children = store.getters.belongDepts.map((dept) => { + return { + label: dept.deptName, + value: dept.deptCode, + }; + }); + this.sourcetype[1].children = store.getters.belongWards.map((dept) => { + return { + label: dept.districtName, + value: dept.districtCode, + }; + }); + this.queryParams.leaveldeptcodes = store.getters.belongDepts.map( + (obj) => obj.deptCode + ); + this.queryParams.leavehospitaldistrictcodes = store.getters.belongWards.map( + (obj) => obj.districtCode + ); this.getList(); this.listDept(); this.gettabList(); @@ -557,6 +620,13 @@ methods: { /** 鏌ヨ鎮h�呭垪琛� */ getList() { + if (this.queryParams.searchscope == 3) { + this.queryParams.leaveldeptcodes = store.getters.belongDepts.map( + (obj) => obj.deptCode + ); + this.queryParams.leavehospitaldistrictcodes = + store.getters.belongWards.map((obj) => obj.districtCode); + } this.loading = true; listpatient(this.queryParams).then((response) => { console.log(response); @@ -569,6 +639,22 @@ listDept(this.queryParams).then((res) => { this.deptList = res.data; console.log(this.deptList, "this.deptList"); + }); + }, + //鎮h��360璺宠浆 + gettoken360(sfzh, drcode, drname) { + this.postData.YeWuXX.BingRenXX.ZhengJianHM = sfzh; + if (this.postData.XiaoXiTou.ZuHuMC == "涓芥按甯備腑鍖婚櫌") { + this.postData.YeWuXX.YongHuXX.YongHuID = "1400398571877961728"; + this.postData.YeWuXX.YongHuXX.YongHuXM = "LSZYY"; + } + query360PatInfo(this.postData).then((res) => { + if (res.data.url) { + window.open(res.data.url, "_blank"); + // this.linkUrl = res.data.url; + } else { + this.$modal.msgWarning("360鏌ヨ鏃犵粨鏋�"); + } }); }, /** 鏌ヨ鏍囩鍒楄〃 */ @@ -584,6 +670,25 @@ console.log(response); this.optionstag = response.rows; }); + }, + // 鎮h�呰寖鍥村鐞� + handleChange(value) { + let type = value[0]; + let code = value.slice(-1)[0]; + this.queryParams.leavehospitaldistrictcodes = []; + this.queryParams.leaveldeptcodes = []; + + if (type == 1) { + this.queryParams.leaveldeptcodes.push(code); + this.queryParams.leavehospitaldistrictcodes = []; + this.queryParams.searchscope = 1; + } else if (type == 2) { + this.queryParams.leavehospitaldistrictcodes.push(code); + this.queryParams.leaveldeptcodes = []; + this.queryParams.searchscope = 2; + } else { + this.queryParams.searchscope = 3; + } }, // 鏌ヨ瀵煎叆灞曠ず鍒楄〃 geterryList() { @@ -627,6 +732,13 @@ }, /** 鎼滅储鎸夐挳鎿嶄綔 */ handleQuery() { + if (this.dateRange) { + this.queryParams.startOutHospTime = this.dateRange[0]; + this.queryParams.endOutHospTime = this.dateRange[1]; + } else { + this.queryParams.startOutHospTime = ""; + this.queryParams.endOutHospTime = ""; + } this.queryParams.pageNum = 1; this.getList(); }, @@ -634,7 +746,15 @@ resetQuery() { this.dateRange = []; this.resetForm("queryForm"); - this.$refs.tree.setCurrentKey(null); + this.queryParams = { + pageNum: 1, + pageSize: 10, + cry: 1, + searchscope: 3, + scopetype: [], + leaveldeptcodes: [], + leavehospitaldistrictcodes: [], + }; this.handleQuery(); }, // 澶氶�夋閫変腑鏁版嵁 @@ -720,7 +840,7 @@ /** 涓嬭浇妯℃澘鎿嶄綔 */ importTemplate() { this.download( - "system/user/importTemplate", + "smartor/import/getImportPatTemplate", {}, `user_template_${new Date().getTime()}.xlsx` ); -- Gitblit v1.9.3