From baeeb80c5dee869752520d95ca2fe7af96aa251d Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期四, 20 三月 2025 12:31:57 +0800 Subject: [PATCH] 测试完成 --- src/views/followvisit/discharge/index.vue | 314 ++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 265 insertions(+), 49 deletions(-) diff --git a/src/views/followvisit/discharge/index.vue b/src/views/followvisit/discharge/index.vue index dc2c913..3128e9d 100644 --- a/src/views/followvisit/discharge/index.vue +++ b/src/views/followvisit/discharge/index.vue @@ -17,7 +17,7 @@ font-weight: 600; " > - {{ item.value }} + {{ item.value ? item.value : 0 }} </div> </div> </el-card> @@ -90,6 +90,17 @@ end-placeholder="缁撴潫鏃ユ湡" ></el-date-picker> </el-form-item> + <el-form-item label="搴旈殢璁挎椂闂�"> + <el-date-picker + v-model="dateRangefs" + style="width: 240px" + value-format="yyyy-MM-dd" + type="daterange" + range-separator="-" + start-placeholder="寮�濮嬫棩鏈�" + end-placeholder="缁撴潫鏃ユ湡" + ></el-date-picker> + </el-form-item> <el-form-item label="鎮h�呭鍚�" prop="sendname"> <el-input @@ -112,6 +123,17 @@ <el-select v-model="topqueryParams.sendstate" placeholder="璇烽�夋嫨"> <el-option v-for="item in topicoptions" + :key="item.value" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> + </el-form-item> + <el-form-item label="鎺掑簭鏂瑰紡" prop="status"> + <el-select v-model="topqueryParams.sort" placeholder="璇烽�夋嫨"> + <el-option + v-for="item in topicoptionssort" :key="item.value" :label="item.label" :value="item.value" @@ -213,19 +235,36 @@ <el-table-column label="浠诲姟鍚嶇О" fixed + width="150" + show-overflow-tooltip align="center" key="taskName" prop="taskName" - width="180" /> <!-- <el-table-column label="搴忓彿" fixed align="center" key="id" prop="id" /> --> <el-table-column label="濮撳悕" - fixed + width="100" align="center" key="sendname" prop="sendname" - /> + > + <template slot-scope="scope"> + <el-button + size="medium" + type="text" + @click=" + $router.push({ + path: '/patient/indexls/', + query: { sfzh: scope.row.sfzh }, + }) + " + ><span class="button-textsc">{{ + scope.row.sendname + }}</span></el-button + > + </template> + </el-table-column> <el-table-column label="浠诲姟鐘舵��" align="center" @@ -247,7 +286,7 @@ </div> <div v-if="scope.row.sendstate == 2"> <el-tag type="primary" :disable-transitions="false" - >寰呮墽琛�</el-tag + >寰呴殢璁�</el-tag > </div> <div v-if="scope.row.sendstate == 3"> @@ -280,7 +319,7 @@ /> <el-table-column - label="浜哄伐澶勭悊鎰忚" + label="澶勭悊鎰忚" align="center" key="suggest" prop="suggest" @@ -383,7 +422,7 @@ /> --> <!-- <el-table-column label="骞撮緞" align="center" key="age" prop="age" /> --> - <!-- <el-table-column label="鎬у埆" align="center" key="sex" prop="sex" /> --> + <!-- <el-table-column label="鎬у埆"width="100" align="center" key="sex" prop="sex" /> --> <!-- <el-table-column label="搴婂彿" align="center" key="badNo" prop="badNo" /> --> <el-table-column label="绉戝" @@ -447,32 +486,38 @@ </el-table-column> --> <el-table-column label="浠诲姟缁撴灉璇存槑" - width="200" + width="220" align="center" key="remark" prop="remark" > - <template slot-scope="scope" v-if="scope.row.remark"> - <el-tag - type="warning" - v-if="scope.row.sendstate != 5 && scope.row.sendstate != 4" - >{{ scope.row.remark }}</el-tag + <template slot-scope="scope" v-if="scope.row.remark"> + <el-tooltip + :content="scope.row.remark" + placement="top" + effect="dark" > - <el-tag type="warning" v-else>{{ scope.row.remark }}</el-tag> + <el-tag + type="warning" + v-if="scope.row.sendstate != 5 && scope.row.sendstate != 4" + >{{ scope.row.remark }}</el-tag + > + <el-tag type="warning" v-else>{{ scope.row.remark }}</el-tag> + </el-tooltip> </template> </el-table-column> <el-table-column label="鎿嶄綔" align="center" fixed="right" - width="200" + width="300" class-name="small-padding fixed-width" > <template slot-scope="scope"> - <!-- <el-tooltip + <el-tooltip class="item" effect="dark" - content="閲嶆柊闅忚" + content="鍐嶆闅忚" placement="top" > <el-button @@ -481,13 +526,15 @@ @click="followupvisit(scope.row)" v-hasPermi="['system:user:edit']" ><span class="button-bb" - ><i class="el-icon-s-promotion"></i></span - ></el-button> - </el-tooltip> --> - <!-- <el-tooltip + ><i class="el-icon-s-promotion"></i>鍐嶆闅忚</span + ></el-button + > + </el-tooltip> + <el-tooltip + v-if="scope.row.sendstate == 1 || scope.row.sendstate == 2" class="item" effect="dark" - content="鍋滄" + content="鏆傚仠鏈嶅姟" placement="top" > <el-button @@ -495,9 +542,11 @@ type="text" @click="handlestop(scope.row)" v-hasPermi="['system:user:edit']" - ><span class="button-sc"><i class="el-icon-delete"></i></span - ></el-button> - </el-tooltip> --> + ><span class="button-sc" + ><i class="el-icon-remove-outline"></i>鏆傚仠鏈嶅姟</span + ></el-button + > + </el-tooltip> <el-button size="medium" type="text" @click="Seedetails(scope.row)" ><span class="button-zx" ><i class="el-icon-s-order"></i>鏌ョ湅璇︽儏</span @@ -515,7 +564,7 @@ @pagination="getList" /> </el-row> - <!-- 娣诲姞鎴栦慨鏀归棬璇婇殢璁垮璇濇 --> + <!-- 娣诲姞鎴栦慨鏀瑰奖鍍忛殢璁垮璇濇 --> <el-dialog :title="title" :visible.sync="addalteropen" @@ -558,7 +607,7 @@ </el-row> <el-row :gutter="20"> <el-col :span="24"> - <el-form-item label="闂ㄨ瘖闅忚瑕佹眰"> + <el-form-item label="褰卞儚闅忚瑕佹眰"> <el-input type="textarea" v-model="form.desc"></el-input> </el-form-item> </el-col> @@ -644,20 +693,87 @@ > </span> </el-dialog> + <!-- 鍐嶆闅忚 --> + <el-dialog title="鎮h�呭啀娆¢殢璁�" :visible.sync="dialogFormVisible"> + <el-form ref="zcform" :rules="zcrules" :model="zcform" label-width="80px"> + <el-form-item label="浠诲姟鍚嶇О"> + <el-input + style="width: 400px" + disabled + v-model="zcform.taskName" + ></el-input> + </el-form-item> + <el-form-item label="鎮h�呭悕绉�"> + <el-input + style="width: 400px" + disabled + v-model="zcform.sendname" + ></el-input> + </el-form-item> + <el-form-item label="骞撮緞"> + <el-input + style="width: 400px" + disabled + v-model="zcform.age" + ></el-input> + </el-form-item> + <el-form-item label="绉戝"> + <el-input + style="width: 400px" + disabled + v-model="zcform.deptname" + ></el-input> + </el-form-item> + <el-form-item label="鐥呭尯"> + <el-input + style="width: 400px" + disabled + v-model="zcform.leavehospitaldistrictname" + ></el-input> + </el-form-item> + + <el-form-item label="闅忚鏂瑰紡" prop="resource"> + <el-radio-group v-model="zcform.resource"> + <el-radio label="1">鏈梾鍖洪殢璁�</el-radio> + <el-radio label="2">闅忚涓績闅忚</el-radio> + </el-radio-group> + </el-form-item> + <!-- <el-form-item label="鍗冲埢鍙戦��"> + <el-switch v-model="zcform.delivery"></el-switch> + </el-form-item> --> + <el-form-item label="闅忚鏃堕棿" prop="date1"> + <el-date-picker + type="date" + placeholder="閫夋嫨鏃ユ湡" + v-model="zcform.date1" + style="width: 100%" + ></el-date-picker> + </el-form-item> + <el-form-item label="闅忚璁板綍"> + <el-input type="textarea" v-model="zcform.remark"></el-input> + </el-form-item> + </el-form> + <div slot="footer" class="dialog-footer"> + <el-button @click="dialogFormVisible = false">鍙� 娑�</el-button> + <el-button type="primary" @click="setupsubtask">纭鍒涘缓鏈嶅姟</el-button> + </div> + </el-dialog> </div> </template> <script> import { - listUser, - getUser, delUser, addUser, updateUser, resetUserPwd, changeUserStatus, } from "@/api/system/user"; -import { getTaskservelist, buidegetTasklist } from "@/api/AiCentre/index"; +import { + getTaskservelist, + buidegetTasklist, + addserviceSubtask, +} from "@/api/AiCentre/index"; import Treeselect from "@riophae/vue-treeselect"; import store from "@/store"; import "@riophae/vue-treeselect/dist/vue-treeselect.css"; @@ -678,12 +794,13 @@ multiple: true, // 鏄剧ず鎼滅储鏉′欢 showSearch: true, + dialogFormVisible: false, // 鎬绘潯鏁� total: 0, // 鐢ㄦ埛琛ㄦ牸鏁版嵁 userList: null, // 寮瑰嚭灞傛爣棰� - title: "鏂板闂ㄨ瘖闅忚", + title: "鏂板褰卞儚闅忚", // 鏄惁鏄剧ず淇敼銆佹坊鍔犲脊鍑哄眰 addalteropen: false, // 淇敼鍙戦�佹椂闂村璇濇 @@ -694,24 +811,26 @@ initPassword: undefined, // 鏃ユ湡鑼冨洿 dateRange: [], + dateRangefs: [], // 宀椾綅閫夐」 postOptions: [], ruleForm: { type: [], }, + zcform: {}, dynamicTags: ["閫夐」涓�", "閫夐」浜�", "閫夐」涓�"], //閫夐」 inputVisible: false, ycvalue: "", yfsvalue: "", inputValue: "", preachform: "", - previewVisible: false, //闂ㄨ瘖闅忚棰勮寮规 + previewVisible: false, //褰卞儚闅忚棰勮寮规 radio: "", radios: [], - previewtype: 2, //棰勮闂ㄨ瘖闅忚绫诲瀷 + previewtype: 2, //棰勮褰卞儚闅忚绫诲瀷 total: 0, // 鎬绘潯鏁� - ImportQuantity: 999, //瀵奸棬璇婇殢璁挎暟閲� - //棰勮闂ㄨ瘖闅忚淇℃伅 + ImportQuantity: 999, //瀵煎奖鍍忛殢璁挎暟閲� + //棰勮褰卞儚闅忚淇℃伅 previewvalue: { username: "杩欎釜鍖荤敓瀵逛綘鎬庝箞鏍�", }, @@ -758,7 +877,7 @@ value: 0, }, { - name: "寰呮墽琛�", + name: "寰呴殢璁�", value: 0, }, { @@ -771,7 +890,14 @@ // value: 0, // }, ], - + zcrules: { + date1: [ + { required: true, message: "璇烽�夋嫨闅忚鏂瑰紡", trigger: "change" }, + ], + resource: [ + { required: true, message: "璇烽�夋嫨闅忚鏃堕棿", trigger: "blur" }, + ], + }, // 琛ㄥ崟鍙傛暟 form: { phonenumber: "", @@ -781,10 +907,30 @@ qystatus: "", btstatus: "", }, + topicoptionssort:[ + { + value: 0, + label: "鍑洪櫌鏃堕棿(姝e簭)", + }, + { + value: 1, + label: "鍑洪櫌鏃堕棿(鍊掑簭)", + }, + { + value: 2, + label: "鍙戦�佹椂闂�(姝e簭)", + }, + { + value: 3, + label: "鍙戦�佹椂闂�(鍊掑簭)", + }, + ], // 鏌ヨ鍙傛暟 topqueryParams: { pageNum: 1, pageSize: 10, + sendstate: 2, + sort: 3, //0 鍑洪櫌鏃堕棿(姝e簭) 1 鍑洪櫌鏃堕棿(鍊掑簭) 2 鍙戦�佹椂闂�(姝e簭) 3 鍙戦�佹椂闂�(鍊掑簭) serviceType: 2, searchscope: 3, scopetype: [], @@ -801,7 +947,7 @@ }, { value: 2, - label: "寰呮墽琛�", + label: "寰呴殢璁�", }, { value: 3, @@ -870,7 +1016,7 @@ this.getList(1); }, methods: { - /** 鏌ヨ闂ㄨ瘖闅忚鏈嶅姟鍒楄〃 */ + /** 鏌ヨ褰卞儚闅忚鏈嶅姟鍒楄〃 */ getList(refresh) { // 榛樿鍏ㄩ儴 if (this.topqueryParams.searchscope == 3) { @@ -888,10 +1034,13 @@ console.log(this.topqueryParams.leavehospitaldistrictcodes, "11"); } this.loading = true; - if (this.topqueryParams.leavehospitaldistrictcodes[0]&&this.topqueryParams.leaveldeptcodes[0]) { - this.topqueryParams.deptOrDistrict=2; - }else{ - this.topqueryParams.deptOrDistrict=1; + if ( + this.topqueryParams.leavehospitaldistrictcodes[0] && + this.topqueryParams.leaveldeptcodes[0] + ) { + this.topqueryParams.deptOrDistrict = 2; + } else { + this.topqueryParams.deptOrDistrict = 1; } getTaskservelist(this.topqueryParams).then((response) => { this.userList = response.rows[0].serviceSubtaskList; @@ -950,7 +1099,8 @@ let obj = { pageNum: 1, pageSize: 10, - leavehospitaldistrictcodes: this.topqueryParams.leavehospitaldistrictcodes, + leavehospitaldistrictcodes: + this.topqueryParams.leavehospitaldistrictcodes, sendstates: [2, 3], leaveldeptcodes: this.topqueryParams.leaveldeptcodes, }; @@ -1012,7 +1162,7 @@ this.options = []; } }, - // 闂ㄨ瘖闅忚鐘舵�佷慨鏀� + // 褰卞儚闅忚鐘舵�佷慨鏀� handleStatusChange(row) { let text = row.status === "0" ? "鍚敤" : "鍋滅敤"; this.$modal @@ -1062,7 +1212,8 @@ this.topqueryParams.pageNum = 1; this.topqueryParams.startOutHospTime = this.dateRange[0]; this.topqueryParams.endOutHospTime = this.dateRange[1]; - + this.topqueryParams.startSendDateTime = this.dateRangefs[0]; + this.topqueryParams.endSendDateTime = this.dateRangefs[1]; this.getList(refresh); }, // 鎮h�呰寖鍥村鐞� @@ -1087,11 +1238,14 @@ /** 閲嶇疆鎸夐挳鎿嶄綔 */ resetQuery() { this.dateRange = []; + this.dateRangefs = []; this.topqueryParams = { pageNum: 1, pageSize: 10, serviceType: 2, - searchscope: 3, + sendstate: 2, + searchscope: 2, + sort: 3, }; this.handleQuery(1); }, @@ -1233,7 +1387,6 @@ if (row.preachformson) { if (row.preachformson.includes("3")) { type = 1; - console.log(type, "rwo"); } } this.$router.push({ @@ -1245,6 +1398,42 @@ Voicetype: type, }, }); + }, + // 鍐嶆闅忚 + followupvisit(row) { + this.zcform = row; + this.dialogFormVisible = true; + }, + onSubmit() {}, + // 鏆傚仠鏈嶅姟 + handlestop(row) { + let objson = row; + this.$modal + .confirm( + '鏄惁纭鏆傚仠浠诲姟鍚嶇О涓�"' + + row.taskName + + '鎮h�呭悕绉颁负"' + + row.sendname + + '"鐨勬暟鎹」锛�' + ) + .then(() => { + getTaskservelist({ + patid: row.patid, + taskid: row.taskid, + }).then((res) => { + if (res.code == 200) { + objson.sendstate = 4; + objson.remark = "鏈嶅姟鏆傚仠"; + Editsingletaskson(objson).then((res) => { + if (res.code) { + this.$modal.msgSuccess("璁板綍鎴愬姛"); + this.getList(1); + } + }); + } + }); + }) + .catch(() => {}); }, // 渚挎嵎鎸夐挳 toleadExport(too) { @@ -1274,6 +1463,33 @@ return "warning-row"; } return ""; + }, + // 鍒涘缓鍐嶆闅忚鏈嶅姟 + setupsubtask() { + this.$refs["zcform"].validate((valid) => { + if (valid) { + let form = structuredClone(this.zcform); + form.longSendTime = this.formatTime(form.date1); + if (form.resource) { + if (form.resource == 2) { + form.serviceType = 10; + } + } else { + this.$modal.msgError("鏈�夋嫨闅忚鏂瑰紡"); + } + form.id = null; + form.sendstate = 2; + form.preachform = form.preachformson; + addserviceSubtask(form).then((res) => { + if (res.code == 200) { + this.$modal.msgSuccess("鍒涘缓鎴愬姛"); + } else { + this.$modal.msgError("鍒涘缓澶辫触"); + } + this.dialogFormVisible = false; + }); + } + }); }, }, }; @@ -1409,7 +1625,7 @@ } .button-sc { font-weight: 500; - background-color: #dd302a; + background-color: #b3a21f; padding: 5px; border-radius: 1px; color: #ffffff; -- Gitblit v1.9.3