From 83598fa5941b3958e4998b9354a2c25b2e52ee9f Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期六, 12 十月 2024 15:13:34 +0800 Subject: [PATCH] 测试完成 --- src/views/followvisit/discharge/index.vue | 617 +++++++++++++++++++++++++++++++++++++------------------ 1 files changed, 417 insertions(+), 200 deletions(-) diff --git a/src/views/followvisit/discharge/index.vue b/src/views/followvisit/discharge/index.vue index a8d9bf0..3dae2ed 100644 --- a/src/views/followvisit/discharge/index.vue +++ b/src/views/followvisit/discharge/index.vue @@ -1,5 +1,29 @@ <template> <div class="app-container"> + <div class="leftvlue" style="margin-bottom: 20px;"> + <el-row :gutter="10"> + <el-col :span="2.5" v-for="(item, index) in cardlist" :key="index"> + <el-card + shadow="hover" + :body-style="item.router ? ' cursor: pointer' : 'cursor: default'" + > + <div style="padding: 8px" @click="$router.push(item.router)"> + <span>{{ item.name }}</span> + <div + style=" + text-align: center; + font-size: 18px; + margin-top: 10px; + font-weight: 600; + " + > + {{ item.value }} + </div> + </div> + </el-card> + </el-col> + </el-row> + </div> <el-row :gutter="20"> <!--鐢ㄦ埛鏁版嵁--> <el-form @@ -11,12 +35,10 @@ label-width="98px" > <el-form-item label="浠诲姟鍚嶇О"> - <el-input v-model="topqueryParams.taskName"></el-input> + <el-input v-model="topqueryParams.taskName" placeholder="璇烽�夋嫨浠诲姟鍚嶇О"></el-input> </el-form-item> - <el-form-item label="鍙戣捣浜�"> - <el-input v-model="topqueryParams.createBy"></el-input> - </el-form-item> - <!-- <el-form-item label="瀹℃牳鏃堕棿"> + + <el-form-item label="鍑洪櫌鏃堕棿"> <el-date-picker v-model="dateRange" style="width: 240px" @@ -27,21 +49,29 @@ end-placeholder="缁撴潫鏃ユ湡" ></el-date-picker> </el-form-item> - <el-form-item label="闅忚绫诲瀷" prop="status"> - <el-select v-model="topqueryParams.topic" placeholder="璇烽�夋嫨"> + + <el-form-item label="鎮h�呭鍚�" prop="sendname"> + <el-input + v-model="topqueryParams.sendname" + placeholder="璇疯緭鍏ユ偅鑰呭鍚�" + ></el-input> + </el-form-item> + <el-form-item label="鎮h�呰寖鍥�" prop="status"> + <el-select + v-model="topqueryParams.searchscope" + placeholder="璇烽�夋嫨鎮h�呰寖鍥�" + > <el-option - v-for="item in topicoptions" + 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="status"> - <el-input v-model="topqueryParams.templatename"></el-input> </el-form-item> - <el-form-item label="鍑洪櫌闅忚鐘舵��" prop="status"> + + <el-form-item label="浠诲姟鐘舵��" prop="status"> <el-select v-model="topqueryParams.sendstate" placeholder="璇烽�夋嫨"> <el-option v-for="item in topicoptions" @@ -52,6 +82,7 @@ </el-option> </el-select> </el-form-item> + <el-form-item> <el-button type="primary" @@ -74,11 +105,10 @@ icon="el-icon-plus" size="medium" @click="handleAdd" - v-hasPermi="['system:user:add']" >鏂板</el-button > </el-col> - <!-- <el-col :span="1.5"> + <el-col :span="1.5"> <div class="documentf"> <div class="document"> <el-button @@ -97,55 +127,12 @@ <div class="documentf"> <div class="document"> <el-button - type="success" - plain - icon="el-icon-download" - size="medium" - @click="toleadExport" - v-hasPermi="['system:user:export']" - >瀵煎叆</el-button - > - </div> - </div> - </el-col> - <el-col :span="1.5"> - <div class="documentf"> - <div class="document"> - <el-button - type="info" - icon="el-icon-refresh" - size="medium" - @click="TaskReset" - v-hasPermi="['system:user:export']" - >浠诲姟閲嶇疆</el-button - > - </div> - </div> - </el-col> - <el-col :span="1.5"> - <div class="documentf"> - <div class="document"> - <el-button - type="success" - icon="el-icon-position" - size="medium" - @click="AllStarted" - v-hasPermi="['system:user:export']" - >鍏ㄩ儴寮�濮�</el-button - > - </div> - </div> - </el-col> - <el-col :span="1.5"> - <div class="documentf"> - <div class="document"> - <el-button type="warning" - icon="el-icon-remove" + plain + icon="el-icon-warning-outline" size="medium" - @click="AllStop" - v-hasPermi="['system:user:export']" - >鍏ㄩ儴鍋滄</el-button + @click="toleadExport(1)" + >鎵ц澶辫触</el-button > </div> </div> @@ -154,26 +141,34 @@ <div class="documentf"> <div class="document"> <el-button - type="primary" - icon="el-icon-remove" + type="danger" + plain + icon="el-icon-warning" size="medium" - @click="Sendtimesetting" - v-hasPermi="['system:user:export']" - >鍙戦�佹椂闂磋缃�</el-button + @click="toleadExport(2)" + >缁撴灉寮傚父</el-button > </div> </div> - </el-col> --> - - <!-- <el-col :span="1.5"> </el-col> --> + </el-col> </el-row> <el-table v-loading="loading" :data="userList" + height="660" + :row-class-name="tableRowClassName" @selection-change="handleSelectionChange" > <el-table-column type="selection" width="50" align="center" /> - <el-table-column label="搴忓彿" fixed align="center" key="id" prop="id" /> + <el-table-column + label="浠诲姟鍚嶇О" + fixed + align="center" + key="taskName" + prop="taskName" + width="180" + /> + <!-- <el-table-column label="搴忓彿" fixed align="center" key="id" prop="id" /> --> <el-table-column label="濮撳悕" fixed @@ -182,27 +177,195 @@ prop="sendname" /> <el-table-column + label="浠诲姟鐘舵��" + align="center" + key="sendstate" + prop="sendstate" + width="120" + > + <template slot-scope="scope"> + <div v-if="scope.row.sendstate == 1"> + <el-tag type="primary" :disable-transitions="false" + >琚鍙�</el-tag + > + </div> + <div v-if="scope.row.sendstate == 2"> + <el-tag type="primary" :disable-transitions="false" + >寰呭彂閫�</el-tag + > + </div> + <div v-if="scope.row.sendstate == 3"> + <el-tag type="success" :disable-transitions="false" + >宸插彂閫佹湭棰嗗彇</el-tag + > + </div> + <div v-if="scope.row.sendstate == 4"> + <el-tag type="info" :disable-transitions="false">涓嶆墽琛�</el-tag> + </div> + <div v-if="scope.row.sendstate == 5"> + <el-tag type="danger" :disable-transitions="false" + >鍙戦�佸け璐�</el-tag + > + </div> + <div v-if="scope.row.sendstate == 6"> + <el-tag type="danger" :disable-transitions="false">宸插畬鎴�</el-tag> + </div> + </template> + </el-table-column> + <el-table-column + label="浠诲姟寮傚父璇存槑" + width="120" + align="center" + key="remark" + prop="remark" + /> + + <!-- <el-table-column + label="缁撴灉鐘舵��" + align="center" + key="excep" + prop="excep" + width="120" + > + <template slot-scope="scope"> + <div v-if="scope.row.sendstate == 6"> + <dict-tag + :options="dict.type.sys_yujing" + :value="scope.row.excep" + /> + </div> + <div v-else> + <span></span> + </div> + </template> + </el-table-column> --> + <el-table-column + label="浜哄伐澶勭悊鎰忚" + align="center" + key="suggest" + prop="suggest" + width="120" + > + <template slot-scope="scope"> + <dict-tag + :options="dict.type.sys_suggest" + :value="scope.row.suggest" + /> + </template> + </el-table-column> + <el-table-column + label="闅忚浜哄憳" + align="center" + key="createBy" + prop="createBy" + width="120" + /> + <el-table-column + label="闅忚鏃堕棿" + sortable + align="center" + prop="finishtime" + width="160" + > + <template slot-scope="scope"> + <span>{{ parseTime(scope.row.finishtime) }}</span> + </template> + </el-table-column> + <el-table-column + label="鍑洪櫌鏃ユ湡" + width="200" + align="center" + key="endtime" + prop="endtime" + > + <template slot-scope="scope"> + <span>{{ formatTime(scope.row.endtime) }}</span> + </template></el-table-column + > + <el-table-column + label="搴旈殢璁挎棩鏈�" + width="200" + align="center" + key="longSendTime" + prop="longSendTime" + > + <template slot-scope="scope"> + <span>{{ formatTime(scope.row.longSendTime) }}</span> + </template></el-table-column + > + <el-table-column + label="鍑洪櫌澶╂暟" + width="120" + align="center" + key="endDay" + prop="endDay" + > + <template slot-scope="scope"> + <span>{{ + scope.row.endDay ? scope.row.endDay + "澶�" : "鏃ユ湡缂哄け" + }}</span> + </template> + </el-table-column> + <el-table-column + label="韬唤璇佸彿鐮�" + width="200" + align="center" + key="sfzh" + prop="sfzh" + /> + <el-table-column + label="鑱旂郴鐢佃瘽" + width="200" + align="center" + key="phone" + prop="phone" + /> + <el-table-column + label="璐d换鎶ゅ+" + width="120" + align="center" + key="nurseName" + prop="nurseName" + /> + <el-table-column + label="涓绘不鍖荤敓" + width="120" + align="center" + key="drname" + prop="drname" + /> + + + <!-- <el-table-column label="鐥呭巻鍙�" align="center" sortable key="medicalRecordNo" prop="medicalRecordNo" width="120" - /> + /> --> - <el-table-column label="骞撮緞" align="center" key="age" prop="age" /> - <el-table-column label="鎬у埆" align="center" key="sex" prop="sex" /> - <el-table-column label="搴婂彿" align="center" key="badNo" prop="badNo" /> + <!-- <el-table-column label="骞撮緞" align="center" key="age" prop="age" /> --> + <!-- <el-table-column label="鎬у埆" align="center" key="sex" prop="sex" /> --> + <!-- <el-table-column label="搴婂彿" align="center" key="badNo" prop="badNo" /> --> <el-table-column - label="鐥呭尯" + label="绉戝" align="center" key="deptname" prop="deptname" width="120" > </el-table-column> - <el-table-column + label="鐥呭尯" + align="center" + key="leavehospitaldistrictname" + prop="leavehospitaldistrictname" + width="120" + > + </el-table-column> + + <!-- <el-table-column label="鐤剧梾鍚嶇О" align="center" key="icdName" @@ -210,41 +373,36 @@ width="120" :show-overflow-tooltip="true" > - </el-table-column> - <el-table-column - label="浠诲姟鍚嶇О" - align="center" - key="taskName" - prop="taskName" - width="120" - /> + </el-table-column> --> <el-table-column - label="闅忚鏂瑰紡锛堥渶璋冩暣鏍煎紡锛�" + label="鍑洪櫌闅忚妯℃澘鍚嶇О" align="center" - key="serviceform" - prop="serviceform" - width="120" - /> - <el-table-column - label="闅忚浜哄憳" - align="center" - key="operator" - prop="operator" - width="120" + key="templatename" + prop="templatename" + width="200" /> - <el-table-column - label="灏辫瘖鏃堕棿" + + <!-- <el-table-column + label="璐d换鍖诲笀" + align="center" + key="drname" + prop="drname" + width="120" + /> --> + + <!-- <el-table-column + label="鍑洪櫌鏃堕棿" sortable align="center" - prop="admindate" + prop="createTime" width="160" > <template slot-scope="scope"> - <span>{{ formatTime(scope.row.admindate) }}</span> + <span>{{ formatTime(scope.row.createTime) }}</span> </template> - </el-table-column> + </el-table-column> --> <!-- <el-table-column label="闅忚鏃堕棿" sortable @@ -259,19 +417,9 @@ <span v-else>鍗冲埢鍙戦��</span> </template> </el-table-column> --> - <el-table-column - label="闅忚鏃堕棿" - sortable - align="center" - prop="finishtime" - width="160" - > - <template slot-scope="scope"> - <span>{{ formatTime(scope.row.finishtime) }}</span> - </template> - </el-table-column> - <el-table-column - label="闅忚鐘舵��" + + <!-- <el-table-column + label="浠诲姟鐘舵��" fixed="right" align="center" key="sendstate" @@ -282,7 +430,7 @@ <template slot-scope="scope"> <dict-tag :options="serviceState" :value="scope.row.sendstate" /> </template> - </el-table-column> + </el-table-column> --> <el-table-column label="鎿嶄綔" @@ -321,25 +469,7 @@ ><span class="button-sc"><i class="el-icon-delete"></i></span ></el-button> </el-tooltip> --> - <!-- <el-tooltip - class="item" - effect="dark" - content="鏌ョ湅浠诲姟璇︽儏" - placement="top" - > - <el-button - size="medium" - type="text" - @click="Seedetails(scope.row)" - v-hasPermi="['system:user:edit']" - ><span class="button-zx"><i class="el-icon-s-order"></i></span - ></el-button> - </el-tooltip> --> - <el-button - size="medium" - type="text" - @click="Seedetails(scope.row)" - v-hasPermi="['system:user:edit']" + <el-button size="medium" type="text" @click="Seedetails(scope.row)" ><span class="button-zx" ><i class="el-icon-s-order"></i>鏌ョ湅璇︽儏</span ></el-button @@ -504,8 +634,8 @@ import "@riophae/vue-treeselect/dist/vue-treeselect.css"; export default { - name: "User", - dicts: ["sys_normal_disable", "sys_user_sex"], + name: "Discharge", + dicts: ["sys_normal_disable", "sys_user_sex", "sys_yujing", "sys_suggest"], components: { Treeselect }, data() { return { @@ -555,58 +685,50 @@ }, value: [], list: [], + source: [ + { + value: 0, + label: "鎵�灞炴偅鑰�", + }, + { + value: 1, + label: "绉戝鎮h��", + }, + { + value: 2, + label: "鐥呭尯鎮h��", + }, + ], loading: false, - states: [ - "Alabama", - "Alaska", - "Arizona", - "Arkansas", - "California", - "Colorado", - "Connecticut", - "Delaware", - "Florida", - "Georgia", - "Hawaii", - "Idaho", - "Illinois", - "Indiana", - "Iowa", - "Kansas", - "Kentucky", - "Louisiana", - "Maine", - "Maryland", - "Massachusetts", - "Michigan", - "Minnesota", - "Mississippi", - "Missouri", - "Montana", - "Nebraska", - "Nevada", - "New Hampshire", - "New Jersey", - "New Mexico", - "New York", - "North Carolina", - "North Dakota", - "Ohio", - "Oklahoma", - "Oregon", - "Pennsylvania", - "Rhode Island", - "South Carolina", - "South Dakota", - "Tennessee", - "Texas", - "Utah", - "Vermont", - "Virginia", - "Washington", - "West Virginia", - "Wisconsin", - "Wyoming", + cardlist: [ + { + name: "鍏ㄩ儴鏈嶅姟", + value: 0, + }, + { + name: "搴旈殢璁�", + value: 0, + }, + { + name: "涓嶆墽琛�", + value: 0, + }, + { + name: "寮傚父", + value: 0, + }, + { + name: "鍙戦�佸け璐�", + value: 0, + }, + { + name: "琚鍙�", + value: 0, + }, + { + name: "宸插彂閫佹湭棰嗗彇", + value: 0, + }, ], pickerOptions: { disabledDate(time) { @@ -650,7 +772,8 @@ topqueryParams: { pageNum: 1, pageSize: 10, - serviceType:2, + serviceType: 2, + searchscope:2, }, propss: { multiple: true }, options: [], @@ -666,7 +789,29 @@ }, { value: 3, - label: "宸插彂閫�", + label: "宸插彂閫佹湭棰嗗彇", + }, + { + value: 4, + label: "涓嶆墽琛�", + }, + { + value: 5, + label: "鍙戦�佸け璐�", + }, + { + value: 6, + label: "宸插畬鎴�", + }, + ], + topicoptionsyj: [ + { + value: 1, + label: "寮傚父", + }, + { + value: 0, + label: "姝e父", }, ], serviceState: [], @@ -682,18 +827,43 @@ this.initPassword = response.msg; }); }, - // 鎼滅储 - mounted() { - this.list = this.states.map((item) => { - return { value: `value:${item}`, label: `label:${item}` }; - }); + activated() { + this.getList(); }, methods: { /** 鏌ヨ闂ㄨ瘖闅忚鏈嶅姟鍒楄〃 */ getList() { + if (this.topqueryParams.searchscope == 1) { + this.topqueryParams.leaveldeptcodes = store.getters.belongDepts.map( + (obj) => obj.deptCode + ); + this.topqueryParams.leavehospitaldistrictcodes = null; + } else if (this.topqueryParams.searchscope == 2) { + this.topqueryParams.leavehospitaldistrictcodes = + store.getters.belongWards.map((obj) => obj.districtCode); + this.topqueryParams.leaveldeptcodes = null; + } else { + this.topqueryParams.leaveldeptcodes = store.getters.belongDepts.map( + (obj) => obj.deptCode + ); + this.topqueryParams.leavehospitaldistrictcodes = + store.getters.belongWards.map((obj) => obj.districtCode); + } this.loading = true; getTaskservelist(this.topqueryParams).then((response) => { - this.userList = response.rows; + this.userList = response.rows[0].serviceSubtaskList; + this.cardlist[0].value=Number(response.rows[0].wzx)+Number(response.rows[0].ysf); + this.cardlist[1].value=response.rows[0].ysf; + this.cardlist[2].value=response.rows[0].wzx; + this.cardlist[3].value=response.rows[0].yc; + 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.userList.forEach((item) => { + if (item.endtime) { + item.endDay = this.daysBetween(item.endtime); + } + }); this.total = response.total; this.loading = false; }); @@ -756,15 +926,37 @@ }, /** 鎼滅储鎸夐挳鎿嶄綔 */ handleQuery() { + if (this.topqueryParams.searchscope == 1) { + this.topqueryParams.leaveldeptcodes = store.getters.belongDepts.map( + (obj) => obj.deptCode + ); + this.topqueryParams.leavehospitaldistrictcodes = null; + } else if (this.topqueryParams.searchscope == 2) { + this.topqueryParams.leavehospitaldistrictcodes = + store.getters.belongWards.map((obj) => obj.districtCode); + this.topqueryParams.leaveldeptcodes = null; + } else { + this.topqueryParams.leaveldeptcodes = store.getters.belongDepts.map( + (obj) => obj.deptCode + ); + this.topqueryParams.leavehospitaldistrictcodes = + store.getters.belongWards.map((obj) => obj.districtCode); + } this.topqueryParams.pageNum = 1; + this.topqueryParams.startOutHospTime = this.dateRange[0]; + this.topqueryParams.endOutHospTime = this.dateRange[1]; + this.getList(); }, /** 閲嶇疆鎸夐挳鎿嶄綔 */ resetQuery() { this.dateRange = []; - this.resetForm("queryForm"); - this.topqueryParams.deptId = undefined; - this.$refs.tree.setCurrentKey(null); + this.topqueryParams = { + pageNum: 1, + pageSize: 10, + serviceType: 2, + searchscope:2, + }; this.handleQuery(); }, // 澶氶�夋閫変腑鏁版嵁 @@ -902,11 +1094,19 @@ Seedetails(row) { this.$router.push({ path: "/followvisit/record/detailpage/", - query: { taskid: row.taskid, patid: row.patid }, + query: { taskid: row.taskid, patid: row.patid, id: row.id }, }); }, - // 瀵煎叆鎸夐挳 - toleadExport() {}, + // 渚挎嵎鎸夐挳 + toleadExport(too) { + if (too == 1) { + this.topqueryParams.sendstate=4; + this.topqueryParams.excep=null; + } else if (too == 2) { + this.topqueryParams.excep=1; + } + this.handleQuery(); + }, /** 瀵煎嚭鎸夐挳鎿嶄綔 */ handleExport() { this.download( @@ -917,6 +1117,13 @@ `user_${new Date().getTime()}.xlsx` ); }, + // 寮傚父鍒楁覆鏌� + tableRowClassName({row, rowIndex}) { + if (row.excep == 1) { + return 'warning-row'; + } + return ''; + } }, }; </script> @@ -932,6 +1139,9 @@ // width: 100px; height: 50px; } +::v-deep.el-table .warning-row { + background: #eec4c4; + } .documentf { display: flex; @@ -1010,6 +1220,13 @@ } } } +::v-deep.leftvlue .el-card__body { + background: #d0e9fd; +} +::v-deep.leftvlue .el-card__body:hover { + background: #8dc8f8; + cursor: pointer; /* 榧犳爣鎮诞鏃跺彉涓烘墜褰� */ +} .button-bb { font-weight: 500; background-color: #2ba05c; -- Gitblit v1.9.3