| | |
| | | <template> |
| | | <!-- 聊连页面记录 --> |
| | | <div class="Followupdetailspage"> |
| | | <div class="Followupdetailspage" id="app-container"> |
| | | <div class="Followuserinfo"> |
| | | <div> |
| | | <div class="userinfo-text"> |
| | |
| | | label="姓名" |
| | | width="100" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-button |
| | | size="medium" |
| | | type="text" |
| | | @click=" |
| | | gettoken360( |
| | | scope.row.sfzh, |
| | | scope.row.drcode, |
| | | scope.row.drname |
| | | ) |
| | | " |
| | | ><span class="button-textsc">{{ |
| | | scope.row.sendname |
| | | }}</span></el-button |
| | | > |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="taskName" |
| | |
| | | <div class="headline"> |
| | | <div>人工处理</div> |
| | | <el-row :gutter="20"> |
| | | <el-col :span="12" |
| | | <el-col :span="8" |
| | | ><el-form-item label="联系电话"> |
| | | <el-input |
| | | placeholder="联系电话缺失" |
| | | v-model="userform.telcode" |
| | | ></el-input> </el-form-item |
| | | ></el-col> |
| | | <el-col :span="12" |
| | | <el-col :span="8" |
| | | ><el-form-item label="联系人电话"> |
| | | <el-input |
| | | placeholder="联系人电话缺失" |
| | | v-model="userform.relativetelcode" |
| | | ></el-input> </el-form-item |
| | | ></el-col> |
| | | <el-col :span="8" |
| | | ><el-form-item label="联系人关系"> |
| | | <el-input |
| | | placeholder="联系人关系缺失" |
| | | v-model="userform.relation" |
| | | ></el-input> </el-form-item |
| | | ></el-col> |
| | | </el-row> |
| | |
| | | <el-button plain type="info" @click="Editsingletaskson('5')" |
| | | >中心随访</el-button |
| | | > |
| | | <el-button type="primary" round @click="sendAgain()" |
| | | <el-button |
| | | type="primary" |
| | | round |
| | | v-if="this.form.isVisitAgain != 2" |
| | | @click="sendAgain()" |
| | | >再次随访</el-button |
| | | > |
| | | </div> |
| | |
| | | maxlength="30" |
| | | ></el-input> </el-form-item |
| | | ></el-col> |
| | | </el-row> |
| | | <el-row :gutter="20"> |
| | | <el-col :span="12" |
| | | ><el-form-item label="联系方式" prop="telcode"> |
| | | <el-input |
| | | v-model="userform.telcode" |
| | | placeholder="请输入联系方式" |
| | | maxlength="30" |
| | | maxlength="20" |
| | | /> </el-form-item |
| | | ></el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="亲属联系方式" prop="name"> |
| | | <el-input |
| | | v-model="userform.relativetelcode" |
| | | placeholder="请输入姓名" |
| | | maxlength="20" |
| | | ></el-input> </el-form-item |
| | | ></el-col> |
| | | </el-row> |
| | | <el-row :gutter="20"> |
| | |
| | | <div class="title">{{ taskname ? taskname : "问卷" }}</div> |
| | | |
| | | <div class="preview-left" v-if="!Voicetype"> |
| | | <!-- 单选 --> |
| | | <div |
| | | class="topic-dev" |
| | | v-for="(item, index) in tableDatatop" |
| | | :key="item.id" |
| | | > |
| | | <!-- 单选 --> |
| | | <div |
| | | :class=" |
| | | item.isabnormal |
| | |
| | | </el-tab-pane> |
| | | </el-tabs> |
| | | </div> |
| | | <el-dialog title="患者再次随访" :visible.sync="dialogFormVisible"> |
| | | <el-dialog |
| | | title="患者再次随访" |
| | | v-dialogDrags |
| | | :visible.sync="dialogFormVisible" |
| | | > |
| | | <el-form ref="zcform" :rules="zcrules" :model="form" label-width="80px"> |
| | | <el-form-item label="任务名称"> |
| | | <el-input |
| | |
| | | <el-date-picker |
| | | type="date" |
| | | placeholder="选择日期" |
| | | :picker-options="pickerOptions" |
| | | align="right" |
| | | v-model="form.date1" |
| | | style="width: 100%" |
| | | ></el-date-picker> |
| | |
| | | </el-form-item> |
| | | </el-form> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button @click="dialogFormVisible = false">取 消</el-button> |
| | | <el-button type="warning" @click="dialogFormVisible = false" |
| | | >取 消</el-button |
| | | > |
| | | <el-button type="primary" @click="setupsubtask">确认创建服务</el-button> |
| | | </div> |
| | | </el-dialog> |
| | |
| | | serviceSubtaskDetailadd, |
| | | updatePersonVoices, |
| | | addPersonVoices, |
| | | query360PatInfo, |
| | | } from "@/api/AiCentre/index"; |
| | | import { messagelistpatient, alterpatient } from "@/api/patient/homepage"; |
| | | import { |
| | | messagelistpatient, |
| | | alterpatient, |
| | | listcontactinformation, |
| | | } from "@/api/patient/homepage"; |
| | | export default { |
| | | dicts: ["sys_normal_disable", "sys_user_sex", "sys_yujing", "sys_suggest"], |
| | | data() { |
| | |
| | | { required: true, message: "请选择随访时间", trigger: "blur" }, |
| | | ], |
| | | }, |
| | | url: "http://9.208.2.190:8090/smartor/serviceExternal/query360PatInfo", |
| | | 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", |
| | | }, |
| | | }, |
| | | }, |
| | | pickerOptions: { |
| | | shortcuts: [{ |
| | | text: '七天后', |
| | | onClick(picker) { |
| | | const date = new Date(); |
| | | date.setTime(date.getTime() + 3600 * 1000 * 24 * 7); |
| | | picker.$emit('pick', date); |
| | | } |
| | | }, { |
| | | text: '15天后', |
| | | onClick(picker) { |
| | | const date = new Date(); |
| | | date.setTime(date.getTime() + 3600 * 1000 * 24* 15); |
| | | picker.$emit('pick', date); |
| | | } |
| | | }, { |
| | | text: '30天后', |
| | | onClick(picker) { |
| | | const date = new Date(); |
| | | date.setTime(date.getTime() + 3600 * 1000 * 24 * 30); |
| | | picker.$emit('pick', date); |
| | | } |
| | | }] |
| | | }, |
| | | userform: {}, |
| | | Whetherall: false, //是否全部记录展示 |
| | | dialogFormVisible: false, |
| | |
| | | if (res.code === 200) { |
| | | this.tableDatatop = res.data.scriptResult; |
| | | this.tableDatatop.forEach((item) => { |
| | | console.log(item.scriptResultId, "scriptResultId"); |
| | | |
| | | if (item.scriptResultId && item.scriptType != 2) { |
| | | if (item.scriptType == 2) item.scriptResult = []; |
| | | if (item.scriptResult && item.scriptType != 2) { |
| | | item.isoption = 3; |
| | | item.scriptResult = item.scriptResult; |
| | | } else if (item.scriptResultId && item.scriptType == 2) { |
| | | } else if (item.scriptResult && item.scriptType == 2) { |
| | | item.scriptResult = item.scriptResult.split("&"); |
| | | item.isoption = 3; |
| | | } |
| | | }); |
| | | this.taskname = res.data.taskName; |
| | | this.overdata(); |
| | | } |
| | | }); |
| | | }, |
| | | //患者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查询无结果"); |
| | | } |
| | | }); |
| | | }, |
| | |
| | | if (response.rows[0]) { |
| | | this.userform = response.rows[0]; |
| | | // this.dynamicTags = response.rows[0].tagList.map(this.processElement); |
| | | } |
| | | }); |
| | | listcontactinformation({ patid: this.patid }).then((response) => { |
| | | this.tableData = response.rows; |
| | | if (this.tableData.length) { |
| | | this.userform.relativetelcode = this.tableData[0].contactway; |
| | | this.userform.relation = this.tableData[0].relation; |
| | | } |
| | | }); |
| | | }, |
| | |
| | | item.scriptResult = []; |
| | | } |
| | | }); |
| | | console.log(this.tableDatatop, "this.tableDatatop"); |
| | | |
| | | if (!this.tableDatatop.length) { |
| | | this.puttaskid(this.templateid); |
| | | } |
| | |
| | | } |
| | | }); |
| | | this.Editsingletasksonyic(6); |
| | | |
| | | this.$modal |
| | | .confirm( |
| | | '任务保存成功是否针对患者:"' + this.userform.name + '"再次随访?' |
| | | '任务保存成功是否针对患者:"' + |
| | | this.logsheetlist[0].sendname + |
| | | '"再次随访?' |
| | | ) |
| | | .then(() => { |
| | | document.querySelector("#app").scrollTo(0, 0); |
| | | this.dialogFormVisible = true; |
| | | }) |
| | | .catch(() => {}); |
| | |
| | | '任务保存成功是否针对患者:"' + this.userform.name + '"再次随访?' |
| | | ) |
| | | .then(() => { |
| | | document.querySelector("#app").scrollTo(0, 0); |
| | | this.dialogFormVisible = true; |
| | | }) |
| | | .catch(() => {}); |
| | |
| | | } |
| | | this.getuserinfo(); |
| | | } |
| | | console.log(this.Voicetype, "this.Voicetype"); |
| | | |
| | | if (this.Voicetype) { |
| | | this.getPersonVoices(); |
| | | } else { |
| | |
| | | }, |
| | | // 调起再次发送 |
| | | sendAgain() { |
| | | document.querySelector("#app").scrollTo(0, 0); |
| | | // scrollTo(0, 0) |
| | | this.dialogFormVisible = true; |
| | | }, |
| | | // 查看详情 |
| | |
| | | }, |
| | | overdata() { |
| | | this.tableDatatop.forEach((item, index) => { |
| | | console.log(item.svyLibTemplateTargetoptions); |
| | | |
| | | var obj = item.svyLibTemplateTargetoptions.find( |
| | | (items) => items.optioncontent == item.scriptResult |
| | | ); |
| | |
| | | setupsubtask() { |
| | | this.$refs["zcform"].validate((valid) => { |
| | | if (valid) { |
| | | this.form.remark = |
| | | this.form.remark + "【" + this.getCurrentTime() + "】"; |
| | | let form = structuredClone(this.form); |
| | | form.longSendTime = this.formatTime(form.date1); |
| | | form.finishtime = ""; |
| | | if (form.resource) { |
| | | if (form.resource == 2) { |
| | | form.serviceType = 10; |
| | | form.serviceType = 13; |
| | | } |
| | | } else { |
| | | this.$modal.msgError("未选择随访方式"); |
| | | } |
| | | form.id = null; |
| | | // form.id = null; |
| | | form.sendstate = 2; |
| | | addserviceSubtask(form).then((res) => { |
| | | if (res.code == 200) { |
| | | this.$modal.msgSuccess("创建成功"); |
| | | if (form.serviceType == 13) { |
| | | this.$router.push({ |
| | | path: "/logisticsservice/record", |
| | | }); |
| | | } else if (form.serviceType == 2) { |
| | | this.$router.push({ |
| | | path: "/followvisit/discharge", |
| | | }); |
| | | } |
| | | } else { |
| | | this.$modal.msgError("创建失败"); |
| | | } |
| | | document.querySelector("#app").scrollTo(0, 0); |
| | | this.dialogFormVisible = false; |
| | | }); |
| | | } |
| | | }); |
| | | }, |
| | | getCurrentTime() { |
| | | const now = new Date(); |
| | | const year = now.getFullYear(); |
| | | const month = String(now.getMonth() + 1).padStart(2, "0"); |
| | | const day = String(now.getDate()).padStart(2, "0"); |
| | | const hours = String(now.getHours()).padStart(2, "0"); |
| | | const minutes = String(now.getMinutes()).padStart(2, "0"); |
| | | const seconds = String(now.getSeconds()).padStart(2, "0"); |
| | | |
| | | return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; |
| | | }, |
| | | updateScore(a, b, c) { |
| | | console.log(a); |
| | | console.log(b); |