From b6c854df0d7baa3e2f375306102b906eee127f3d Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期四, 31 七月 2025 16:43:39 +0800 Subject: [PATCH] 测试完成 --- src/views/sfstatistics/percentage/index.vue | 418 +++++++++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 349 insertions(+), 69 deletions(-) diff --git a/src/views/sfstatistics/percentage/index.vue b/src/views/sfstatistics/percentage/index.vue index 123346b..1e06ca3 100644 --- a/src/views/sfstatistics/percentage/index.vue +++ b/src/views/sfstatistics/percentage/index.vue @@ -44,16 +44,11 @@ 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 label="璐d换鍖荤敓" prop="userName"> + <el-input + v-model="queryParams.drname" + placeholder="璇疯緭鍏ヤ富娌诲尰鐢�" + ></el-input> </el-form-item> --> <el-form-item label="缁熻绫诲瀷" prop="userName"> <el-select @@ -149,51 +144,17 @@ >閲嶇疆</el-button > </el-form-item> + <el-col :span="19"> + <el-button + type="warning" + plain + icon="el-icon-download" + size="medium" + @click="handleExport" + >瀵煎嚭</el-button + > + </el-col> </el-form> - - <el-row :gutter="10" class="mb8"> - <el-col :span="1.5"> - <el-button - type="primary" - plain - icon="el-icon-plus" - size="medium" - @click="addladeltag" - v-hasPermi="['system:user:add']" - >鏂板</el-button - > - </el-col> - - <el-col :span="1.5"> - <el-button - type="danger" - plain - icon="el-icon-delete" - size="medium" - :disabled="multiple" - @click="handleDelete" - v-hasPermi="['system:user:remove']" - >鍒犻櫎</el-button - > - </el-col> - <el-col :span="1.5"> - <div class="documentf"> - <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> <!-- <right-toolbar :showSearch.sync="showSearch" @queryTable="getList" @@ -208,6 +169,7 @@ <el-table-column label="鍑洪櫌鐥呭尯" align="center" + sortable key="leavehospitaldistrictname" prop="leavehospitaldistrictname" width="150" @@ -287,6 +249,24 @@ }}%</span > </template> --> + </el-table-column> + <el-table-column + label="鍙婃椂鐜�" + align="center" + width="120" + key="rate" + prop="rate" + > + <template slot-scope="scope"> + <el-button + size="medium" + type="text" + @click="Seedetails(scope.row)" + ><span class="button-zx" + >{{ (Number(scope.row.rate) * 100).toFixed(2) }}%</span + ></el-button + > + </template> </el-table-column> <el-table-column label="浜哄伐" @@ -389,6 +369,234 @@ </el-row> </div> </div> + <el-dialog + title="鏈強鏃堕殢璁挎偅鑰呮湇鍔�" + :visible.sync="SeedetailsVisible" + v-loading="Seedloading" + width="70%" + :close-on-click-modal="false" + > + <div class="examine-jic"> + <div class="jic-value"> + <el-row :gutter="20"> + <!--鐢ㄦ埛鏁版嵁--> + <el-form + :model="patientqueryParams" + ref="queryForm" + size="small" + :inline="true" + label-width="98px" + > + <el-form-item label="鎮h�咃細"> + <el-input + v-model="patientqueryParams.name" + @keyup.enter.native="handleQuery" + ></el-input> + </el-form-item> + <el-form-item label="鎮h�呰瘖鏂細"> + <el-input + v-model="patientqueryParams.leavediagname" + @keyup.enter.native="handleQuery" + ></el-input> + </el-form-item> + + <el-form-item> + <el-button + type="primary" + icon="el-icon-search" + size="medium" + @click="handleQuery" + >鎼滅储</el-button + > + <el-button + icon="el-icon-refresh" + size="medium" + @click="resetQuery" + >鍙栨秷鍒涘缓</el-button + > + </el-form-item> + </el-form> + <!-- 閫夋嫨鎮h�呭垪琛� --> + <el-table :data="logsheetlist" style="width: 100%"> + <el-table-column + prop="sendname" + align="center" + label="濮撳悕" + width="100" + > + </el-table-column> + <el-table-column + prop="taskName" + align="center" + width="200" + show-overflow-tooltip + label="浠诲姟鍚嶇О" + > + </el-table-column> + <el-table-column + prop="sendstate" + align="center" + width="200" + label="浠诲姟鐘舵��" + > + <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="success" :disable-transitions="false" + >宸插畬鎴�</el-tag + > + </div> + </template> + </el-table-column> + <el-table-column + prop="visitTime" + align="center" + label="搴旈殢璁挎椂闂�" + width="200" + show-overflow-tooltip + > + </el-table-column> + <el-table-column + prop="finishtime" + align="center" + label="闅忚瀹屾垚鏃堕棿" + width="200" + show-overflow-tooltip + > + </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="璐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" + key="excep" + prop="excep" + width="120" + > + <template slot-scope="scope"> + <dict-tag + :options="dict.type.sys_yujing" + :value="scope.row.excep" + /> + </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 + prop="templatename" + align="center" + label="鏈嶅姟妯℃澘" + width="200" + show-overflow-tooltip + > + </el-table-column> + <el-table-column + prop="remark" + align="center" + label="鏈嶅姟璁板綍" + width="200" + show-overflow-tooltip + > + </el-table-column> + + <el-table-column + prop="bankcardno" + align="center" + label="鍛煎彨鐘舵��" + width="210" + > + </el-table-column> + <el-table-column + label="鎿嶄綔" + fixed="right" + align="center" + width="200" + class-name="small-padding fixed-width" + > + <template slot-scope="scope"> + <el-button + size="medium" + type="text" + @click="SeedetailsgGo(scope.row)" + ><span class="button-zx" + ><i class="el-icon-s-order"></i>鏌ョ湅</span + ></el-button + > + </template> + </el-table-column> + </el-table> + </el-row> + <pagination + v-show="patienttotal > 0 && this.patientqueryParams.allhosp != 6" + :total="patienttotal" + :page.sync="patientqueryParams.pn" + :limit.sync="patientqueryParams.ps" + @pagination="Seedetails" + /> + </div> + </div> + </el-dialog> </div> </template> @@ -400,7 +608,7 @@ changetagcategory, } from "@/api/system/label"; import store from "@/store"; -import { getSfStatistics, deptTreeSelect } from "@/api/system/user"; +import { getSfStatistics, selectTimelyRate } from "@/api/system/user"; import Treeselect from "@riophae/vue-treeselect"; import "@riophae/vue-treeselect/dist/vue-treeselect.css"; @@ -429,7 +637,7 @@ }, ]; export default { - name: "questionnaire", + name: "Percentage", dicts: ["sys_normal_disable", "sys_user_sex"], components: { Treeselect }, data() { @@ -438,6 +646,7 @@ activeName: "first", //渚ц竟閫夋嫨 // 閬僵灞� loading: false, + Seedloading: false, // 閫変腑鏁扮粍 ids: [], // 闈炲崟涓鐢� @@ -451,7 +660,8 @@ total: 0, flatArrayhospit: [], flatArraydept: [], - + patienttotal: 0, + logsheetlist: [], Statisticallist: [ { label: "鐥呭尯缁熻", @@ -462,6 +672,10 @@ value: 2, }, ], + patientqueryParams: { + pn: 1, + ps: 10, + }, amendtag: false, //鏄惁淇敼绫诲埆 lstamendtag: false, //鏄惁淇敼鏍囩 scavisible: false, //鍒犻櫎寮规 @@ -489,6 +703,10 @@ postOptions: [], // 瑙掕壊閫夐」 roleOptions: [], + // 瀛樺偍鎵�鏈夌瀹や唬鐮� + allDeptCodes: [], + // 瀛樺偍鎵�鏈夌梾鍖轰唬鐮� + allWardCodes: [], // 琛ㄥ崟鍙傛暟 form: {}, forms: { @@ -500,7 +718,7 @@ goQRCodeVisible: false, //浜岀淮鐮佸脊妗� sidecolumnval: "", //绫诲埆鎼滅储 propss: { multiple: true }, - + SeedetailsVisible: false, options: [ { value: 1, @@ -565,6 +783,8 @@ serviceType: [2], dateRange: [], statisticaltype: 1, + leavehospitaldistrictcodes: ["all"], // 榛樿閫変腑鍏ㄩ儴鐥呭尯 + deptcodes: ["all"], // 榛樿閫変腑鍏ㄩ儴绉戝 }, // 鍒椾俊鎭� columns: [ @@ -580,14 +800,30 @@ }, watch: {}, created() { - this.getList(); this.getDeptTree(); + this.getList(); }, methods: { /** 鏌ヨ鏍囩鍒楄〃 */ getList() { - getSfStatistics(this.queryParams).then((response) => { + // 澶勭悊鏌ヨ鍙傛暟 + const params = { + ...this.queryParams, + // 濡傛灉閫夋嫨浜�"鍏ㄩ儴"锛屽垯浼犳墍鏈夌梾鍖�/绉戝浠g爜 + leavehospitaldistrictcodes: + this.queryParams.leavehospitaldistrictcodes.includes("all") + ? this.allWardCodes + : this.queryParams.leavehospitaldistrictcodes, + deptcodes: this.queryParams.deptcodes.includes("all") + ? this.allDeptCodes + : this.queryParams.deptcodes, + }; + + // 绉婚櫎鍙兘瀛樺湪鐨�"all"鍊� + delete params.leavehospitaldistrictcodes.all; + delete params.deptcodes.all; + getSfStatistics(params).then((response) => { console.log(response); // this.total = response.total; this.userList = response.data; @@ -615,17 +851,26 @@ value: dept.deptCode, }; }); - this.flatArrayhospit = store.getters.belongWards.map((dept) => { + // 瀛樺偍鎵�鏈夌瀹や唬鐮� + this.allDeptCodes = store.getters.belongDepts.map( + (dept) => dept.deptCode + ); + + // 鐥呭尯鍒楄〃 + this.flatArrayhospit = store.getters.belongWards.map((ward) => { return { - label: dept.districtName, - value: dept.districtCode, + label: ward.districtName, + value: ward.districtCode, }; }); - // deptTreeSelect().then((response) => { - // this.deptOptions = response.data; - // console.log(this.deptOptions, " this.deptOptions"); - // this.flatArray = this.flattenArray(response.data); - // }); + + // 瀛樺偍鎵�鏈夌梾鍖轰唬鐮� + this.allWardCodes = store.getters.belongWards.map( + (ward) => ward.districtCode + ); + this.flatArraydept.push({ label: "鍏ㄩ儴", value: "all" }); + this.flatArrayhospit.push({ label: "鍏ㄩ儴", value: "all" }); + }, flattenArray(multiArray) { let result = []; @@ -656,6 +901,41 @@ tagdescription: "", tagid: "", }; + }, + Seedetails(row) { + this.SeedetailsVisible = true; + this.Seedloading = true; + this.patientqueryParams.starttime = this.parseTime( + this.queryParams.dateRange[0] + ); + this.patientqueryParams.endtime = this.parseTime( + this.queryParams.dateRange[1] + ); + this.patientqueryParams.deptcode = row.deptcode; + selectTimelyRate(this.patientqueryParams).then((response) => { + this.logsheetlist = response.data.detail; + this.patienttotal = response.data.total; + this.Seedloading = false; + }); + }, + SeedetailsgGo(row) { + this.SeedetailsVisible = false; + let type = ""; + if (row.preachformson && row.preachformson.includes("3")) { + type = 1; + } + setTimeout(() => { + this.$router.push({ + path: "/followvisit/record/detailpage/", + query: { + taskid: row.taskid, + patid: row.patid, + id: row.id, + Voicetype: type, + // visitCount: this.topqueryParams.visitCount, + }, + }); + }, 300); }, // 娣诲姞/淇敼鏍囩 Maintenancetag() { @@ -726,7 +1006,7 @@ /** 鎼滅储鎸夐挳鎿嶄綔 */ handleQuery() { this.queryParams.pageNum = 1; - console.log(); + if (!this.queryParams.dateRange) this.queryParams.dateRange = []; if (this.queryParams.statisticaltype == 1) { this.queryParams.deptcodes = []; } else if (this.queryParams.statisticaltype == 2) { -- Gitblit v1.9.3