| | |
| | | @click="getTaskservelist()" |
| | | >查看患者全部服务</el-button |
| | | > |
| | | <el-button v-else type="success" @click="getTaskservelist(taskid)" |
| | | <el-button v-else type="success" @click="getTaskservelist(id)" |
| | | >查看患者本次服务信息</el-button |
| | | > |
| | | </div> |
| | |
| | | </div> |
| | | <div> |
| | | <el-table :data="logsheetlist" style="width: 100%"> |
| | | <el-table-column prop="sendname" align="center" label="姓名"> |
| | | <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="服务状态" |
| | | label="任务状态" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <div v-if="scope.row.sendstate == 1"> |
| | | <el-tag type="primary" :disable-transitions="false" |
| | | >被领取</el-tag |
| | | >表单已领取</el-tag |
| | | > |
| | | </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"> |
| | | <el-tag type="success" :disable-transitions="false" |
| | | >已发送未领取</el-tag |
| | | >表单已发送</el-tag |
| | | > |
| | | </div> |
| | | <div v-if="scope.row.sendstate == 4"> |
| | |
| | | <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> |
| | |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="taskName" |
| | | align="center" |
| | | width="200" |
| | | show-overflow-tooltip |
| | | label="任务名称" |
| | | > |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | prop="templatename" |
| | |
| | | width="210" |
| | | > |
| | | </el-table-column> |
| | | <!-- <el-table-column |
| | | <el-table-column |
| | | label="操作" |
| | | fixed="right" |
| | | align="center" |
| | |
| | | @click="Seedetails(scope.row)" |
| | | v-hasPermi="['system:user:edit']" |
| | | ><span class="button-zx" |
| | | ><i class="el-icon-s-order"></i>查看服务</span |
| | | ><i class="el-icon-s-order"></i>查看</span |
| | | ></el-button |
| | | > |
| | | </template> |
| | | </el-table-column> --> |
| | | </el-table-column> |
| | | </el-table> |
| | | </div> |
| | | </div> |
| | | <div :class="form.serviceType == 2 ? 'Followuserinfo' : 'Followuserinfos'"> |
| | | <div> |
| | | <div class="headline"> |
| | | <div>人工处理</div> |
| | | <div style="margin-left: 30px"> |
| | | <el-button type="warning">一键呼叫</el-button> |
| | | <el-form ref="form" :model="form" label-width="120px"> |
| | | <div class="headline"> |
| | | <div>人工处理</div> |
| | | <el-row :gutter="20"> |
| | | <el-col :span="12" |
| | | ><el-form-item label="联系电话"> |
| | | <el-input |
| | | disabled |
| | | placeholder="联系电话缺失" |
| | | v-model="userform.telcode" |
| | | ></el-input> </el-form-item |
| | | ></el-col> |
| | | <el-col :span="12" |
| | | ><el-form-item label="联系人电话"> |
| | | <el-input |
| | | disabled |
| | | placeholder="联系人电话缺失" |
| | | v-model="userform.relativetelcode" |
| | | ></el-input> </el-form-item |
| | | ></el-col> |
| | | </el-row> |
| | | <div style="margin-left: 30px"> |
| | | <el-button type="primary" plain @click="Editsingletasksonyic">保存服务</el-button> |
| | | </div> |
| | | </div> |
| | | <el-form ref="form" :model="form" label-width="80px"> |
| | | </div> |
| | | |
| | | <el-form-item label="随访记录"> |
| | | <el-input type="textarea" v-model="form.remark"></el-input> |
| | | <el-input type="textarea" v-model="form.remark" ></el-input> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="处理意见"> |
| | |
| | | </div> |
| | | </el-form-item> |
| | | </el-form> |
| | | <el-collapse v-model="activeNames" @change="handleChange"> |
| | | <el-collapse> |
| | | <el-collapse-item title="查看当前患者信息" name="1"> |
| | | <div class="detailed"> |
| | | <el-form ref="userform" :model="userform" label-width="100px"> |
| | |
| | | /> </el-form-item |
| | | ></el-col> |
| | | </el-row> |
| | | <el-row :gutter="20"> |
| | | <!-- <el-row :gutter="20"> |
| | | <el-col :span="24"> |
| | | <el-form-item label="标签" prop="desc"> |
| | | <div class="xinz-inf"> |
| | |
| | | :key="tag.tagname" |
| | | type="success" |
| | | v-for="tag in dynamicTags" |
| | | v-if="tag.isoperation != 3" |
| | | :disable-transitions="false" |
| | | > |
| | | {{ tag.tagname }} |
| | | </el-tag> |
| | | <el-select |
| | | v-if="inputVisible" |
| | | v-model="inputValue" |
| | | @change="handleInputConfirm" |
| | | filterable |
| | | allow-create |
| | | default-first-option |
| | | placeholder="请选择/查询" |
| | | > |
| | | <el-option |
| | | v-for="item in options" |
| | | :key="item.tagid" |
| | | :label="item.tagname" |
| | | :value="item.tagname" |
| | | > |
| | | </el-option> |
| | | </el-select> |
| | | |
| | | <el-button |
| | | v-else |
| | | class="button-new-tag" |
| | | size="small" |
| | | @click="showInput" |
| | | >+ 新增标签</el-button |
| | | > |
| | | </div> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | </el-row> --> |
| | | </el-form> |
| | | </div> |
| | | </el-collapse-item> |
| | |
| | | </el-tabs> |
| | | </div> |
| | | <el-dialog title="患者再次随访" :visible.sync="dialogFormVisible"> |
| | | <el-form ref="form" :model="zcform" label-width="80px"> |
| | | <el-form ref="form" :model="form" label-width="80px"> |
| | | <el-form-item label="任务名称"> |
| | | <el-input |
| | | style="width: 400px" |
| | | disabled |
| | | v-model="form.taskName" |
| | | ></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="患者名称"> |
| | | <el-input style="width: 400px" v-model="zcform.name"></el-input> |
| | | <el-input |
| | | style="width: 400px" |
| | | disabled |
| | | v-model="form.sendname" |
| | | ></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="年龄"> |
| | | <el-input style="width: 400px" v-model="zcform.name"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="诊断"> |
| | | <el-input style="width: 400px" v-model="zcform.name"></el-input> |
| | | <el-input style="width: 400px" disabled v-model="form.age"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="科室"> |
| | | <el-input style="width: 400px" v-model="zcform.name"></el-input> |
| | | <el-input |
| | | style="width: 400px" |
| | | disabled |
| | | v-model="form.deptname" |
| | | ></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="病区"> |
| | | <el-input style="width: 400px" v-model="zcform.name"></el-input> |
| | | <el-input |
| | | style="width: 400px" |
| | | disabled |
| | | v-model="form.leavehospitaldistrictname" |
| | | ></el-input> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="随访方式"> |
| | | <el-radio-group v-model="zcform.resource"> |
| | | <el-radio-group v-model="form.resource"> |
| | | <el-radio label="1">本病区随访</el-radio> |
| | | <el-radio label="2">随访中心随访</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item label="即刻发送"> |
| | | <!-- <el-form-item label="即刻发送"> |
| | | <el-switch v-model="zcform.delivery"></el-switch> |
| | | </el-form-item> --> |
| | | <el-form-item label="随访时间"> |
| | | <el-date-picker |
| | | type="date" |
| | | placeholder="选择日期" |
| | | v-model="form.date1" |
| | | style="width: 100%" |
| | | ></el-date-picker> |
| | | </el-form-item> |
| | | <el-form-item label="随访时间" v-if="!zcform.delivery"> |
| | | <el-col :span="11"> |
| | | <el-date-picker |
| | | type="date" |
| | | placeholder="选择日期" |
| | | v-model="zcform.date1" |
| | | style="width: 100%" |
| | | ></el-date-picker> |
| | | </el-col> |
| | | <el-col class="line" :span="2">-</el-col> |
| | | <el-col :span="11"> |
| | | <el-time-picker |
| | | placeholder="选择时间" |
| | | v-model="zcform.date2" |
| | | style="width: 100%" |
| | | ></el-time-picker> |
| | | </el-col> |
| | | <el-form-item label="随访记录"> |
| | | <el-input type="textarea" v-model="form.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="dialogFormVisible = false" |
| | | >确 定</el-button |
| | | > |
| | | <el-button type="primary" @click="setupsubtask">确认创建服务</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | </div> |
| | |
| | | import { |
| | | getsearchrResults, |
| | | getPersonVoices, |
| | | addserviceSubtask, |
| | | getTaskservelist, |
| | | getTaskFollowup, |
| | | Editsingletaskson, |
| | |
| | | this.Voicetype = this.$route.query.Voicetype; |
| | | this.serviceType = this.$route.query.serviceType; |
| | | |
| | | this.getTaskservelist(this.taskid); |
| | | this.getTaskservelist(this.id); |
| | | }, |
| | | |
| | | methods: { |
| | | // 获取问卷数据 |
| | | getsearchrResults() { |
| | | getsearchrResults(id) { |
| | | getsearchrResults({ |
| | | taskid: this.taskid, |
| | | patid: this.patid, |
| | | subId: this.id, |
| | | subId: id ? id : this.id, |
| | | isFinish: false, |
| | | }).then((res) => { |
| | | if (res.code === 200) { |
| | | this.tableDatatop = res.data.scriptResult.script; |
| | | this.tableDatatop.forEach((item) => { |
| | | if (item.scriptResult && item.scriptType != 2) { |
| | | console.log(item.scriptResultId, "scriptResultId"); |
| | | |
| | | if (item.scriptResultId && item.scriptType != 2) { |
| | | item.isoption = 3; |
| | | item.scriptResult = JSON.parse(item.scriptResult); |
| | | } else if (item.scriptResult && item.scriptType == 2) { |
| | | item.scriptResult = item.scriptResult; |
| | | } else if (item.scriptResultId && item.scriptType == 2) { |
| | | item.scriptResult = item.scriptResult.split("&"); |
| | | item.isoption = 3; |
| | | } |
| | |
| | | // 获取基础信息 |
| | | getuserinfo() { |
| | | const queryParams = { |
| | | pid: Number(this.id), |
| | | pid: Number(this.patid), |
| | | allhosp: "0", |
| | | pageNum: 1, |
| | | }; |
| | | // 患者基础信息 |
| | | messagelistpatient(queryParams).then((response) => { |
| | | console.log(response.rows[0],'888'); |
| | | this.userform = response.rows[0]; |
| | | this.dynamicTags = response.rows[0].tagList.map(this.processElement); |
| | | }); |
| | | }, |
| | | // 获取语音数据 |
| | | getPersonVoices() { |
| | | getPersonVoices(id) { |
| | | let obj = { |
| | | taskid: this.taskid, |
| | | patid: this.patid, |
| | | subId: this.id, |
| | | subId: id ? id : this.id, |
| | | }; |
| | | console.log(this.voiceDatatop, "111"); |
| | | |
| | |
| | | if (res.code == 200) { |
| | | this.voiceDatatop = res.data.serviceSubtaskDetails; |
| | | this.voice = res.data.voice; |
| | | // this.activeName = "yy"; |
| | | // // this.activeName = "yy"; |
| | | this.taskname = res.data.taskName; |
| | | // 问卷展示数据处理 |
| | | this.tableDatatop = res.data.filteredDetails; |
| | |
| | | var objs = item.svyLibTemplateTargetoptions.find( |
| | | (items) => items.optioncontent == item.scriptResult |
| | | ); |
| | | |
| | | if (objs.isabnormal) { |
| | | excep = 1; |
| | | if (obj) { |
| | | if (objs.isabnormal) { |
| | | excep = 1; |
| | | } |
| | | } |
| | | |
| | | let obj = { |
| | |
| | | if (item.scriptType == 2 && item.scriptResult[0]) { |
| | | obj.asrtext = item.scriptResult.join("&"); |
| | | } else if (item.scriptType != 2 && item.scriptResult) { |
| | | obj.asrtext = JSON.stringify(item.scriptResult); |
| | | obj.asrtext = item.scriptResult; |
| | | } |
| | | |
| | | if (item.isoption == 3) { |
| | |
| | | } |
| | | item.patid = this.patid; |
| | | item.templateid = item.templateID; |
| | | }); |
| | | let obj = { |
| | | serviceSubtaskDetailList: this.tableDatatop, |
| | | param1: this.taskid, |
| | | param2: this.patid, |
| | | subId: this.id, |
| | | }; |
| | | |
| | | if (item.id) { |
| | | updatePersonVoices(item).then((res) => { |
| | | if (res.code == 200) { |
| | | this.$modal.msgSuccess("服务修改成功"); |
| | | } |
| | | }); |
| | | } else { |
| | | addPersonVoices(item).then((res) => { |
| | | if (res.code == 200) { |
| | | this.$modal.msgSuccess("服务保存成功"); |
| | | } |
| | | }); |
| | | addPersonVoices(obj).then((res) => { |
| | | if (res.code == 200) { |
| | | this.$modal.msgSuccess("服务保存成功"); |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | // 获取患者记录 |
| | | getTaskservelist(taskid) { |
| | | this.taskid = taskid; |
| | | if (taskid) { |
| | | getTaskservelist(id) { |
| | | this.id = id; |
| | | if (id) { |
| | | this.Whetherall = false; |
| | | } else { |
| | | this.Whetherall = true; |
| | | } |
| | | console.log("111"); |
| | | |
| | | getTaskservelist({ |
| | | patid: this.patid, |
| | | taskid: taskid, |
| | | subId: id, |
| | | deptOrDistrict:2, |
| | | }).then((res) => { |
| | | if (res.code == 200) { |
| | | this.form = res.rows[0].serviceSubtaskList[0]; |
| | | console.log(this.form, "form3"); |
| | | this.logsheetlist = res.rows[0].serviceSubtaskList; |
| | | this.templateid = this.logsheetlist[0].templateid; |
| | | console.log(this.form.serviceType, "serviceType"); |
| | | } |
| | | |
| | | if (this.form.scriptType == 2) { |
| | | if (this.Voicetype) { |
| | | this.getPersonVoices(); |
| | | } else { |
| | | this.getsearchrResults(); |
| | | } |
| | | this.getuserinfo(); |
| | | if (this.Voicetype) { |
| | | this.getPersonVoices(); |
| | | } else { |
| | | this.getsearchrResults(); |
| | | } |
| | | }); |
| | | }, |
| | |
| | | let objson = {}; |
| | | getTaskservelist({ |
| | | patid: this.patid, |
| | | taskid: this.taskid, |
| | | subId: this.id, |
| | | deptOrDistrict:2, |
| | | }).then((res) => { |
| | | if (res.code == 200) { |
| | | objson = res.rows[0].serviceSubtaskList[0]; |
| | |
| | | Editsingletaskson(objson).then((res) => { |
| | | if (res.code) { |
| | | this.$modal.msgSuccess("记录成功"); |
| | | this.getTaskservelist(this.taskid); |
| | | this.getTaskservelist(this.id); |
| | | } |
| | | }); |
| | | } |
| | |
| | | let objson = {}; |
| | | getTaskservelist({ |
| | | patid: this.patid, |
| | | taskid: this.taskid, |
| | | subId: this.id, |
| | | deptOrDistrict:2, |
| | | }).then((res) => { |
| | | if (res.code == 200) { |
| | | objson = res.rows[0].serviceSubtaskList[0]; |
| | | objson.excep = excep; |
| | | objson.remark = remark; |
| | | Editsingletaskson(objson).then((res) => { |
| | | if (res.code) { |
| | | this.$modal.msgSuccess("服务修改成功"); |
| | | this.getTaskservelist(this.taskid); |
| | | this.getTaskservelist(this.id); |
| | | } |
| | | }); |
| | | } |
| | |
| | | sendAgain() { |
| | | this.dialogFormVisible = true; |
| | | }, |
| | | // 更改异常状态 |
| | | // 查看详情 |
| | | Seedetails(row) { |
| | | this.$modal |
| | | .confirm('是否查看任务为"' + optionids + '"的服务项?') |
| | | .then(function () {}) |
| | | .confirm('是否查看任务为"' + row.taskName + '"的服务详情数据?') |
| | | .then(() => { |
| | | this.getList(); |
| | | this.taskid = row.taskid; |
| | | this.id = row.id; |
| | | this.patid = row.patid; |
| | | this.Voicetype = row.type; |
| | | this.serviceType = row.serviceType; |
| | | this.getTaskservelist(this.id); |
| | | }) |
| | | .catch(() => {}); |
| | | }, |
| | |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | // 创建再次随访服务 |
| | | setupsubtask() { |
| | | console.log(this.form); |
| | | let form = structuredClone(this.form); |
| | | 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; |
| | | addserviceSubtask(form).then((res) => { |
| | | if (res.code == 200) { |
| | | this.$modal.msgSuccess("创建成功"); |
| | | } else { |
| | | this.$modal.msgError("创建失败"); |
| | | } |
| | | this.dialogFormVisible = false; |
| | | }); |
| | | }, |
| | | updateScore(a, b, c) { |
| | | console.log(a); |
| | | console.log(b); |