From 400d13ddc80a7560860939f65b318b2fa78f9004 Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期日, 27 四月 2025 15:49:56 +0800 Subject: [PATCH] 测试完成 --- src/views/patient/patient/index.vue | 331 +++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 263 insertions(+), 68 deletions(-) diff --git a/src/views/patient/patient/index.vue b/src/views/patient/patient/index.vue index 055b5e9..8c1dec9 100644 --- a/src/views/patient/patient/index.vue +++ b/src/views/patient/patient/index.vue @@ -109,20 +109,29 @@ @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="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="鎮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="鑱旂郴鐢佃瘽" prop="telcode"> <el-input v-model="queryParams.telcode" @@ -150,7 +159,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 +169,7 @@ v-hasPermi="['system:user:add']" >鏂板</el-button > - </el-col> + </el-col> --> <el-col :span="1.5"> <el-button @@ -215,7 +224,7 @@ <el-table v-loading="loading" :data="userList" - height="660" + height="808" @selection-change="handleSelectionChange" > <el-table-column type="selection" width="50" align="center" /> @@ -226,14 +235,39 @@ key="id" prop="id" /> --> - <el-table-column + <!-- <el-table-column fixed label="濮撳悕" + width="100" align="center" key="name" prop="name" - /> - <el-table-column label="鎬у埆" align="center" key="sex" prop="sex"> + /> --> + <el-table-column + label="濮撳悕" + width="100" + align="center" + key="name" + prop="name" + > + <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.name + }}</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> @@ -243,7 +277,7 @@ align="center" key="age" prop="age" - width="60" + width="100" /> <el-table-column label="鍑虹敓骞存湀" @@ -266,7 +300,7 @@ align="center" key="tagList" prop="tagList" - width="160" + width="180" :show-overflow-tooltip="true" > <template slot-scope="scope"> @@ -275,7 +309,7 @@ </span> </template> </el-table-column> - <el-table-column + <el-table-column label="璇佷欢鍙风爜" align="center" key="idcardno" @@ -288,16 +322,14 @@ align="center" key="telcode" prop="telcode" - width="120" /> <el-table-column label="寤烘。鏃ユ湡" align="center" key="createTime" prop="createTime" - width="160" > - <template slot-scope="scope"> + <template slot-scope="scope"> <span>{{ formatTime(scope.row.createTime) }}</span> </template> </el-table-column> @@ -305,7 +337,6 @@ label="鏇存柊鏃ユ湡" align="center" prop="archivetime" - width="160" > <template slot-scope="scope"> <span>{{ formatTime(scope.row.archivetime) }}</span> @@ -315,7 +346,7 @@ fixed="right" label="鎿嶄綔" align="center" - width="190" + width="200" class-name="small-padding fixed-width" > <template slot-scope="scope"> @@ -340,14 +371,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> @@ -411,13 +450,18 @@ prop="templatename" /> <el-table-column - label="寰呮墽琛�/鎬讳换鍔�" + label="鎬讳换鍔�/宸查殢璁�" align="center" key="nickName" + width="120" prop="nickName" > <template slot-scope="scope"> - <span>{{ scope.row.wfs }}/{{ scope.row.yfs }}</span> + <span + >{{ scope.row.wfs ? scope.row.wfs + scope.row.yfs : "" }}/{{ + scope.row.yfs + }}</span + > </template> </el-table-column> <el-table-column @@ -445,7 +489,7 @@ align="center" key="sendState" prop="sendState" - width="120" + width="180" > <template slot-scope="scope"> <dict-tag @@ -494,7 +538,7 @@ <el-form ref="form" :model="form" :rules="rules" label-width="100px"> <el-row> <el-col :span="8"> - <el-form-item label="濮撳悕" prop="name"> + <el-form-item label="濮撳悕" width="100" prop="name"> <el-input v-model="form.name" placeholder="璇疯緭鍏ュ鍚�" @@ -503,7 +547,7 @@ </el-form-item> </el-col> <el-col :span="8"> - <el-form-item label="鎬у埆" prop="sex"> + <el-form-item label="鎬у埆" width="100" prop="sex"> <el-select v-model="form.sex" placeholder="璇烽�夋嫨鎬у埆"> <el-option v-for="dict in sextype" @@ -524,7 +568,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 @@ -556,7 +600,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="鍥姐�佺渷銆佸湴甯傘�佸尯鍘裤�佽閬撶瓑璇︾粏淇℃伅" @@ -564,7 +608,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="鍥姐�佺渷銆佸湴甯傘�佸尯鍘裤�佽閬撶瓑璇︾粏淇℃伅" @@ -575,7 +619,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 @@ -686,8 +730,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="certificatenum" label="璇佷欢鍙风爜"> </el-table-column> @@ -725,8 +771,10 @@ <div v-if="dractive == 3"> <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="certificatenum" label="璇佷欢鍙风爜"> </el-table-column> <el-table-column prop="goday" label="鍑虹敓鏃ユ湡"> </el-table-column> @@ -773,6 +821,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> @@ -788,16 +862,22 @@ Exporterrorpatient, toleadpatient, } from "@/api/patient/homepage"; -import { getTasklist } from "@/api/AiCentre/index"; +import { getTasklist,query360PatInfo } from "@/api/AiCentre/index"; import { listtag } from "@/api/system/label"; import { getToken } from "@/utils/auth"; import Treeselect from "@riophae/vue-treeselect"; import store from "@/store"; + import "@riophae/vue-treeselect/dist/vue-treeselect.css"; 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 +894,7 @@ // 鎬绘潯鏁� total: 0, tasktotal: 0, + Risklist: [], // 鐢ㄦ埛琛ㄦ牸鏁版嵁 userList: null, taskuserList: null, @@ -832,7 +913,10 @@ serviceVisible: false, serviceradio: 1, distributeVisible: false, + RiskVisible: false, tasktopic: "5", //鏂板绫诲瀷 + Riskradio: 1, + RiskObj: {}, // 鏌ヨ鍙傛暟 topqueryParams: { pageNum: 1, @@ -874,7 +958,6 @@ value: 2, label: "濂�", }, - ], cardlist: [ @@ -922,6 +1005,39 @@ idcardtype: "", relativetelcode: "", }, + 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", + }, + }, + }, activeName: "first", //渚ц竟閫夋嫨 //瀵煎叆杩涘害 dractive: 1, @@ -956,13 +1072,28 @@ pageNum: 1, allhosp: "1", pageSize: 10, - searchscope:2, - idcardno: undefined, - name: undefined, - status: undefined, - tagIds: undefined, - telcode: undefined, + notrequiredFlag: 0, + searchscope: 2, + scopetype: [], + leaveldeptcodes: [], + leavehospitaldistrictcodes: [], }, + sourcetype: [ + { + value: 1, + label: "绉戝", + children: [], + }, + { + value: 2, + label: "鐥呭尯", + children: [], + }, + { + value: 3, + label: "鍏ㄩ儴", + }, + ], // 琛ㄥ崟鏍¢獙 rules: { name: [ @@ -976,7 +1107,6 @@ ], sex: [{ required: true, message: "鎬у埆涓嶈兘涓虹┖", trigger: "blur" }], - age: [{ required: true, message: "骞撮緞涓嶈兘涓虹┖", trigger: "blur" }], nation: [{ required: true, message: "姘戞棌涓嶈兘涓虹┖", trigger: "blur" }], telcode: [ { required: true, message: "鑱旂郴鏂瑰紡涓嶈兘涓虹┖", trigger: "blur" }, @@ -988,7 +1118,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)$/, @@ -998,6 +1128,9 @@ ], placeOfResidence: [ { required: true, message: "灞呬綇鍦颁笉鑳戒负绌�", trigger: "blur" }, + ], + birthplace: [ + { required: true, message: "鍑虹敓鍦颁笉鑳戒负绌�", trigger: "blur" }, ], }, }; @@ -1012,21 +1145,24 @@ this.getList(); this.gettabList(); //鑾峰彇宸茬瓫閫夊悗鐨勫彲閫変换鍔$被鍨� + 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.taskoptions = store.getters.Serviceauthority; }, 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 { + if (this.queryParams.searchscope == 3) { this.queryParams.leaveldeptcodes = store.getters.belongDepts.map( (obj) => obj.deptCode ); @@ -1061,6 +1197,22 @@ this.optionstag = response.rows; }); }, + //鎮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鏌ヨ鏃犵粨鏋�"); + } + }); + }, // 鏌ヨ瀵煎叆灞曠ず鍒楄〃 geterryList() { this.loading = true; @@ -1072,6 +1224,10 @@ }, Distributionservice(row) { this.serviceVisible = true; + }, + RiskMarker(row) { + this.RiskVisible = true; + this.RiskObj = row; }, // 鍙栨秷鎸夐挳 @@ -1095,16 +1251,23 @@ }, /** 鎼滅储鎸夐挳鎿嶄綔 */ handleQuery() { - 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, + notrequiredFlag: 0, + searchscope: 2, + scopetype: [], + leaveldeptcodes: [], + leavehospitaldistrictcodes: [], + }; + this.handleQuery(); }, // 澶氶�夋閫変腑鏁版嵁 handleSelectionChange(selection) { @@ -1161,7 +1324,25 @@ } }); }, + // 鎮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; + } + }, /** 鍒犻櫎鎸夐挳鎿嶄綔 */ handleDelete(row) { const userIds = row.userId || this.ids; @@ -1181,6 +1362,18 @@ this.$router.push({ path: "/followvisit/particty", 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() { @@ -1273,7 +1466,8 @@ } .sidecolumn { width: 180px; - min-height: 100vh; + min-height: 80vh; + position: fixed; text-align: center; // display: flex; margin-top: 20px; @@ -1351,6 +1545,7 @@ } .leftvlue { width: 80%; + margin-left: 220px; margin-top: 10px; } .leftvlue-bg { -- Gitblit v1.9.3