|  |  |  | 
|---|
|  |  |  | <el-step | 
|---|
|  |  |  | icon="el-icon-edit" | 
|---|
|  |  |  | title="基础信息" | 
|---|
|  |  |  | description="选择模版、形式等基础信息" | 
|---|
|  |  |  | description="选择模板、形式等基础信息" | 
|---|
|  |  |  | ></el-step> | 
|---|
|  |  |  | <el-step | 
|---|
|  |  |  | icon="el-icon-user" | 
|---|
|  |  |  | 
|---|
|  |  |  | <div class="leftvlue" style="margin: 0 20px"> | 
|---|
|  |  |  | <!-- 基本信息 --> | 
|---|
|  |  |  | <div v-if="Editprogress == 1"> | 
|---|
|  |  |  | <el-alert title="选择模版、形式等基础信息" type="success" effect="dark"> | 
|---|
|  |  |  | <el-alert title="选择模板、形式等基础信息" type="success" effect="dark"> | 
|---|
|  |  |  | </el-alert> | 
|---|
|  |  |  | <div class="leftvlue-jbxx"> | 
|---|
|  |  |  | <!-- 基础信息 --> | 
|---|
|  |  |  | 
|---|
|  |  |  | /> </el-form-item | 
|---|
|  |  |  | ></el-col> | 
|---|
|  |  |  | <el-col :span="8" | 
|---|
|  |  |  | ><el-form-item label="模版名称"> | 
|---|
|  |  |  | ><el-form-item label="模板名称"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | style="width: 220px" | 
|---|
|  |  |  | :disabled="true" | 
|---|
|  |  |  | 
|---|
|  |  |  | @click="drawermb = true" | 
|---|
|  |  |  | circle | 
|---|
|  |  |  | ></el-button> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | v-if="form.templatename" | 
|---|
|  |  |  | type="success" | 
|---|
|  |  |  | icon="el-icon-search" | 
|---|
|  |  |  | @click="previewfnm" | 
|---|
|  |  |  | circle | 
|---|
|  |  |  | ></el-button> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <!-- <el-col :span="2"> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | v-if="form.templatename" | 
|---|
|  |  |  | type="success" | 
|---|
|  |  |  | icon="el-icon-search" | 
|---|
|  |  |  | @click="previewfnm" | 
|---|
|  |  |  | circle | 
|---|
|  |  |  | ></el-button> | 
|---|
|  |  |  | </el-col> --> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-form-item label="任务描述"> | 
|---|
|  |  |  | 
|---|
|  |  |  | placeholder="请输入任务描述" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label="发送设置:" v-if="currenttype != 2"> | 
|---|
|  |  |  | <el-row> | 
|---|
|  |  |  | <el-col :span="20" | 
|---|
|  |  |  | ><el-form-item label="适用科室" prop="region"> | 
|---|
|  |  |  | <el-select | 
|---|
|  |  |  | v-model="form.deptcode" | 
|---|
|  |  |  | style="width: 400px" | 
|---|
|  |  |  | size="medium" | 
|---|
|  |  |  | filterable | 
|---|
|  |  |  | placeholder="请选择科室" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option | 
|---|
|  |  |  | class="ruleFormaa" | 
|---|
|  |  |  | v-for="item in belongDepts" | 
|---|
|  |  |  | :key="item.deptCode" | 
|---|
|  |  |  | :label="item.deptName" | 
|---|
|  |  |  | :value="item.deptCode" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-option> | 
|---|
|  |  |  | </el-select> </el-form-item | 
|---|
|  |  |  | ></el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <el-row> | 
|---|
|  |  |  | <el-col :span="20" | 
|---|
|  |  |  | ><el-form-item label="适用病区" prop="region"> | 
|---|
|  |  |  | <el-select | 
|---|
|  |  |  | v-model="form.leavehospitaldistrictcode" | 
|---|
|  |  |  | style="width: 400px" | 
|---|
|  |  |  | size="medium" | 
|---|
|  |  |  | filterable | 
|---|
|  |  |  | placeholder="请选择病区" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option | 
|---|
|  |  |  | class="ruleFormaa" | 
|---|
|  |  |  | v-for="item in belongWards" | 
|---|
|  |  |  | :key="item.districtCode" | 
|---|
|  |  |  | :label="item.districtName" | 
|---|
|  |  |  | :value="item.districtCode" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-option> | 
|---|
|  |  |  | </el-select> </el-form-item | 
|---|
|  |  |  | ></el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <el-form-item label="执行周期" prop="longTask"> | 
|---|
|  |  |  | <el-radio-group v-model="form.longTask"> | 
|---|
|  |  |  | <el-radio :label="0">自定义周期</el-radio> | 
|---|
|  |  |  | <el-radio :label="1">长期任务</el-radio> | 
|---|
|  |  |  | </el-radio-group> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-row :gutter="20" v-if="form.longTask"> | 
|---|
|  |  |  | <el-col :span="8"> | 
|---|
|  |  |  | <el-form-item label="周期时间" prop="name"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | v-model="form.sendDay" | 
|---|
|  |  |  | placeholder="默认5天后" | 
|---|
|  |  |  | ></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <el-form-item label="执行设置" v-if="!form.longTask"> | 
|---|
|  |  |  | <el-radio-group v-model="form.sendType"> | 
|---|
|  |  |  | <el-radio :label="1">时间段发送</el-radio> | 
|---|
|  |  |  | <el-radio :label="3">时间点发送</el-radio> | 
|---|
|  |  |  | <el-radio :label="2">即刻发送</el-radio> | 
|---|
|  |  |  | </el-radio-group> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label="发送日期:" v-if="form.sendType == 1"> | 
|---|
|  |  |  | <el-form-item | 
|---|
|  |  |  | label="执行日期:" | 
|---|
|  |  |  | v-if="form.sendType == 1 && !form.longTask" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-date-picker | 
|---|
|  |  |  | v-model="daytime" | 
|---|
|  |  |  | @change="changeTimeday" | 
|---|
|  |  |  | 
|---|
|  |  |  | </el-date-picker> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-form-item label="发送时间点:" v-if="form.sendType == 3"> | 
|---|
|  |  |  | <el-form-item | 
|---|
|  |  |  | label="执行时间点:" | 
|---|
|  |  |  | v-if="form.sendType == 3 && !form.longTask" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <div style="display: flex"> | 
|---|
|  |  |  | <div style="margin-right: 10px"> | 
|---|
|  |  |  | <el-date-picker | 
|---|
|  |  |  | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-form-item label="发送时间段:" v-if="form.sendType == 1"> | 
|---|
|  |  |  | <el-form-item | 
|---|
|  |  |  | label="执行时间段:" | 
|---|
|  |  |  | v-if="form.sendType == 1 && !form.longTask" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <div style="display: flex"> | 
|---|
|  |  |  | <div style="margin-right: 10px"> | 
|---|
|  |  |  | <span style="font-size: 18px; margin-right: 10px" | 
|---|
|  |  |  | >时间段一</span | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <span style="font-size: 18px; margin-right: 10px">①</span> | 
|---|
|  |  |  | <el-time-picker | 
|---|
|  |  |  | is-range | 
|---|
|  |  |  | arrow-control | 
|---|
|  |  |  | 
|---|
|  |  |  | </el-time-picker> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div style="margin-right: 10px"> | 
|---|
|  |  |  | <span style="font-size: 18px; margin-right: 10px" | 
|---|
|  |  |  | >时间段二</span | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <span style="font-size: 18px; margin-right: 10px">②</span> | 
|---|
|  |  |  | <el-time-picker | 
|---|
|  |  |  | is-range | 
|---|
|  |  |  | arrow-control | 
|---|
|  |  |  | 
|---|
|  |  |  | </el-time-picker> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div style="margin-right: 10px"> | 
|---|
|  |  |  | <span style="font-size: 18px; margin-right: 10px" | 
|---|
|  |  |  | >时间段三</span | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <span style="font-size: 18px; margin-right: 10px">③</span> | 
|---|
|  |  |  | <el-time-picker | 
|---|
|  |  |  | is-range | 
|---|
|  |  |  | arrow-control | 
|---|
|  |  |  | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-row> | 
|---|
|  |  |  | <el-col :span="12" | 
|---|
|  |  |  | ><el-form-item label="开场白" prop="kcb"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | type="textarea" | 
|---|
|  |  |  | :rows="3" | 
|---|
|  |  |  | v-model="form.kcb" | 
|---|
|  |  |  | placeholder="请输入开场白" | 
|---|
|  |  |  | /> </el-form-item | 
|---|
|  |  |  | ></el-col> | 
|---|
|  |  |  | <el-col :span="12" | 
|---|
|  |  |  | ><el-form-item label="结束语" prop="jsy"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | type="textarea" | 
|---|
|  |  |  | :rows="3" | 
|---|
|  |  |  | v-model="form.jsy" | 
|---|
|  |  |  | placeholder="请输入结束语" | 
|---|
|  |  |  | /> </el-form-item | 
|---|
|  |  |  | ></el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <el-form-item label="服务形式"> | 
|---|
|  |  |  | <el-checkbox-group v-model="checkList"> | 
|---|
|  |  |  | <el-checkbox | 
|---|
|  |  |  | 
|---|
|  |  |  | >删除</el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="1.5"> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | type="info" | 
|---|
|  |  |  | plain | 
|---|
|  |  |  | icon="el-icon-upload2" | 
|---|
|  |  |  | size="medium" | 
|---|
|  |  |  | @click="handleImport" | 
|---|
|  |  |  | >导入</el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!-- <el-col :span="1.5"> </el-col> --> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | 
|---|
|  |  |  | @details="detailhz" | 
|---|
|  |  |  | @handleUpdate="handleUpdate" | 
|---|
|  |  |  | :currentList="overallCase" | 
|---|
|  |  |  | :tableLabel="tableLabelhz" | 
|---|
|  |  |  | :tableLabel="tableLabelhzwb" | 
|---|
|  |  |  | :serialnumber="false" | 
|---|
|  |  |  | :searchTrue="true" | 
|---|
|  |  |  | :multiplechoice="false" | 
|---|
|  |  |  | 
|---|
|  |  |  | v-show="showSearch" | 
|---|
|  |  |  | label-width="98px" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-form-item label="患者名称:"> | 
|---|
|  |  |  | <el-input v-model="patientqueryParams.name"></el-input> | 
|---|
|  |  |  | <el-form-item label="患者:"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | v-model="patientqueryParams.name" | 
|---|
|  |  |  | @keyup.enter.native="handleQuery" | 
|---|
|  |  |  | ></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!-- <el-form-item label="就诊科室" prop="status"> | 
|---|
|  |  |  | <el-select | 
|---|
|  |  |  | v-model="patientqueryParams.topic" | 
|---|
|  |  |  | placeholder="请选择" | 
|---|
|  |  |  | <el-select | 
|---|
|  |  |  | v-model="patientqueryParams.searchscope" | 
|---|
|  |  |  | placeholder="请选择患者范围" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option | 
|---|
|  |  |  | v-for="item in source" | 
|---|
|  |  |  | :key="item.value" | 
|---|
|  |  |  | :label="item.label" | 
|---|
|  |  |  | :value="item.value" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option-group | 
|---|
|  |  |  | v-for="group in topicoptions[0].children" | 
|---|
|  |  |  | :key="group.deptName" | 
|---|
|  |  |  | :label="group.deptName" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option | 
|---|
|  |  |  | v-for="item in group.children" | 
|---|
|  |  |  | :key="item.deptId" | 
|---|
|  |  |  | :label="item.deptName" | 
|---|
|  |  |  | :value="item.deptId" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-option> | 
|---|
|  |  |  | </el-option-group> | 
|---|
|  |  |  | </el-select> | 
|---|
|  |  |  | </el-form-item> --> | 
|---|
|  |  |  | </el-option> | 
|---|
|  |  |  | </el-select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-form-item> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </span> | 
|---|
|  |  |  | </el-dialog> | 
|---|
|  |  |  | <el-dialog title="模版预览" :visible.sync="previewtf" width="60%"> | 
|---|
|  |  |  | <!-- 模板预览 --> | 
|---|
|  |  |  | <el-dialog title="模板预览" :visible.sync="previewtf" width="60%"> | 
|---|
|  |  |  | <div class="preview-left"> | 
|---|
|  |  |  | <!-- 单选 --> | 
|---|
|  |  |  | <div v-html="richText"></div> | 
|---|
|  |  |  | <!-- 根据模板类型显示不同内容 --> | 
|---|
|  |  |  | <div v-if="currentTemplateType == '2'"> | 
|---|
|  |  |  | <!-- 通知模板只显示纯文本内容 --> | 
|---|
|  |  |  | <div style="white-space: pre-wrap; font-size: 16px; line-height: 1.6"> | 
|---|
|  |  |  | {{ plainTextContent }} | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div v-else> | 
|---|
|  |  |  | <!-- 其他类型模板显示富文本内容 --> | 
|---|
|  |  |  | <div v-html="htmlRichText"></div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <span slot="footer" class="dialog-footer"> | 
|---|
|  |  |  | <el-button @click="previewGo">前往模版详情修改</el-button> | 
|---|
|  |  |  | <el-button type="primary" @click="previewFn">确认使用</el-button> | 
|---|
|  |  |  | </span> | 
|---|
|  |  |  | </el-dialog> | 
|---|
|  |  |  | <!-- 用户导入对话框 --> | 
|---|
|  |  |  | <el-dialog | 
|---|
|  |  |  | :title="upload.title" | 
|---|
|  |  |  | :visible.sync="upload.open" | 
|---|
|  |  |  | width="70%" | 
|---|
|  |  |  | append-to-body | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-steps :active="dractive" simple> | 
|---|
|  |  |  | <el-step title="上传导入文件" icon="el-icon-upload"></el-step> | 
|---|
|  |  |  | <el-step title="导入检查" icon="el-icon-picture"></el-step> | 
|---|
|  |  |  | </el-steps> | 
|---|
|  |  |  | <!-- 上传导入文件 --> | 
|---|
|  |  |  | <div class="download" v-if="dractive == 1"> | 
|---|
|  |  |  | <el-upload | 
|---|
|  |  |  | class="upload-demo" | 
|---|
|  |  |  | ref="upload" | 
|---|
|  |  |  | :limit="1" | 
|---|
|  |  |  | accept=".xlsx, .xls" | 
|---|
|  |  |  | :headers="upload.headers" | 
|---|
|  |  |  | :action="upload.url" | 
|---|
|  |  |  | :disabled="upload.isUploading" | 
|---|
|  |  |  | :on-progress="handleFileUploadProgress" | 
|---|
|  |  |  | :on-success="handleFileSuccess" | 
|---|
|  |  |  | drag | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <i class="el-icon-upload"></i> | 
|---|
|  |  |  | <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div> | 
|---|
|  |  |  | <div class="el-upload__tip text-center" slot="tip"> | 
|---|
|  |  |  | <!-- <div class="el-upload__tip" slot="tip"> | 
|---|
|  |  |  | <el-checkbox v-model="upload.updateSupport" /> | 
|---|
|  |  |  | 是否更新已经存在的用户数据 | 
|---|
|  |  |  | </div> --> | 
|---|
|  |  |  | <span>仅允许导入xls、xlsx格式文件。</span> | 
|---|
|  |  |  | <el-link | 
|---|
|  |  |  | type="primary" | 
|---|
|  |  |  | :underline="false" | 
|---|
|  |  |  | style="font-size: 24px; vertical-align: baseline" | 
|---|
|  |  |  | @click="importTemplate" | 
|---|
|  |  |  | >下载模板 | 
|---|
|  |  |  | </el-link> | 
|---|
|  |  |  | <!-- <el-link | 
|---|
|  |  |  | type="success" | 
|---|
|  |  |  | :underline="false" | 
|---|
|  |  |  | style="font-size: 24px; vertical-align: baseline" | 
|---|
|  |  |  | href="http://m.qpic.cn/psc?/V50ZTolo1AIhq00dqrJP2169QM2VHGTU/ruAMsa53pVQWN7FLK88i5qfmCJclyMduqqL6kjE4h7TXDAjimVtmLmTyGVfF4qlkyOISsYQ4Mxx705X2tkXEIUPrfCS4L4yK.f11SmO8Tq0!/b&bo=twb0AgAAAAADB2U!&rf=viewer_4" | 
|---|
|  |  |  | target="_blank" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | 查看模板</el-link | 
|---|
|  |  |  | > --> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </el-upload> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!-- 完成 --> | 
|---|
|  |  |  | <div class="drexamine" v-else-if="dractive == 2"> | 
|---|
|  |  |  | <div style="display: flex"> | 
|---|
|  |  |  | <img src="@/assets/images/导入.png" /> | 
|---|
|  |  |  | <p>导入患者成功!</p> | 
|---|
|  |  |  | <p> | 
|---|
|  |  |  | 本次成功导入<span style="color: #72d3a9; font-size: 20px">{{ | 
|---|
|  |  |  | uploadingData.length | 
|---|
|  |  |  | }}</span | 
|---|
|  |  |  | >位患者 | 
|---|
|  |  |  | </p> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-table :data="uploadingData" style="width: 100%"> | 
|---|
|  |  |  | <el-table-column prop="serial" label="患者id"> </el-table-column> | 
|---|
|  |  |  | <el-table-column prop="name" label="姓名" width="100"> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column prop="sex" label="性别" width="100"> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column prop="idcardno" width="300" label="证件号码"> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column prop="goday" label="出生日期"> </el-table-column> | 
|---|
|  |  |  | <el-table-column prop="telcode" width="200" label="联系方式"> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column prop="createTime" width="200" label="创建日期"> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | </el-table> | 
|---|
|  |  |  | <!-- <pagination | 
|---|
|  |  |  | v-show="total > 0" | 
|---|
|  |  |  | :total="total" | 
|---|
|  |  |  | :page.sync="queryParams.pageNum" | 
|---|
|  |  |  | :limit.sync="queryParams.pageSize" | 
|---|
|  |  |  | @pagination="geterryList" | 
|---|
|  |  |  | /> --> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <div slot="footer"> | 
|---|
|  |  |  | <el-button type="primary" @click="submitFileForm">{{ | 
|---|
|  |  |  | dractive == 1 ? "下一步" : "加入任务" | 
|---|
|  |  |  | }}</el-button> | 
|---|
|  |  |  | <el-button @click="submitclose">取 消</el-button> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </el-dialog> | 
|---|
|  |  |  | <el-drawer | 
|---|
|  |  |  | title="宣教内容列表" | 
|---|
|  |  |  | 
|---|
|  |  |  | v-show="showSearch" | 
|---|
|  |  |  | label-width="98px" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-form-item | 
|---|
|  |  |  | label="宣教名称" | 
|---|
|  |  |  |  | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-form-item label="宣教名称"> | 
|---|
|  |  |  | <el-input v-model="topqueryParams.preachname"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label="宣教分类" prop="region"> | 
|---|
|  |  |  | <el-form-item label="宣教类型" prop="region"> | 
|---|
|  |  |  | <el-select | 
|---|
|  |  |  | v-model="topqueryParams.assortid" | 
|---|
|  |  |  | v-model="topqueryParams.hetype" | 
|---|
|  |  |  | size="medium" | 
|---|
|  |  |  | filterable | 
|---|
|  |  |  | placeholder="请选择分类" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option-group | 
|---|
|  |  |  | v-for="group in sortlist" | 
|---|
|  |  |  | :key="group.id" | 
|---|
|  |  |  | :label="group.assortname" | 
|---|
|  |  |  | <el-option | 
|---|
|  |  |  | v-for="item in heLibraryAssortList" | 
|---|
|  |  |  | :key="item.id" | 
|---|
|  |  |  | :label="item.value" | 
|---|
|  |  |  | :value="item.id" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option | 
|---|
|  |  |  | v-for="item in group.heLibraryAssortList" | 
|---|
|  |  |  | :key="item.id" | 
|---|
|  |  |  | :label="item.assortname" | 
|---|
|  |  |  | :value="item.id" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-option> | 
|---|
|  |  |  | </el-option-group> | 
|---|
|  |  |  | </el-option> | 
|---|
|  |  |  | </el-select> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-form> | 
|---|
|  |  |  | <el-divider></el-divider> | 
|---|
|  |  |  | <!-- 选择模版列表 --> | 
|---|
|  |  |  | <!-- 选择模板列表 --> | 
|---|
|  |  |  | <SFtable | 
|---|
|  |  |  | @selectfn="selectfn" | 
|---|
|  |  |  | :currentList="userList" | 
|---|
|  |  |  | 
|---|
|  |  |  | getheLibraryAssort, | 
|---|
|  |  |  | } from "@/api/AiCentre/index"; | 
|---|
|  |  |  | import { listDept } from "@/api/system/dept"; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import { getToken } from "@/utils/auth"; | 
|---|
|  |  |  | import SFtable from "@/components/SFtable"; //表格组件 | 
|---|
|  |  |  |  | 
|---|
|  |  |  | export default { | 
|---|
|  |  |  | 
|---|
|  |  |  | return { | 
|---|
|  |  |  | title: "宣教内容列表", | 
|---|
|  |  |  | currenttype: 1, //1宣教2门诊3出院4复诊5体检6问卷 | 
|---|
|  |  |  | currentTemplateType: "", // 当前模板类型 | 
|---|
|  |  |  | plainTextContent: "", // 纯文本内容 | 
|---|
|  |  |  | id: "", // | 
|---|
|  |  |  | previewid: "", //任务模版传递id | 
|---|
|  |  |  | previewid: "", //任务模板传递id | 
|---|
|  |  |  | libName: "", | 
|---|
|  |  |  | overallCase: [], //选择患者总 | 
|---|
|  |  |  | allpids: [], | 
|---|
|  |  |  | libId: null, //模板库模版id | 
|---|
|  |  |  | libId: null, //模板库模板id | 
|---|
|  |  |  | Editprogress: 1, //编辑进度 | 
|---|
|  |  |  | drawermb: false, //选择模版弹窗 | 
|---|
|  |  |  | drawermb: false, //选择模板弹窗 | 
|---|
|  |  |  | previewtf: false, //预览 | 
|---|
|  |  |  | loading: false, // 遮罩层 | 
|---|
|  |  |  | patientloading: false, // 遮罩层 | 
|---|
|  |  |  | dialogVisiblepatient: false, //添加患者弹框 | 
|---|
|  |  |  | radio: 1, | 
|---|
|  |  |  | checkboxlist: [], | 
|---|
|  |  |  | // 科室/病区 | 
|---|
|  |  |  | belongWards: [], | 
|---|
|  |  |  | belongWards: [], | 
|---|
|  |  |  | tableLabel: [], | 
|---|
|  |  |  | questionList: [], | 
|---|
|  |  |  | richText: "<p>Hello, <strong>world</strong>!</p>", | 
|---|
|  |  |  | uploadingData: [], | 
|---|
|  |  |  | htmlRichText: "<p>Hello, <strong>world</strong>!</p>", | 
|---|
|  |  |  | // 患者表单 | 
|---|
|  |  |  | tableLabelhz: [ | 
|---|
|  |  |  | { label: "序号", width: "", prop: "patid" }, | 
|---|
|  |  |  | { label: "患者名称", width: "", prop: "name" }, | 
|---|
|  |  |  | { label: "出院日期", width: "150", prop: "inhosptime" }, | 
|---|
|  |  |  | { label: "患者", width: "", prop: "name" }, | 
|---|
|  |  |  | { label: "身份证", width: "200", prop: "sfzh" }, | 
|---|
|  |  |  | { label: "性别", width: "", prop: "sex" }, | 
|---|
|  |  |  | { label: "年龄", width: "", prop: "age" }, | 
|---|
|  |  |  | { label: "就诊科室", width: "", prop: "deptName" }, | 
|---|
|  |  |  | { label: "入院日期", width: "", prop: "inhosptime" }, | 
|---|
|  |  |  | { label: "创建人", width: "", prop: "createBy" }, | 
|---|
|  |  |  | { label: "责任护士", width: "", prop: "nurseName" }, | 
|---|
|  |  |  | { label: "主治医生", width: "", prop: "drname" }, | 
|---|
|  |  |  | { label: "科室", width: "240", prop: "dept" }, | 
|---|
|  |  |  | { label: "病区", width: "240", prop: "leavehospitaldistrictname" }, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | // 患者表单 | 
|---|
|  |  |  | tableLabelhzwb: [ | 
|---|
|  |  |  | { label: "出院日期", width: "150", prop: "endtime" }, | 
|---|
|  |  |  | { label: "患者", width: "", prop: "name" }, | 
|---|
|  |  |  | { label: "身份证", width: "200", prop: "sfzh" }, | 
|---|
|  |  |  | { label: "性别", width: "", prop: "sex" }, | 
|---|
|  |  |  | { label: "年龄", width: "", prop: "age" }, | 
|---|
|  |  |  | { label: "责任护士", width: "", prop: "nurseName" }, | 
|---|
|  |  |  | { label: "主治医生", width: "", prop: "drname" }, | 
|---|
|  |  |  | { label: "科室", width: "180", prop: "deptName" }, | 
|---|
|  |  |  | { label: "病区", width: "150", prop: "leavehospitaldistrictname" }, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  |  | 
|---|
|  |  |  | tableLabelxj: [ | 
|---|
|  |  |  | { label: "宣教名称", width: "", prop: "preachname" }, | 
|---|
|  |  |  | { label: "宣教描述", width: "", prop: "note" }, | 
|---|
|  |  |  | { label: "宣教形式", width: "", prop: "playType" }, | 
|---|
|  |  |  | { label: "创建人", width: "", prop: "createBy" }, | 
|---|
|  |  |  | { label: "宣教名称", width: "180", prop: "preachname" }, | 
|---|
|  |  |  | { label: "宣教内容", width: "180", prop: "preachcontent" }, | 
|---|
|  |  |  | // { label: "宣教形式", width: "", prop: "playType" }, | 
|---|
|  |  |  | { label: "适用方式", width: "", prop: "suitway" }, | 
|---|
|  |  |  | { label: "修改日期", width: "", prop: "uploadTime" }, | 
|---|
|  |  |  | { label: "创建人", width: "", prop: "createBy" }, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | // 变量 | 
|---|
|  |  |  | tableLabelvariable: [ | 
|---|
|  |  |  | 
|---|
|  |  |  | { label: "短信", value: 4 }, | 
|---|
|  |  |  | { label: "微信公众", value: 5 }, | 
|---|
|  |  |  | { label: "钉钉", value: 6 }, | 
|---|
|  |  |  | { label: "智能机器人", value: 7 }, | 
|---|
|  |  |  | // { label: "智能机器人", value: 7 }, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | upload: { | 
|---|
|  |  |  | // 是否显示弹出层(用户导入) | 
|---|
|  |  |  | open: false, | 
|---|
|  |  |  | // 弹出层标题(用户导入) | 
|---|
|  |  |  | title: "", | 
|---|
|  |  |  | // 是否禁用上传 | 
|---|
|  |  |  | isUploading: false, | 
|---|
|  |  |  | // 是否更新已经存在的用户数据 | 
|---|
|  |  |  | updateSupport: 0, | 
|---|
|  |  |  | // 设置上传的请求头部 | 
|---|
|  |  |  | headers: { Authorization: "Bearer " + getToken() }, | 
|---|
|  |  |  | // 上传的地址 | 
|---|
|  |  |  | url: process.env.VUE_APP_BASE_API + "/smartor/import/importPatInfo", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | //导入进度 | 
|---|
|  |  |  | dractive: 1, | 
|---|
|  |  |  | // 时间处理 | 
|---|
|  |  |  | daytime: [], //日期 | 
|---|
|  |  |  | applydaytime: [], //计算日期 | 
|---|
|  |  |  | 
|---|
|  |  |  | // 非多个禁用 | 
|---|
|  |  |  | multiple: true, | 
|---|
|  |  |  | // 用户表格数据 | 
|---|
|  |  |  | userList: [], //模版列表 | 
|---|
|  |  |  | userList: [], //模板列表 | 
|---|
|  |  |  | patientuserList: [], //选择患者列表 | 
|---|
|  |  |  | sonuserList: [], //选中患者列表 | 
|---|
|  |  |  | delvariableList: [], //删除变量临时存储 | 
|---|
|  |  |  | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | variableListTime: [], | 
|---|
|  |  |  | sortlist: [], | 
|---|
|  |  |  | heLibraryAssortList: [ | 
|---|
|  |  |  | { id: 1, value: "宣教" }, | 
|---|
|  |  |  | { id: 2, value: "通知" }, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | tasktopic: null, //新增类型 | 
|---|
|  |  |  | SelectPatientslist: [], | 
|---|
|  |  |  | form: { | 
|---|
|  |  |  | patTaskRelevances: [], | 
|---|
|  |  |  | sendType: 1, | 
|---|
|  |  |  | longTask: 0, | 
|---|
|  |  |  | templatename: "", | 
|---|
|  |  |  | templateid: null, | 
|---|
|  |  |  | libtemplateid: null, | 
|---|
|  |  |  | kcb: | 
|---|
|  |  |  | "亲爱的患者-家属,我们是" + | 
|---|
|  |  |  | localStorage.getItem("orgname") + | 
|---|
|  |  |  | "的医护人员,为了更好地了解您的康复情况,请您抽一点宝贵时间,观看这份宣教资讯。", | 
|---|
|  |  |  | jsy: "生活上要劳逸结合,注意休息和营养,适当锻炼,戒烟限酒,保持心情舒畅,定期复诊。那本次宣教内容就到这里,祝您身体健康!", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | taskoptions: [ | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "1", | 
|---|
|  |  |  | label: "出院病人", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "4", | 
|---|
|  |  |  | label: "在院病人", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "2", | 
|---|
|  |  |  | 
|---|
|  |  |  | label: "体检病人", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | source: [ | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: 0, | 
|---|
|  |  |  | label: "所属患者", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: 1, | 
|---|
|  |  |  | label: "科室患者", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: 2, | 
|---|
|  |  |  | label: "病区患者", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | quote: false, | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | 
|---|
|  |  |  | created() { | 
|---|
|  |  |  | this.id = this.$route.query.id; | 
|---|
|  |  |  | this.form.type = this.$route.query.type; | 
|---|
|  |  |  | this.newadd = this.$route.query.newadd; | 
|---|
|  |  |  | this.belongWards = store.getters.belongWards; | 
|---|
|  |  |  | this.belongDepts = store.getters.belongDepts; | 
|---|
|  |  |  | this.form.typename = this.$route.query.typename; | 
|---|
|  |  |  | this.form.serviceType = Number(this.$route.query.serviceType); | 
|---|
|  |  |  | this.listDept(); | 
|---|
|  |  |  | // this.listDept(); | 
|---|
|  |  |  | this.Acquisitiontype(); | 
|---|
|  |  |  | this.Getdetails(); | 
|---|
|  |  |  | this.getheLibraryAssort(); | 
|---|
|  |  |  | 
|---|
|  |  |  | label: "微信小程序", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "8", | 
|---|
|  |  |  | label: "智能机器人", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // { | 
|---|
|  |  |  | //   value: "8", | 
|---|
|  |  |  | //   label: "智能机器人", | 
|---|
|  |  |  | // }, | 
|---|
|  |  |  | ]; | 
|---|
|  |  |  | } else if (this.form.serviceType == 8) { | 
|---|
|  |  |  | this.checkboxlist = [ | 
|---|
|  |  |  | 
|---|
|  |  |  | label: "微信小程序", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "8", | 
|---|
|  |  |  | label: "智能机器人", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // { | 
|---|
|  |  |  | //   value: "8", | 
|---|
|  |  |  | //   label: "智能机器人", | 
|---|
|  |  |  | // }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "9", | 
|---|
|  |  |  | label: "钉钉", | 
|---|
|  |  |  | 
|---|
|  |  |  | submitForm(formName) { | 
|---|
|  |  |  | this.form.preachform = this.checkList.join(","); | 
|---|
|  |  |  | // this.formatFn(1); | 
|---|
|  |  |  | if (!this.form.patTaskRelevances[0]) { | 
|---|
|  |  |  | if (!this.form.patTaskRelevances[0]&&this.form.longTask==0) { | 
|---|
|  |  |  | this.$modal.msgError("请选择病人"); | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (!this.form.templatename) { | 
|---|
|  |  |  | this.$modal.msgError("未选择模板"); | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | const filteredArray = this.variableList.filter( | 
|---|
|  |  |  | 
|---|
|  |  |  | this.form.isoperation = 2; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.form.isoperation = 1; | 
|---|
|  |  |  | this.form.sendState = 1; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (!this.form.type) { | 
|---|
|  |  |  | this.form.type = this.$route.query.type; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.form.leaveldeptcodes = store.getters.belongDepts.map( | 
|---|
|  |  |  | (obj) => obj.deptCode | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | this.form.leavehospitaldistrictcodes = store.getters.belongWards.map( | 
|---|
|  |  |  | (obj) => obj.districtCode | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | Editsingletask(this.form).then((res) => { | 
|---|
|  |  |  | if (res.code == 200) { | 
|---|
|  |  |  | if (this.form.taskid) { | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.$router.push({ | 
|---|
|  |  |  | path: "/followvisit/tasklist", | 
|---|
|  |  |  | query: { tasktopic: 4 }, | 
|---|
|  |  |  | query: { tasktopic: this.form.serviceType }, | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // ----------------------表格子组件事件 | 
|---|
|  |  |  | // 确认选择模版放入任务模版 | 
|---|
|  |  |  | // 选择模板并预览 | 
|---|
|  |  |  | selectfn(row, type) { | 
|---|
|  |  |  | // 模版情况下获取模版信息 | 
|---|
|  |  |  | this.libName = row.preachname; | 
|---|
|  |  |  | this.richText = null; | 
|---|
|  |  |  | this.htmlRichText = null; | 
|---|
|  |  |  | this.libId = row.id; | 
|---|
|  |  |  | console.log(row, "row"); | 
|---|
|  |  |  | this.Tasktemplate = row; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 设置当前模板类型 | 
|---|
|  |  |  | this.currentTemplateType = row.hetype || "1"; // 默认为宣教类型 | 
|---|
|  |  |  |  | 
|---|
|  |  |  | this.previewtf = true; | 
|---|
|  |  |  | this.previewid = row.svyid; | 
|---|
|  |  |  | console.log(this.questionList, "questionList"); | 
|---|
|  |  |  | // this.Variablehandling(row.svyLibScripts, 1); | 
|---|
|  |  |  | console.log(row.richText); | 
|---|
|  |  |  | axios | 
|---|
|  |  |  | .get(row.richText) | 
|---|
|  |  |  | .then((response) => { | 
|---|
|  |  |  | console.log(response.data, "数据"); // 输出获取到的文件内容 | 
|---|
|  |  |  | this.richText = response.data; | 
|---|
|  |  |  | this.richText = this.addStyleToImages(this.richText); | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | .catch((error) => { | 
|---|
|  |  |  | this.$modal.msgError("获取富文本失败"); | 
|---|
|  |  |  | console.error("Failed to fetch file:", error); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (this.currentTemplateType == "2") { | 
|---|
|  |  |  | // 如果是通知模板,获取纯文本内容 | 
|---|
|  |  |  | this.plainTextContent = row.preachcontent; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | // 其他类型模板获取富文本内容 | 
|---|
|  |  |  | axios | 
|---|
|  |  |  | .get(row.htmlRichText) | 
|---|
|  |  |  | .then((response) => { | 
|---|
|  |  |  | this.htmlRichText = response.data; | 
|---|
|  |  |  | this.htmlRichText = this.addStyleToImages(this.htmlRichText); | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | .catch((error) => { | 
|---|
|  |  |  | this.$modal.msgError("获取富文本失败"); | 
|---|
|  |  |  | console.error("Failed to fetch file:", error); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 预览模板 | 
|---|
|  |  |  | previewfnm() { | 
|---|
|  |  |  | getlibrarylist({ id: this.form.libtemplateid }).then((res) => { | 
|---|
|  |  |  | this.libName = res.rows[0].preachname; | 
|---|
|  |  |  | this.htmlRichText = null; | 
|---|
|  |  |  | this.libId = res.rows[0].id; | 
|---|
|  |  |  | this.Tasktemplate = res.rows[0]; | 
|---|
|  |  |  | this.previewtf = true; | 
|---|
|  |  |  | this.previewid = res.rows[0].svyid; | 
|---|
|  |  |  | this.currentTemplateType = res.rows[0].hetype || "1"; // 默认为宣教类型 | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (this.currentTemplateType == "2") { | 
|---|
|  |  |  | // 如果是通知模板,获取纯文本内容 | 
|---|
|  |  |  | this.plainTextContent = res.rows[0].preachcontent; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | // 其他类型模板获取富文本内容 | 
|---|
|  |  |  | axios | 
|---|
|  |  |  | .get(res.rows[0].htmlRichText) | 
|---|
|  |  |  | .then((response) => { | 
|---|
|  |  |  | this.htmlRichText = response.data; | 
|---|
|  |  |  | this.htmlRichText = this.addStyleToImages(this.htmlRichText); | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | .catch((error) => { | 
|---|
|  |  |  | this.$modal.msgError("获取富文本失败"); | 
|---|
|  |  |  | console.error("Failed to fetch file:", error); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | addStyleToImages(html) { | 
|---|
|  |  |  | return html.replace( | 
|---|
|  |  |  | 
|---|
|  |  |  | '<img$1style="width:100%;height:auto;"$3>' | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 处理问题层变量 | 
|---|
|  |  |  | // Variablehandling(arr, type) { | 
|---|
|  |  |  | //   let Variablist = []; | 
|---|
|  |  |  | //   if (type == 1) { | 
|---|
|  |  |  | //     console.log(arr); | 
|---|
|  |  |  | //     // 循环问题 | 
|---|
|  |  |  | //     arr.forEach((res) => { | 
|---|
|  |  |  | //       console.log(JSON.parse(res.otherdata), "ss"); | 
|---|
|  |  |  | //       // 循环选项 | 
|---|
|  |  |  | //       JSON.parse(res.otherdata).forEach((item) => { | 
|---|
|  |  |  | //         if (item.default != 1) { | 
|---|
|  |  |  | //           Variablist.push({ | 
|---|
|  |  |  | //             value: item.variate, | 
|---|
|  |  |  | //             fill: "", | 
|---|
|  |  |  | //             name: item.variatename, | 
|---|
|  |  |  | //           }); | 
|---|
|  |  |  | //         } | 
|---|
|  |  |  | //       }); | 
|---|
|  |  |  | //     }); | 
|---|
|  |  |  | //     console.log(Variablist, "Variablist"); | 
|---|
|  |  |  | //     const Aarr = Variablist.filter( | 
|---|
|  |  |  | //       (obj, index, self) => | 
|---|
|  |  |  | //         index === | 
|---|
|  |  |  | //         self.findIndex((t) => t.name === obj.name && t.value === obj.value) | 
|---|
|  |  |  | //     ); | 
|---|
|  |  |  | //     this.variableList = this.transitionList.concat(Aarr); | 
|---|
|  |  |  | //     // this.form.textParam = this.convertFormat2ToFormat1(this.variableList); | 
|---|
|  |  |  | //   } | 
|---|
|  |  |  | // }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 子任务二级弹框 | 
|---|
|  |  |  | handleAddpatient(row) { | 
|---|
|  |  |  | this.allpids = []; | 
|---|
|  |  |  | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | if (this.patientqueryParams.allhosp == 1) { | 
|---|
|  |  |  | this.tableLabelhz = [ | 
|---|
|  |  |  | { label: "序号", width: "", prop: "patid" }, | 
|---|
|  |  |  | { label: "患者名称", width: "", prop: "name" }, | 
|---|
|  |  |  | { label: "出院日期", width: "150", prop: "endtime" }, | 
|---|
|  |  |  | { label: "患者", width: "", prop: "name" }, | 
|---|
|  |  |  | { label: "身份证", width: "200", prop: "sfzh" }, | 
|---|
|  |  |  | { label: "性别", width: "", prop: "sex" }, | 
|---|
|  |  |  | { label: "年龄", width: "", prop: "age" }, | 
|---|
|  |  |  | { label: "主任医师", width: "", prop: "drname" }, | 
|---|
|  |  |  | { label: "就诊科室", width: "", prop: "deptName" }, | 
|---|
|  |  |  | { label: "入院日期", width: "", prop: "inhosptime" }, | 
|---|
|  |  |  | { label: "创建人", width: "", prop: "createBy" }, | 
|---|
|  |  |  | { label: "责任护士", width: "", prop: "nurseName" }, | 
|---|
|  |  |  | { label: "医生", width: "", prop: "drname" }, | 
|---|
|  |  |  | { label: "科室", width: "180", prop: "dept" }, | 
|---|
|  |  |  | { label: "病区", width: "150", prop: "leavehospitaldistrictname" }, | 
|---|
|  |  |  | ]; | 
|---|
|  |  |  | } else if (this.patientqueryParams.allhosp == 2) { | 
|---|
|  |  |  | this.tableLabelhz = [ | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (this.allpids[0]) { | 
|---|
|  |  |  | this.patientqueryParams.pids = this.allpids; | 
|---|
|  |  |  | console.log(this.patientqueryParams.pids); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.patientqueryParams.pids = null; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | // 类型判断 | 
|---|
|  |  |  | if (this.patientqueryParams.allhosp == 1) { | 
|---|
|  |  |  | this.patientqueryParams.cry = 1; | 
|---|
|  |  |  | } else if (this.patientqueryParams.allhosp == 4) { | 
|---|
|  |  |  | this.patientqueryParams.cry = 0; | 
|---|
|  |  |  | this.patientqueryParams.allhosp = "1"; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (this.patientqueryParams.searchscope == 1) { | 
|---|
|  |  |  | this.patientqueryParams.leaveldeptcodes = store.getters.belongDepts.map( | 
|---|
|  |  |  | (obj) => obj.deptCode | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | this.patientqueryParams.leavehospitaldistrictcodes = []; | 
|---|
|  |  |  | } else if (this.patientqueryParams.searchscope == 2) { | 
|---|
|  |  |  | this.patientqueryParams.leavehospitaldistrictcodes = | 
|---|
|  |  |  | store.getters.belongWards.map((obj) => obj.districtCode); | 
|---|
|  |  |  | this.patientqueryParams.leaveldeptcodes = []; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.patientqueryParams.leaveldeptcodes = store.getters.belongDepts.map( | 
|---|
|  |  |  | (obj) => obj.deptCode | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | this.patientqueryParams.leavehospitaldistrictcodes = | 
|---|
|  |  |  | store.getters.belongWards.map((obj) => obj.districtCode); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | getTaskpatient(this.patientqueryParams).then((response) => { | 
|---|
|  |  |  | 
|---|
|  |  |  | handleExport() {}, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 选择患者表数据 | 
|---|
|  |  |  | handleSelectionChange(selection) { | 
|---|
|  |  |  | handleSelectionChange(selection, type) { | 
|---|
|  |  |  | console.log("多选患者"); | 
|---|
|  |  |  | this.SelectPatientslist = selection; | 
|---|
|  |  |  | this.multiple = !selection.length; | 
|---|
|  |  |  | 
|---|
|  |  |  | if (!isExist) { | 
|---|
|  |  |  | item.isoperation = 1; | 
|---|
|  |  |  | item.patid = item.id; | 
|---|
|  |  |  | item.hospType = this.patientqueryParams.allhosp; | 
|---|
|  |  |  | if (item.idcardno) { | 
|---|
|  |  |  | item.sfzh = item.idcardno; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (type) { | 
|---|
|  |  |  | item.hospType = type; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | item.hospType = this.patientqueryParams.allhosp; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.overallCase.push(item); | 
|---|
|  |  |  | this.form.patTaskRelevances.push(item); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | resetForm(formName) { | 
|---|
|  |  |  | this.$refs[formName].resetFields(); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 预览模版 | 
|---|
|  |  |  | // 预览模板 | 
|---|
|  |  |  | PreviewTemplate() {}, | 
|---|
|  |  |  | Acknowledgereference() { | 
|---|
|  |  |  | this.quote = true; | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 获取详情 | 
|---|
|  |  |  | Getdetails() { | 
|---|
|  |  |  | this.form = { | 
|---|
|  |  |  | patTaskRelevances: [], | 
|---|
|  |  |  | sendType: 1, | 
|---|
|  |  |  | templatename: "", | 
|---|
|  |  |  | templateid: null, | 
|---|
|  |  |  | libtemplateid: null, | 
|---|
|  |  |  | serviceType: Number(this.$route.query.serviceType), | 
|---|
|  |  |  | kcb: | 
|---|
|  |  |  | "亲爱的患者-家属,我们是" + | 
|---|
|  |  |  | localStorage.getItem("orgname") + | 
|---|
|  |  |  | "的医护人员,为了更好地了解您的康复情况,请您抽一点宝贵时间,观看这份宣教资讯。", | 
|---|
|  |  |  | jsy: "生活上要劳逸结合,注意休息和营养,适当锻炼,戒烟限酒,保持心情舒畅,定期复诊。那本次回访就到这里,祝您身体健康!", | 
|---|
|  |  |  | }; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (this.id) { | 
|---|
|  |  |  | getTaskInfo({ taskid: this.id }).then((res) => { | 
|---|
|  |  |  | let filteredArray = ""; | 
|---|
|  |  |  | 
|---|
|  |  |  | : []; | 
|---|
|  |  |  | this.overallCase = this.form.patTaskRelevances.concat(); | 
|---|
|  |  |  | this.checkList = this.form.preachform.split(","); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | console.log(this.form.showDate, "this.form"); | 
|---|
|  |  |  | this.daytime = this.form.showDate.split(","); | 
|---|
|  |  |  | if (this.form.daytime) this.daytime = this.form.showDate.split(","); | 
|---|
|  |  |  | console.log(this.newadd, "依照"); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (this.form.showTimeMorn) { | 
|---|
|  |  |  | if (this.form.sendType == 3) { | 
|---|
|  |  |  | this.time4 = this.form.showTimeMorn; | 
|---|
|  |  |  | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$modal.msgError(res.code); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (this.newadd) { | 
|---|
|  |  |  | this.neWaddfn(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 依照新增时处理 | 
|---|
|  |  |  | neWaddfn() { | 
|---|
|  |  |  | this.id = null; | 
|---|
|  |  |  | // this.form.taskName = ""; | 
|---|
|  |  |  | this.form.taskid = null; | 
|---|
|  |  |  | console.log("依照"); | 
|---|
|  |  |  | this.overallCase = []; | 
|---|
|  |  |  | this.form.patTaskRelevances = []; | 
|---|
|  |  |  | this.daytime = []; //日期 | 
|---|
|  |  |  | this.applydaytime = []; //计算日期 | 
|---|
|  |  |  | this.time1 = ""; //上午时间段 | 
|---|
|  |  |  | this.time2 = ""; //下午时间段 | 
|---|
|  |  |  | this.time3 = ""; //晚上时间段 | 
|---|
|  |  |  | this.time4 = ""; //晚上时间段 | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | getheLibraryAssort() { | 
|---|
|  |  |  | // 宣教分类 | 
|---|
|  |  |  | 
|---|
|  |  |  | if (this.time3) this.form.showTimeNight = this.time3.join(","); | 
|---|
|  |  |  | console.log(combinedData, "combinedData"); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 查看模版 | 
|---|
|  |  |  | // 查看模板 | 
|---|
|  |  |  | previewGo() { | 
|---|
|  |  |  | this.$router.push({ | 
|---|
|  |  |  | path: "/knowledge/tpuconfigurat/", | 
|---|
|  |  |  | 
|---|
|  |  |  | this.form.templateid = response.data; | 
|---|
|  |  |  | this.form.libtemplateid = this.libId; | 
|---|
|  |  |  | this.form.templatename = this.libName; | 
|---|
|  |  |  | this.$modal.msgSuccess("选择模版成功"); | 
|---|
|  |  |  | this.$modal.msgSuccess("选择模板成功"); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 处理服务形式 | 
|---|
|  |  |  | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | this.checkList = list; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | /** 导入按钮操作 */ | 
|---|
|  |  |  | handleImport() { | 
|---|
|  |  |  | this.upload.title = "用户导入"; | 
|---|
|  |  |  | this.upload.open = true; | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | handleFileUploadProgress(event, file, fileList) { | 
|---|
|  |  |  | this.upload.isUploading = true; | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 文件上传成功处理 | 
|---|
|  |  |  | handleFileSuccess(response, file, fileList) { | 
|---|
|  |  |  | this.upload.isUploading = false; | 
|---|
|  |  |  | this.uploadingData = response.rows; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | this.$refs.upload.clearFiles(); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 提交上传文件 | 
|---|
|  |  |  | submitFileForm() { | 
|---|
|  |  |  | // 上传 | 
|---|
|  |  |  | if (this.dractive == 1) { | 
|---|
|  |  |  | this.$refs.upload.submit(); | 
|---|
|  |  |  | this.dractive++; | 
|---|
|  |  |  | } else if (this.dractive == 2) { | 
|---|
|  |  |  | this.handleSelectionChange(this.uploadingData, 4); | 
|---|
|  |  |  | this.upload.open = false; | 
|---|
|  |  |  | this.dractive = 1; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** 下载模板操作 */ | 
|---|
|  |  |  | importTemplate() { | 
|---|
|  |  |  | this.download( | 
|---|
|  |  |  | "smartor/import/getImportPatTemplate", | 
|---|
|  |  |  | {}, | 
|---|
|  |  |  | `user_template_${new Date().getTime()}.xlsx` | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | submitclose() { | 
|---|
|  |  |  | this.upload.open = false; | 
|---|
|  |  |  | this.dractive = 1; | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | /* 新增样式 */ | 
|---|
|  |  |  | .preview-left { | 
|---|
|  |  |  | padding: 20px; | 
|---|
|  |  |  | max-height: 70vh; | 
|---|
|  |  |  | overflow-y: auto; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /* 纯文本内容样式 */ | 
|---|
|  |  |  | .plain-text-content { | 
|---|
|  |  |  | white-space: pre-wrap; | 
|---|
|  |  |  | font-size: 16px; | 
|---|
|  |  |  | line-height: 1.6; | 
|---|
|  |  |  | padding: 15px; | 
|---|
|  |  |  | background: #f9f9f9; | 
|---|
|  |  |  | border-radius: 4px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .download { | 
|---|
|  |  |  | text-align: center; | 
|---|
|  |  |  | .el-upload__tip { | 
|---|
|  |  |  | font-size: 23px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .el-upload__text { | 
|---|
|  |  |  | font-size: 23px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .uploading { | 
|---|
|  |  |  | margin-top: 20px; | 
|---|
|  |  |  | margin: 20px; | 
|---|
|  |  |  | padding: 30px; | 
|---|
|  |  |  | background: #ffffff; | 
|---|
|  |  |  | border: 1px solid #dcdfe6; | 
|---|
|  |  |  | -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), | 
|---|
|  |  |  | 0 0 6px 0 rgba(0, 0, 0, 0.04); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .drexamine { | 
|---|
|  |  |  | // display: flex; | 
|---|
|  |  |  | align-items: center; | 
|---|
|  |  |  | justify-content: center; | 
|---|
|  |  |  | padding: 20px; | 
|---|
|  |  |  | background: #daeaf5; | 
|---|
|  |  |  | img { | 
|---|
|  |  |  | width: 50px; | 
|---|
|  |  |  | height: 50px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .button-textsc { | 
|---|
|  |  |  | color: #3664D9; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .button-textxg { | 
|---|
|  |  |  | color: #de7897; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | ::v-deep .addtopic-input { | 
|---|
|  |  |  | input { | 
|---|
|  |  |  | background: #02a7f0; | 
|---|