|  |  |  | 
|---|
|  |  |  | <el-step | 
|---|
|  |  |  | icon="el-icon-edit" | 
|---|
|  |  |  | title="基础信息" | 
|---|
|  |  |  | description="选择模版、形式等基础信息" | 
|---|
|  |  |  | description="选择模板、形式等基础信息" | 
|---|
|  |  |  | ></el-step> | 
|---|
|  |  |  | <el-step | 
|---|
|  |  |  | icon="el-icon-user" | 
|---|
|  |  |  | title="任务主体" | 
|---|
|  |  |  | description="在本部选择服务患者" | 
|---|
|  |  |  | ></el-step> | 
|---|
|  |  |  | <el-step icon="el-icon-user" title="模版确认"></el-step> | 
|---|
|  |  |  | </el-steps> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | 
|---|
|  |  |  | <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"> | 
|---|
|  |  |  | <!-- 基础信息 --> | 
|---|
|  |  |  | 
|---|
|  |  |  | <div>基础信息</div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="jic-value"> | 
|---|
|  |  |  | <el-form ref="form" :model="form" label-width="105px"> | 
|---|
|  |  |  | <el-form | 
|---|
|  |  |  | ref="form" | 
|---|
|  |  |  | :model="form" | 
|---|
|  |  |  | :rules="rules" | 
|---|
|  |  |  | label-width="125px" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-row :gutter="20"> | 
|---|
|  |  |  | <el-col :span="12" | 
|---|
|  |  |  | ><el-form-item label="任务名称"> | 
|---|
|  |  |  | ><el-form-item label="任务名称" prop="taskName"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | style="width: 220px" | 
|---|
|  |  |  | v-model="form.taskName" | 
|---|
|  |  |  | placeholder="请输入任务名称" | 
|---|
|  |  |  | /> </el-form-item | 
|---|
|  |  |  | ></el-col> | 
|---|
|  |  |  | <el-col :span="8" | 
|---|
|  |  |  | ><el-form-item label="模版名称"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | style="width: 220px" | 
|---|
|  |  |  | :disabled="true" | 
|---|
|  |  |  | v-model="form.templatename" | 
|---|
|  |  |  | placeholder="请在下列选择" | 
|---|
|  |  |  | /> </el-form-item | 
|---|
|  |  |  | <el-col :span="12" | 
|---|
|  |  |  | ><el-form-item label="任务类型"> | 
|---|
|  |  |  | <el-select | 
|---|
|  |  |  | v-model="serviceType" | 
|---|
|  |  |  | placeholder="请选择新增类型" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option | 
|---|
|  |  |  | v-for="item in tasktypes" | 
|---|
|  |  |  | :key="item.value" | 
|---|
|  |  |  | :label="item.label" | 
|---|
|  |  |  | :value="item.value" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-option> | 
|---|
|  |  |  | </el-select> </el-form-item | 
|---|
|  |  |  | ></el-col> | 
|---|
|  |  |  | <el-col :span="4"> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | type="primary" | 
|---|
|  |  |  | icon="el-icon-edit" | 
|---|
|  |  |  | circle | 
|---|
|  |  |  | ></el-button> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-form-item label="任务描述"> | 
|---|
|  |  |  | <el-form-item label="任务描述" prop="taskDesc"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | type="textarea" | 
|---|
|  |  |  | v-model="form.taskDesc" | 
|---|
|  |  |  | placeholder="请输入任务描述" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label="发送设置:" v-if="currenttype != 2"> | 
|---|
|  |  |  | <el-radio-group v-model="form.sendType"> | 
|---|
|  |  |  | <el-radio :label="1">时间段发送</el-radio> | 
|---|
|  |  |  | <el-radio :label="3">即刻发送</el-radio> | 
|---|
|  |  |  | <!-- <el-form-item label="服务形式"> | 
|---|
|  |  |  | <el-radio-group | 
|---|
|  |  |  | v-model="checkList" | 
|---|
|  |  |  | @change="handleCheckedCitiesChange" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-radio | 
|---|
|  |  |  | v-for="(item, index) in checkboxlist" | 
|---|
|  |  |  | :key="index" | 
|---|
|  |  |  | :label="item.value" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | {{ item.label }}</el-radio | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-radio-group> | 
|---|
|  |  |  | </el-form-item> --> | 
|---|
|  |  |  | <el-form-item label="服务形式"> | 
|---|
|  |  |  | <SortCheckbox | 
|---|
|  |  |  | v-model="checkList" | 
|---|
|  |  |  | :options="checkboxlist" | 
|---|
|  |  |  | :initialselectedOrder="selectedOrder" | 
|---|
|  |  |  | value-key="value" | 
|---|
|  |  |  | label-key="label" | 
|---|
|  |  |  | @change="checkSelectionChange" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <!-- <div class="xinz-infs"> | 
|---|
|  |  |  | <el-form-item label="服务执行顺序" prop="daytime"> | 
|---|
|  |  |  | <el-tag | 
|---|
|  |  |  | :key="tag.label" | 
|---|
|  |  |  | type="success" | 
|---|
|  |  |  | v-for="(tag, index) in foncheckList" | 
|---|
|  |  |  | closable | 
|---|
|  |  |  | :disable-transitions="false" | 
|---|
|  |  |  | @close="handleClosetag(tag)" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | ({{ index + 1 }}){{ tag.label }} | 
|---|
|  |  |  | </el-tag> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </div> --> | 
|---|
|  |  |  | <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-form-item label="发送日期:" v-if="form.sendType == 1"> | 
|---|
|  |  |  | <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="执行设置" | 
|---|
|  |  |  | prop="sendType" | 
|---|
|  |  |  | 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 && !form.longTask" | 
|---|
|  |  |  | prop="daytime" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-date-picker | 
|---|
|  |  |  | v-model="daytime" | 
|---|
|  |  |  | @change="changeTimeday" | 
|---|
|  |  |  | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-date-picker> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label="发送时间段:" v-if="form.sendType == 1"> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-form-item | 
|---|
|  |  |  | label="执行时间点" | 
|---|
|  |  |  | v-if="form.sendType == 3 && !form.longTask" | 
|---|
|  |  |  | prop="daytime" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <div style="display: flex"> | 
|---|
|  |  |  | <div style="margin-right: 10px"> | 
|---|
|  |  |  | <span style="font-size: 18px; margin-right: 10px" | 
|---|
|  |  |  | >时间段一</span | 
|---|
|  |  |  | <el-date-picker | 
|---|
|  |  |  | v-model="time4" | 
|---|
|  |  |  | value-format="yyyy-MM-dd HH:mm:ss" | 
|---|
|  |  |  | @change="Totaldate" | 
|---|
|  |  |  | type="datetime" | 
|---|
|  |  |  | placeholder="选择日期时间" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-date-picker> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-form-item | 
|---|
|  |  |  | label="执行时间段" | 
|---|
|  |  |  | v-if="form.sendType == 1 && !form.longTask" | 
|---|
|  |  |  | prop="daytime" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <div style="display: flex"> | 
|---|
|  |  |  | <div style="margin-right: 10px"> | 
|---|
|  |  |  | <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-form-item label="服务形式"> | 
|---|
|  |  |  | <el-checkbox-group v-model="checkList"> | 
|---|
|  |  |  | <el-checkbox | 
|---|
|  |  |  | v-for="(item, index) in checkboxlist" | 
|---|
|  |  |  | :key="index" | 
|---|
|  |  |  | :label="item" | 
|---|
|  |  |  | ></el-checkbox> | 
|---|
|  |  |  | </el-checkbox-group> | 
|---|
|  |  |  | <el-form-item label="任务关联" prop="longTask"> | 
|---|
|  |  |  | <el-radio-group v-model="form.appltype"> | 
|---|
|  |  |  | <el-radio label="1">科室关联</el-radio> | 
|---|
|  |  |  | <el-radio label="2">病区关联</el-radio> | 
|---|
|  |  |  | <el-radio label="3">疾病关联</el-radio> | 
|---|
|  |  |  | <el-radio label="4">手术关联</el-radio> | 
|---|
|  |  |  | </el-radio-group> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-row v-if="form.appltype == 1"> | 
|---|
|  |  |  | <el-col :span="20" | 
|---|
|  |  |  | ><el-form-item label="适用科室" prop="region"> | 
|---|
|  |  |  | <el-select | 
|---|
|  |  |  | v-model="deptcodesWards" | 
|---|
|  |  |  | @remove-tag="removetag" | 
|---|
|  |  |  | style="width: 400px" | 
|---|
|  |  |  | size="medium" | 
|---|
|  |  |  | multiple | 
|---|
|  |  |  | 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 v-if="form.appltype == 2"> | 
|---|
|  |  |  | <el-col :span="20" | 
|---|
|  |  |  | ><el-form-item label="适用病区" prop="region"> | 
|---|
|  |  |  | <el-select | 
|---|
|  |  |  | v-model="leavehospitaldistrictcodes" | 
|---|
|  |  |  | style="width: 400px" | 
|---|
|  |  |  | @remove-tag="removehpsp" | 
|---|
|  |  |  | size="medium" | 
|---|
|  |  |  | multiple | 
|---|
|  |  |  | 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-row v-if="form.appltype == 3"> | 
|---|
|  |  |  | <div class="xinz-infs"> | 
|---|
|  |  |  | <el-form-item> | 
|---|
|  |  |  | <template #label> | 
|---|
|  |  |  | <el-tooltip | 
|---|
|  |  |  | class="item" | 
|---|
|  |  |  | effect="light" | 
|---|
|  |  |  | content="选择好适用疾病后,可以方便您通过疾病诊断查找到对应的病人!" | 
|---|
|  |  |  | placement="top-start" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <i class="el-icon-warning-outline"></i> | 
|---|
|  |  |  | </el-tooltip> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | <div style="margin-bottom: 10px"> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | type="warning" | 
|---|
|  |  |  | @click="$refs.child.handleAddpatient()" | 
|---|
|  |  |  | >添加疾病诊断</el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <el-tag | 
|---|
|  |  |  | v-for="tag in diagglist" | 
|---|
|  |  |  | :key="tag.icdcode" | 
|---|
|  |  |  | @close="removediagg(tag.icd10code)" | 
|---|
|  |  |  | type="warning" | 
|---|
|  |  |  | closable | 
|---|
|  |  |  | :disable-transitions="false" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | {{ tag.icdname }} | 
|---|
|  |  |  | </el-tag> | 
|---|
|  |  |  | <!-- <el-tag v-if="hasMore" type="info">+{{ remaining }} more</el-tag> --> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <el-row v-if="form.appltype == 4"> | 
|---|
|  |  |  | <el-col :span="20" | 
|---|
|  |  |  | ><el-form-item label="适用手术" prop="region"> | 
|---|
|  |  |  | <el-select | 
|---|
|  |  |  | v-model="operationcodes" | 
|---|
|  |  |  | style="width: 400px" | 
|---|
|  |  |  | @remove-tag="removeopera" | 
|---|
|  |  |  | :remote-method="remoteopcode" | 
|---|
|  |  |  | size="medium" | 
|---|
|  |  |  | multiple | 
|---|
|  |  |  | filterable | 
|---|
|  |  |  | remote | 
|---|
|  |  |  | placeholder="请选择手术" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option | 
|---|
|  |  |  | class="ruleFormaa" | 
|---|
|  |  |  | v-for="item in baseoperaList" | 
|---|
|  |  |  | :key="item.icdcode" | 
|---|
|  |  |  | :label="item.icdname" | 
|---|
|  |  |  | :value="item.icdcode" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-option> | 
|---|
|  |  |  | </el-select> </el-form-item | 
|---|
|  |  |  | ></el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <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> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="examine-jic"> | 
|---|
|  |  |  | <div class="headline"> | 
|---|
|  |  |  | <div>{{ title }}</div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="examine-jic"> | 
|---|
|  |  |  | <div class="jic-value"> | 
|---|
|  |  |  | <el-row :gutter="20"> | 
|---|
|  |  |  | <!--用户数据--> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-form | 
|---|
|  |  |  | :model="topqueryParams" | 
|---|
|  |  |  | ref="queryForm" | 
|---|
|  |  |  | size="small" | 
|---|
|  |  |  | :inline="true" | 
|---|
|  |  |  | v-show="showSearch" | 
|---|
|  |  |  | label-width="98px" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-form-item | 
|---|
|  |  |  | label="宣教主题" | 
|---|
|  |  |  | v-if="currenttype == 1 || currenttype == 8" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-input v-model="topqueryParams.name"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item | 
|---|
|  |  |  | label="随访名称" | 
|---|
|  |  |  | <div>任务使用模板</div> | 
|---|
|  |  |  | <div style="margin-left: 20px"> | 
|---|
|  |  |  | <el-form ref="forms"> | 
|---|
|  |  |  | <el-form-item label=""> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | style="width: 300px" | 
|---|
|  |  |  | :disabled="true" | 
|---|
|  |  |  | v-model="form.templatename" | 
|---|
|  |  |  | placeholder="请点击右侧选择" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | v-if=" | 
|---|
|  |  |  | currenttype == 2 || currenttype == 3 || currenttype == 7 | 
|---|
|  |  |  | (form.templateid && form.sendState == 1) || | 
|---|
|  |  |  | !form.templateid | 
|---|
|  |  |  | " | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | v-model="topqueryParams.name" | 
|---|
|  |  |  | ></el-input> </el-form-item | 
|---|
|  |  |  | ><el-form-item | 
|---|
|  |  |  | label="通知名称" | 
|---|
|  |  |  | v-if="currenttype == 4 || currenttype == 5" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | v-model="topqueryParams.name" | 
|---|
|  |  |  | ></el-input> </el-form-item | 
|---|
|  |  |  | ><el-form-item label="体检套餐" v-if="currenttype == 5"> | 
|---|
|  |  |  | <el-input v-model="topqueryParams.name"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label="问卷主题" v-if="currenttype == 6"> | 
|---|
|  |  |  | <el-input v-model="topqueryParams.name"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label="适用疾病" v-if="currenttype != 5"> | 
|---|
|  |  |  | <el-input v-model="topqueryParams.name"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | style="margin-left: 10px" | 
|---|
|  |  |  | type="primary" | 
|---|
|  |  |  | icon="el-icon-edit" | 
|---|
|  |  |  | @click="drawermb = true" | 
|---|
|  |  |  | circle | 
|---|
|  |  |  | ></el-button> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-form-item | 
|---|
|  |  |  | label="宣教类型" | 
|---|
|  |  |  | prop="status" | 
|---|
|  |  |  | v-if="currenttype == 1 || currenttype == 8" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-select | 
|---|
|  |  |  | v-model="topqueryParams.topic" | 
|---|
|  |  |  | placeholder="请选择" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option | 
|---|
|  |  |  | v-for="item in taskoptions" | 
|---|
|  |  |  | :key="item.value" | 
|---|
|  |  |  | :label="item.label" | 
|---|
|  |  |  | :value="item.value" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-option> | 
|---|
|  |  |  | </el-select> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item | 
|---|
|  |  |  | label="通知类型" | 
|---|
|  |  |  | prop="status" | 
|---|
|  |  |  | v-if="currenttype == 4 || currenttype == 5" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-select | 
|---|
|  |  |  | v-model="topqueryParams.topic" | 
|---|
|  |  |  | placeholder="请选择" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option | 
|---|
|  |  |  | v-for="item in taskoptions" | 
|---|
|  |  |  | :key="item.value" | 
|---|
|  |  |  | :label="item.label" | 
|---|
|  |  |  | :value="item.value" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-option> | 
|---|
|  |  |  | </el-select> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item | 
|---|
|  |  |  | label="随访类型" | 
|---|
|  |  |  | prop="status" | 
|---|
|  |  |  | v-if=" | 
|---|
|  |  |  | currenttype == 2 || currenttype == 3 || currenttype == 7 | 
|---|
|  |  |  | " | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-select | 
|---|
|  |  |  | v-model="topqueryParams.topic" | 
|---|
|  |  |  | placeholder="请选择" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option | 
|---|
|  |  |  | v-for="item in taskoptions" | 
|---|
|  |  |  | :key="item.value" | 
|---|
|  |  |  | :label="item.label" | 
|---|
|  |  |  | :value="item.value" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-option> | 
|---|
|  |  |  | </el-select> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item | 
|---|
|  |  |  | label="问卷类型" | 
|---|
|  |  |  | prop="status" | 
|---|
|  |  |  | v-if="currenttype == 6" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-select | 
|---|
|  |  |  | v-model="topqueryParams.topic" | 
|---|
|  |  |  | placeholder="请选择" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option | 
|---|
|  |  |  | v-for="item in taskoptions" | 
|---|
|  |  |  | :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.topica" | 
|---|
|  |  |  | placeholder="请选择" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option | 
|---|
|  |  |  | v-for="item in taskoptions" | 
|---|
|  |  |  | :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.topicd" | 
|---|
|  |  |  | 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> | 
|---|
|  |  |  | <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> | 
|---|
|  |  |  | <el-divider></el-divider> | 
|---|
|  |  |  | <!-- 选择模版列表 --> | 
|---|
|  |  |  | <SFtable | 
|---|
|  |  |  | @selectfn="selectfn" | 
|---|
|  |  |  | :currentList="userList" | 
|---|
|  |  |  | :tableLabel="tableLabel" | 
|---|
|  |  |  | :controlsc="false" | 
|---|
|  |  |  | :multiplechoice="false" | 
|---|
|  |  |  | :typeinfo="1" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | <pagination | 
|---|
|  |  |  | v-show="total > 0" | 
|---|
|  |  |  | :total="total" | 
|---|
|  |  |  | :page.sync="topqueryParams.pageNum" | 
|---|
|  |  |  | :limit.sync="topqueryParams.pageSize" | 
|---|
|  |  |  | @pagination="Acquisitiontype" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | v-if="form.templateid" | 
|---|
|  |  |  | type="success" | 
|---|
|  |  |  | icon="el-icon-search" | 
|---|
|  |  |  | @click="previewfnmb()" | 
|---|
|  |  |  | circle | 
|---|
|  |  |  | ></el-button> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-form> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <el-button type="success" @click="nextstep('ruleForm')">{{ | 
|---|
|  |  |  | quote ? "立即创建" : "任务详情配置" | 
|---|
|  |  |  | }}</el-button> | 
|---|
|  |  |  | <el-button @click="resetForm('ruleForm')">重置</el-button> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!-- 任务详情 --> | 
|---|
|  |  |  | <div v-if="Editprogress == 2"> | 
|---|
|  |  |  | <el-alert title="在本阶段选择宣教病人" type="success" effect="dark"> | 
|---|
|  |  |  | </el-alert> | 
|---|
|  |  |  | <div class="leftvlue-jbxx"> | 
|---|
|  |  |  | <div class="examine-jic"> | 
|---|
|  |  |  | <div class="headline"> | 
|---|
|  |  |  | <div>变量匹配量参</div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="examine-jic"> | 
|---|
|  |  |  | <div class="jic-value"> | 
|---|
|  |  |  | <div style="margin-bottom: 10px">模板中使用的变量:</div> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-row :gutter="20"> | 
|---|
|  |  |  | <el-table :data="variableList" style="width: 100%"> | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <el-button type="success" @click="nextstep('ruleForm')">{{ | 
|---|
|  |  |  | quote ? "立即创建" : "任务详情配置" | 
|---|
|  |  |  | }}</el-button> | 
|---|
|  |  |  | <!-- <el-button @click="resetForm('ruleForm')">重置</el-button> --> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <!-- 任务详情 --> | 
|---|
|  |  |  | <div v-if="Editprogress == 2"> | 
|---|
|  |  |  | <el-alert title="在本阶段选择病人" type="success" effect="dark"> | 
|---|
|  |  |  | </el-alert> | 
|---|
|  |  |  | <div class="leftvlue-jbxx"> | 
|---|
|  |  |  | <div class="examine-jic"> | 
|---|
|  |  |  | <div class="headline"> | 
|---|
|  |  |  | <div>患者列表</div> | 
|---|
|  |  |  | 
|---|
|  |  |  | <div class="examine-jic"> | 
|---|
|  |  |  | <div class="jic-value"> | 
|---|
|  |  |  | <el-row :gutter="20"> | 
|---|
|  |  |  | <!--用户数据--> | 
|---|
|  |  |  | <el-form | 
|---|
|  |  |  | :model="topqueryParams" | 
|---|
|  |  |  | ref="queryForm" | 
|---|
|  |  |  | size="small" | 
|---|
|  |  |  | :inline="true" | 
|---|
|  |  |  | v-show="showSearch" | 
|---|
|  |  |  | label-width="98px" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-form-item label="患者名称"> | 
|---|
|  |  |  | <el-input v-model="topqueryParams.name"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-form-item label="患者范围" prop="status"> | 
|---|
|  |  |  | <el-select | 
|---|
|  |  |  | v-model="topqueryParams.topic" | 
|---|
|  |  |  | placeholder="请选择" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option | 
|---|
|  |  |  | v-for="item in taskoptions" | 
|---|
|  |  |  | :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.topic" | 
|---|
|  |  |  | 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.topic" | 
|---|
|  |  |  | 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="患者电话"> | 
|---|
|  |  |  | <el-input v-model="topqueryParams.name"></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-button | 
|---|
|  |  |  | icon="el-icon-upload2" | 
|---|
|  |  |  | size="medium" | 
|---|
|  |  |  | type="warning" | 
|---|
|  |  |  | >当前患者一键发送</el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-form> | 
|---|
|  |  |  | <el-divider></el-divider> | 
|---|
|  |  |  | <el-row :gutter="10" class="mb8"> | 
|---|
|  |  |  | <el-col :span="1.5"> | 
|---|
|  |  |  | <el-select | 
|---|
|  |  |  | 
|---|
|  |  |  | </el-option> | 
|---|
|  |  |  | </el-select> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-col :span="1.5"> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | type="primary" | 
|---|
|  |  |  | 
|---|
|  |  |  | icon="el-icon-plus" | 
|---|
|  |  |  | size="medium" | 
|---|
|  |  |  | :disabled="!patientqueryParams.allhosp" | 
|---|
|  |  |  | @click="handleAddpatient" | 
|---|
|  |  |  | >新增</el-button | 
|---|
|  |  |  | @click="handleQuery" | 
|---|
|  |  |  | >添加患者</el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-col :span="1.5"> | 
|---|
|  |  |  | <!-- <el-col :span="1.5"> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | type="danger" | 
|---|
|  |  |  | plain | 
|---|
|  |  |  | 
|---|
|  |  |  | @click="handleDelete" | 
|---|
|  |  |  | >删除</el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | </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" | 
|---|
|  |  |  | :controlxz="false" | 
|---|
|  |  |  | :typeinfo="2" | 
|---|
|  |  |  | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <el-button type="primary" @click="laststep()">上一步</el-button> | 
|---|
|  |  |  | <el-button type="success" @click="submitForm('ruleForm')">{{ | 
|---|
|  |  |  | quote ? "立即创建" : "确认任务配置" | 
|---|
|  |  |  | }}</el-button> | 
|---|
|  |  |  | <el-button @click="resetForm('ruleForm')">重置</el-button> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | :loading="submitLoading" | 
|---|
|  |  |  | type="success" | 
|---|
|  |  |  | @click="submitForm('11')" | 
|---|
|  |  |  | >{{ quote ? "立即创建" : "确认任务配置" }}</el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <!-- <el-button @click="resetForm('ruleForm')">重置</el-button> --> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <!-- 添加患者 --> | 
|---|
|  |  |  | <el-dialog | 
|---|
|  |  |  | title="添加派发患者" | 
|---|
|  |  |  | title="选择患者" | 
|---|
|  |  |  | :visible.sync="dialogVisiblepatient" | 
|---|
|  |  |  | width="70%" | 
|---|
|  |  |  | :before-close="handleClosehz" | 
|---|
|  |  |  | :close-on-click-modal="false" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <div class="examine-jic"> | 
|---|
|  |  |  | <div class="jic-value"> | 
|---|
|  |  |  | 
|---|
|  |  |  | 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.drname" | 
|---|
|  |  |  | @keyup.enter.native="handleQuery" | 
|---|
|  |  |  | ></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-form-item label="就诊科室" prop="status"> | 
|---|
|  |  |  | <el-select | 
|---|
|  |  |  | v-model="patientqueryParams.topic" | 
|---|
|  |  |  | placeholder="请选择" | 
|---|
|  |  |  | <el-form-item label="患者:"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | v-model="patientqueryParams.name" | 
|---|
|  |  |  | @keyup.enter.native="handleQuery" | 
|---|
|  |  |  | ></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <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%"> | 
|---|
|  |  |  | <div class="preview-left"> | 
|---|
|  |  |  | <!-- 单选 --> | 
|---|
|  |  |  | <div | 
|---|
|  |  |  | class="topic-dev" | 
|---|
|  |  |  | v-for="(item, index) in questionList" | 
|---|
|  |  |  | :key="item.aaa" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <div class="dev-text"> | 
|---|
|  |  |  | {{ index + 1 }}、<span>{{ item.questionText }}</span> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <!-- 模板预览 --> | 
|---|
|  |  |  | <el-dialog title="模板预览" :visible.sync="previewtf" width="70%"> | 
|---|
|  |  |  | <el-tabs type="border-card"> | 
|---|
|  |  |  | <el-tab-pane label="模板基础数据" | 
|---|
|  |  |  | ><div class="preview-left"> | 
|---|
|  |  |  | <el-form :model="objyl" label-width="100px" class="demo-objyl"> | 
|---|
|  |  |  | <el-row :gutter="10"> | 
|---|
|  |  |  | <el-col :span="14"> | 
|---|
|  |  |  | <el-form-item label="随访分类" prop="assortid"> | 
|---|
|  |  |  | <el-select | 
|---|
|  |  |  | v-model="objyl.assortid" | 
|---|
|  |  |  | size="medium" | 
|---|
|  |  |  | filterable | 
|---|
|  |  |  | placeholder="请选择分类" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option-group | 
|---|
|  |  |  | v-for="group in optionsclass" | 
|---|
|  |  |  | :key="group.id" | 
|---|
|  |  |  | :label="group.indexAssortName" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option | 
|---|
|  |  |  | v-for="item in group.ivrLibaTemplateAssortList" | 
|---|
|  |  |  | :key="item.id" | 
|---|
|  |  |  | :label="item.indexAssortName" | 
|---|
|  |  |  | :value="item.id" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-option> | 
|---|
|  |  |  | </el-option-group> | 
|---|
|  |  |  | </el-select> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <el-row :gutter="20"> | 
|---|
|  |  |  | <el-col :span="14"> | 
|---|
|  |  |  | <el-form-item label="可用状态" prop="isenable"> | 
|---|
|  |  |  | <el-radio-group v-model="objyl.isenable"> | 
|---|
|  |  |  | <el-radio | 
|---|
|  |  |  | v-for="(item, index) in usable" | 
|---|
|  |  |  | :label="item.value" | 
|---|
|  |  |  | >{{ item.label }}</el-radio | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-radio-group> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="8"> | 
|---|
|  |  |  | <el-form-item label="版本号" prop="name"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | v-model="objyl.version" | 
|---|
|  |  |  | placeholder="默认1.0" | 
|---|
|  |  |  | ></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <el-form-item label="随访标题" prop="templateName"> | 
|---|
|  |  |  | <div style="width: 400px"> | 
|---|
|  |  |  | <el-input v-model="objyl.templateName"></el-input> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <div class="dev-xx" v-if="item.valueType == 1"> | 
|---|
|  |  |  | <el-radio-group v-model="item.radio"> | 
|---|
|  |  |  | <el-radio | 
|---|
|  |  |  | v-for="(items, index) in item.ivrLibaScriptTargetoptionList" | 
|---|
|  |  |  | :key="items.id" | 
|---|
|  |  |  | :label="items.id" | 
|---|
|  |  |  | >{{ items.targetvalue }}</el-radio | 
|---|
|  |  |  | <div class="xinz-infs"> | 
|---|
|  |  |  | <el-form-item> | 
|---|
|  |  |  | <template #label> | 
|---|
|  |  |  | 适用疾病 | 
|---|
|  |  |  | <el-tooltip | 
|---|
|  |  |  | class="item" | 
|---|
|  |  |  | effect="light" | 
|---|
|  |  |  | content="选择好适用疾病后,可以方便您通过疾病诊断查找到对应的病人!" | 
|---|
|  |  |  | placement="top-start" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <i class="el-icon-warning-outline"></i> | 
|---|
|  |  |  | </el-tooltip> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-tag | 
|---|
|  |  |  | v-for="tag in illnesslist" | 
|---|
|  |  |  | :key="tag.icdid" | 
|---|
|  |  |  | type="warning" | 
|---|
|  |  |  | :disable-transitions="false" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | {{ tag.icdname }} | 
|---|
|  |  |  | </el-tag> | 
|---|
|  |  |  | <!-- <el-tag v-if="hasMore" type="info">+{{ remaining }} more</el-tag> --> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <el-form-item label="随访描述" prop="description"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | type="textarea" | 
|---|
|  |  |  | :rows="2" | 
|---|
|  |  |  | placeholder="请输入内容" | 
|---|
|  |  |  | v-model="objyl.description" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-input | 
|---|
|  |  |  | ></el-form-item> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-form-item label="随访结束语" prop="conclusion"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | type="textarea" | 
|---|
|  |  |  | :rows="2" | 
|---|
|  |  |  | placeholder="请输入内容" | 
|---|
|  |  |  | v-model="objyl.conclusion" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-input | 
|---|
|  |  |  | ></el-form-item> | 
|---|
|  |  |  | </el-form></div | 
|---|
|  |  |  | ></el-tab-pane> | 
|---|
|  |  |  | <el-tab-pane label="问题展示" | 
|---|
|  |  |  | ><div class="preview-left"> | 
|---|
|  |  |  | <div v-for="item in questionList"> | 
|---|
|  |  |  | <!-- 单选 --> | 
|---|
|  |  |  | <div | 
|---|
|  |  |  | class="scriptTopic-dev" | 
|---|
|  |  |  | :key="item.sort" | 
|---|
|  |  |  | v-if="item.scriptType == 1" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-radio-group> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div v-else> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | type="textarea" | 
|---|
|  |  |  | placeholder="未获取到信息" | 
|---|
|  |  |  | v-model.sync="item.questionResult" | 
|---|
|  |  |  | :rows="2" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="dev-text"> | 
|---|
|  |  |  | {{ item.sort }}、[单选]<span>{{ item.scriptContent }}</span> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="dev-xx"> | 
|---|
|  |  |  | <el-radio-group v-model="item.remark"> | 
|---|
|  |  |  | <el-radio | 
|---|
|  |  |  | v-for="( | 
|---|
|  |  |  | items, index | 
|---|
|  |  |  | ) in item.ivrLibaScriptTargetoptionList" | 
|---|
|  |  |  | :key="index" | 
|---|
|  |  |  | :label="index" | 
|---|
|  |  |  | >{{ items.targetvalue }}</el-radio | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-radio-group> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <!-- 多选 --> | 
|---|
|  |  |  | <div | 
|---|
|  |  |  | class="scriptTopic-dev" | 
|---|
|  |  |  | :key="item.sort" | 
|---|
|  |  |  | v-if="item.scriptType == 2" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <div class="dev-text"> | 
|---|
|  |  |  | {{ item.sort }}、[多选]<span>{{ item.scriptContent }}</span> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="dev-xx"> | 
|---|
|  |  |  | <el-checkbox-group v-model="qremark"> | 
|---|
|  |  |  | <el-checkbox | 
|---|
|  |  |  | v-for="( | 
|---|
|  |  |  | items, index | 
|---|
|  |  |  | ) in item.ivrLibaScriptTargetoptionList" | 
|---|
|  |  |  | :key="index" | 
|---|
|  |  |  | :label="index" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | {{ items.targetvalue }} | 
|---|
|  |  |  | </el-checkbox> | 
|---|
|  |  |  | </el-checkbox-group> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <!-- 填空 --> | 
|---|
|  |  |  | <div | 
|---|
|  |  |  | class="scriptTopic-dev" | 
|---|
|  |  |  | :key="item.sort" | 
|---|
|  |  |  | v-if="item.scriptType == 4" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <div class="dev-text"> | 
|---|
|  |  |  | {{ item.sort }}、[问答]<span>{{ item.scriptContent }}</span> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="dev-xx"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | placeholder="请输入答案" | 
|---|
|  |  |  | v-model="item.radioas" | 
|---|
|  |  |  | clearable | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-input> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div></div | 
|---|
|  |  |  | ></el-tab-pane> | 
|---|
|  |  |  | </el-tabs> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <span slot="footer" class="dialog-footer"> | 
|---|
|  |  |  | <el-button @click="previewGo">前往模版详情修改</el-button> | 
|---|
|  |  |  | <el-button type="primary" @click="previewFn">确认使用</el-button> | 
|---|
|  |  |  | <!-- <el-button @click="previewGo">保存模板详情修改</el-button> --> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | v-if="(form.templateid && form.sendState == 1) || !form.templateid" | 
|---|
|  |  |  | type="primary" | 
|---|
|  |  |  | @click="Departmenttreatment" | 
|---|
|  |  |  | >{{ form.templateid ? "替换使用" : "选择使用" }}</el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | :type="previewtftype ? 'success' : 'warning'" | 
|---|
|  |  |  | @click="Modifytemplate" | 
|---|
|  |  |  | >{{ | 
|---|
|  |  |  | previewtftype ? "前往修改已选择模板" : "新增保存并前往修改" | 
|---|
|  |  |  | }}</el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </span> | 
|---|
|  |  |  | </el-dialog> | 
|---|
|  |  |  | <el-drawer | 
|---|
|  |  |  | title="随访内容列表" | 
|---|
|  |  |  | :visible.sync="drawermb" | 
|---|
|  |  |  | direction="rtl" | 
|---|
|  |  |  | size="50%" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <div class="headline"></div> | 
|---|
|  |  |  | <div class="examine-jic"> | 
|---|
|  |  |  | <div class="jic-value"> | 
|---|
|  |  |  | <el-row :gutter="20"> | 
|---|
|  |  |  | <!--用户数据--> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-form | 
|---|
|  |  |  | :model="topqueryParams" | 
|---|
|  |  |  | ref="queryForm" | 
|---|
|  |  |  | size="small" | 
|---|
|  |  |  | :inline="true" | 
|---|
|  |  |  | v-show="showSearch" | 
|---|
|  |  |  | label-width="98px" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-form-item label="随访名称"> | 
|---|
|  |  |  | <el-input v-model="topqueryParams.templateName"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <!-- <el-form-item label="适用形式" prop="status"> | 
|---|
|  |  |  | <el-select v-model="topqueryParams.topica" placeholder="请选择"> | 
|---|
|  |  |  | <el-option | 
|---|
|  |  |  | v-for="item in taskoptions" | 
|---|
|  |  |  | :key="item.value" | 
|---|
|  |  |  | :label="item.label" | 
|---|
|  |  |  | :value="item.value" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-option> | 
|---|
|  |  |  | </el-select> | 
|---|
|  |  |  | </el-form-item> --> | 
|---|
|  |  |  | <el-form-item> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | type="primary" | 
|---|
|  |  |  | icon="el-icon-search" | 
|---|
|  |  |  | size="medium" | 
|---|
|  |  |  | @click="handleQuerymb" | 
|---|
|  |  |  | >搜索</el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | icon="el-icon-refresh" | 
|---|
|  |  |  | size="medium" | 
|---|
|  |  |  | @click="resetQuery" | 
|---|
|  |  |  | >重置</el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-form> | 
|---|
|  |  |  | <el-divider></el-divider> | 
|---|
|  |  |  | <!-- 选择模板列表 --> | 
|---|
|  |  |  | <SFtable | 
|---|
|  |  |  | @selectfn="selectfn" | 
|---|
|  |  |  | :currentList="userList" | 
|---|
|  |  |  | :tableLabel="tableLabel" | 
|---|
|  |  |  | :serialnumber="false" | 
|---|
|  |  |  | :controlsc="false" | 
|---|
|  |  |  | :multiplechoice="false" | 
|---|
|  |  |  | :typeinfo="1" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | <pagination | 
|---|
|  |  |  | v-show="total > 0" | 
|---|
|  |  |  | :total="total" | 
|---|
|  |  |  | :page.sync="topqueryParams.pageNum" | 
|---|
|  |  |  | :limit.sync="topqueryParams.pageSize" | 
|---|
|  |  |  | @pagination="Acquisitiontype" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </el-drawer> | 
|---|
|  |  |  | <Optional-Form | 
|---|
|  |  |  | ref="child" | 
|---|
|  |  |  | :dialogVisiblepatient="dialogVisiblepatientjb" | 
|---|
|  |  |  | :overallCase="diagglist" | 
|---|
|  |  |  | @addoption="dialogVisiblepatientjb = false" | 
|---|
|  |  |  | @kkoption="dialogVisiblepatientjb = true" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | import { messagelistpatient } from "@/api/patient/homepage"; | 
|---|
|  |  |  | import store from "@/store"; | 
|---|
|  |  |  | import { | 
|---|
|  |  |  | getTaskpatient, | 
|---|
|  |  |  | getlibrarylist, | 
|---|
|  |  |  | getTaskpatientQC, | 
|---|
|  |  |  | getillnesslist, | 
|---|
|  |  |  | getbaseopera, | 
|---|
|  |  |  | getFollowuplist, | 
|---|
|  |  |  | getQtemplatelist, | 
|---|
|  |  |  | TaskTemplatecomit, | 
|---|
|  |  |  | getTaskInfo, | 
|---|
|  |  |  | gethetaskinfo, | 
|---|
|  |  |  | delhetaskinfo, | 
|---|
|  |  |  | Editsingletask, | 
|---|
|  |  |  | getvFollowup, | 
|---|
|  |  |  | Taskparticty, | 
|---|
|  |  |  | deleteTaskparticty, | 
|---|
|  |  |  | getTaskInfo, | 
|---|
|  |  |  | getTaskparticty, | 
|---|
|  |  |  | depthospgetson, | 
|---|
|  |  |  | getillness, | 
|---|
|  |  |  | Editsingletask, | 
|---|
|  |  |  | getFollowupclassify, | 
|---|
|  |  |  | taskdepthospgetsonlist, | 
|---|
|  |  |  | taskdepthospgetsondel, | 
|---|
|  |  |  | taskoperhospgetsondel, | 
|---|
|  |  |  | taskdiaghospgetsondel, | 
|---|
|  |  |  | taskdiaggetlist, | 
|---|
|  |  |  | taskopergetlist, | 
|---|
|  |  |  | } from "@/api/AiCentre/index"; | 
|---|
|  |  |  | import { listDept } from "@/api/system/dept"; | 
|---|
|  |  |  | import { deptTreeSelect } from "@/api/system/user"; | 
|---|
|  |  |  | import OptionalForm from "@/components/OptionalForm"; | 
|---|
|  |  |  | import SortCheckbox from "@/components/SortCheckbox"; //表格组件 | 
|---|
|  |  |  | import { MessageBox } from "element-ui"; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import SFtable from "@/components/SFtable"; //表格组件 | 
|---|
|  |  |  |  | 
|---|
|  |  |  | export default { | 
|---|
|  |  |  | name: "ServiceDetails", | 
|---|
|  |  |  | name: "particty", | 
|---|
|  |  |  | data() { | 
|---|
|  |  |  | return { | 
|---|
|  |  |  | title: "宣教内容列表", | 
|---|
|  |  |  | currenttype: 1, //1宣教2门诊3出院4复诊5体检6问卷 | 
|---|
|  |  |  | currenttype: 1, //1宣教2门诊3出院4复诊5体检6随访 | 
|---|
|  |  |  | id: "", // | 
|---|
|  |  |  | previewid: "", //任务模版传递id | 
|---|
|  |  |  | previewid: "", //任务模板传递id | 
|---|
|  |  |  | libName: "", | 
|---|
|  |  |  | username: "", | 
|---|
|  |  |  | templateor: false, | 
|---|
|  |  |  | submitLoading: false, // 控制按钮加载状态 | 
|---|
|  |  |  | objyl: {}, | 
|---|
|  |  |  | overallCase: [], //选择患者总 | 
|---|
|  |  |  | allpids: [], | 
|---|
|  |  |  | libId: null, //模板库模版id | 
|---|
|  |  |  | appraiselist: [], | 
|---|
|  |  |  | optionsclass: [], | 
|---|
|  |  |  | illnesslist: [], | 
|---|
|  |  |  | mode: [], | 
|---|
|  |  |  | libId: null, //模板库模板id | 
|---|
|  |  |  | Editprogress: 1, //编辑进度 | 
|---|
|  |  |  | drawermb: false, //选择模板弹窗 | 
|---|
|  |  |  | previewtf: false, //预览 | 
|---|
|  |  |  | previewtftype: 0, //预览情况0新模板预览1已选择模板修改 | 
|---|
|  |  |  | loading: false, // 遮罩层 | 
|---|
|  |  |  | patientloading: false, // 遮罩层 | 
|---|
|  |  |  | dialogVisiblepatient: false, //添加患者弹框 | 
|---|
|  |  |  | dialogVisiblepatientjb: false, | 
|---|
|  |  |  | deptcodesWards: [], //科室数据 | 
|---|
|  |  |  | leavehospitaldistrictcodes: [], //病区数据 | 
|---|
|  |  |  | operationcodes: [], //手术数据 | 
|---|
|  |  |  | illnesscodes: [], //疾病数据 | 
|---|
|  |  |  | radio: 1, | 
|---|
|  |  |  | checkboxlist: [], | 
|---|
|  |  |  | tableLabel: [], | 
|---|
|  |  |  | questionList: [], | 
|---|
|  |  |  | skip: false, | 
|---|
|  |  |  | donorchargeList: [], | 
|---|
|  |  |  | baseoperaList: [], | 
|---|
|  |  |  | selectedOrder: [], | 
|---|
|  |  |  |  | 
|---|
|  |  |  | usable: [ | 
|---|
|  |  |  | { value: "0", label: "可用" }, | 
|---|
|  |  |  | { value: "1", label: "停用" }, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | required: [ | 
|---|
|  |  |  | { value: "1", label: "必填" }, | 
|---|
|  |  |  | { value: "2", label: "不必填" }, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | props: { multiple: true, value: "deptCode", label: "deptName" }, | 
|---|
|  |  |  | propstask: { value: "deptCode", label: "deptName" }, | 
|---|
|  |  |  | // 患者表单 | 
|---|
|  |  |  | tableLabelhz: [ | 
|---|
|  |  |  | { label: "序号", width: "", prop: "patid" }, | 
|---|
|  |  |  | { label: "患者名称", width: "", prop: "name" }, | 
|---|
|  |  |  | { label: "出院日期", width: "150", prop: "inhosptime" }, | 
|---|
|  |  |  | { label: "患者", width: "", prop: "name" }, | 
|---|
|  |  |  | { label: "身份证", width: "200", prop: "idcardno" }, | 
|---|
|  |  |  | { label: "电话号码", width: "180", prop: "telcode" }, | 
|---|
|  |  |  | { label: "性别", width: "", prop: "sex" }, | 
|---|
|  |  |  | { label: "年龄", width: "", prop: "age" }, | 
|---|
|  |  |  | { label: "就诊科室", width: "", prop: "deptName" }, | 
|---|
|  |  |  | { label: "入院日期", width: "", prop: "inhosptime" }, | 
|---|
|  |  |  | { label: "创建人(缺)", width: "", prop: "update_by" }, | 
|---|
|  |  |  | { label: "电话", width: "180", prop: "telcode" }, | 
|---|
|  |  |  | { label: "责任护士", width: "", prop: "nurseName" }, | 
|---|
|  |  |  | { label: "主治医生", width: "", prop: "drname" }, | 
|---|
|  |  |  | { label: "科室", width: "240", prop: "dept" }, | 
|---|
|  |  |  | { label: "病区", width: "240", prop: "leavehospitaldistrictname" }, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | tableLabelxj: [ | 
|---|
|  |  |  | { label: "宣教名称", width: "", prop: "preachname" }, | 
|---|
|  |  |  | { label: "宣教描述", width: "", prop: "note" }, | 
|---|
|  |  |  | { label: "宣教形式", width: "", prop: "playType" }, | 
|---|
|  |  |  | { label: "适用方式", width: "", prop: "suitway" }, | 
|---|
|  |  |  | { label: "修改日期", width: "", prop: "uploadTime" }, | 
|---|
|  |  |  | { label: "创建人(缺)", width: "", prop: "updateBy" }, | 
|---|
|  |  |  | // 患者表单 | 
|---|
|  |  |  | tableLabelhzwb: [ | 
|---|
|  |  |  | { label: "出院日期", width: "150", prop: "endtime" }, | 
|---|
|  |  |  | { label: "患者", width: "", prop: "name" }, | 
|---|
|  |  |  | { label: "身份证", width: "200", prop: "sfzh" }, | 
|---|
|  |  |  | { label: "电话号码", width: "180", prop: "telcode" }, | 
|---|
|  |  |  | { label: "性别", width: "", prop: "sex" }, | 
|---|
|  |  |  | { label: "年龄", width: "", prop: "age" }, | 
|---|
|  |  |  | { label: "电话", width: "180", prop: "telcode" }, | 
|---|
|  |  |  | { label: "出院天数", width: "", prop: "endDay" }, | 
|---|
|  |  |  | { label: "责任护士", width: "", prop: "nurseName" }, | 
|---|
|  |  |  | { label: "主治医生", width: "", prop: "drname" }, | 
|---|
|  |  |  | { label: "科室", width: "180", prop: "deptName" }, | 
|---|
|  |  |  | { label: "病区", width: "150", prop: "leavehospitaldistrictname" }, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | tableLabelmz: [ | 
|---|
|  |  |  | { label: "随访名称", width: "", prop: "templateName" }, | 
|---|
|  |  |  | { label: "主要内容", width: "", prop: "note" }, | 
|---|
|  |  |  | { label: "修改日期", width: "", prop: "updateTime" }, | 
|---|
|  |  |  | { label: "创建人(缺)", width: "", prop: "updateBy" }, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | tableLabelcy: [ | 
|---|
|  |  |  | { label: "随访名称", width: "", prop: "templateName" }, | 
|---|
|  |  |  | { label: "随访计划", width: "", prop: "impTemplate" }, | 
|---|
|  |  |  | { label: "修改日期", width: "", prop: "uploadTime" }, | 
|---|
|  |  |  | { label: "创建人(缺)", width: "", prop: "updateBy" }, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | tableLabelfz: [ | 
|---|
|  |  |  | { label: "通知名称", width: "", prop: "templateName" }, | 
|---|
|  |  |  | { label: "通知模版", width: "", prop: "impTemplate" }, | 
|---|
|  |  |  | { label: "修改日期", width: "", prop: "uploadTime" }, | 
|---|
|  |  |  | { label: "创建人(缺)", width: "", prop: "updateBy" }, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | tableLabeltj: [ | 
|---|
|  |  |  | { label: "通知名称", width: "", prop: "name" }, | 
|---|
|  |  |  | { label: "通知模版", width: "", prop: "impTemplate" }, | 
|---|
|  |  |  | { label: "修改日期", width: "", prop: "uploadTime" }, | 
|---|
|  |  |  | { label: "创建人(缺)", width: "", prop: "updateBy" }, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  |  | 
|---|
|  |  |  | tableLabelwj: [ | 
|---|
|  |  |  | { label: "问卷名称", width: "", prop: "name" }, | 
|---|
|  |  |  | { label: "问卷模版", width: "", prop: "impTemplate" }, | 
|---|
|  |  |  | { label: "修改日期", width: "", prop: "uploadTime" }, | 
|---|
|  |  |  | { label: "创建人(缺)", width: "", prop: "updateBy" }, | 
|---|
|  |  |  | { label: "创建人", width: "", prop: "createBy" }, | 
|---|
|  |  |  | { label: "模板标题", width: "", prop: "templateName" }, | 
|---|
|  |  |  | { label: "随访描述", width: "", prop: "note" }, | 
|---|
|  |  |  | { label: "修改日期", width: "", prop: "updateTime" }, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | // 变量 | 
|---|
|  |  |  | tableLabelvariable: [ | 
|---|
|  |  |  | 
|---|
|  |  |  | { label: "匹配符", width: "", prop: "character" }, | 
|---|
|  |  |  | { label: "替换值", width: "", prop: "Replacementvalue" }, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | preachform: [ | 
|---|
|  |  |  | { label: "多媒体", value: 1 }, | 
|---|
|  |  |  | { label: "纸质", value: 2 }, | 
|---|
|  |  |  | { label: "智能语音", value: 3 }, | 
|---|
|  |  |  | { label: "短信", value: 4 }, | 
|---|
|  |  |  | { label: "微信公众号", value: 5 }, | 
|---|
|  |  |  | { label: "微信小程序", value: 6 }, | 
|---|
|  |  |  | { label: "支付宝", value: 7 }, | 
|---|
|  |  |  | { label: "智能小程序", value: 8 }, | 
|---|
|  |  |  | { label: "钉钉", value: 9 }, | 
|---|
|  |  |  | { label: "线下(纸质)", value: 10 }, | 
|---|
|  |  |  | { label: "线上(短信/钉钉的文本、随访链接)", value: 11 }, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | // 时间处理 | 
|---|
|  |  |  | daytime: [], //日期 | 
|---|
|  |  |  | applydaytime: [], //计算日期 | 
|---|
|  |  |  | time1: "", //上午时间段 | 
|---|
|  |  |  | time2: "", //下午时间段 | 
|---|
|  |  |  | time3: "", //晚上时间段 | 
|---|
|  |  |  | time4: "", //晚上时间段 | 
|---|
|  |  |  | topqueryParams: { | 
|---|
|  |  |  | pageNum: 1, // | 
|---|
|  |  |  | pageSize: 10, | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | checkList: [], | 
|---|
|  |  |  | foncheckList: [], | 
|---|
|  |  |  | formatvalue: { | 
|---|
|  |  |  | format1: "", | 
|---|
|  |  |  | format2: "", | 
|---|
|  |  |  | format3: "", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | deliverytopqueryParams: { | 
|---|
|  |  |  | pageNum: 1, // | 
|---|
|  |  |  | pageSize: 10, | 
|---|
|  |  |  | 
|---|
|  |  |  | patientqueryParams: { | 
|---|
|  |  |  | pageNum: 1, // | 
|---|
|  |  |  | pageSize: 10, | 
|---|
|  |  |  | topica: 1, //0全部1科室2病区 | 
|---|
|  |  |  | leaveldeptcodes: [], | 
|---|
|  |  |  | leavehospitaldistrictcodes: [], | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | topicoptions: [{ children: [{ children: [] }] }], | 
|---|
|  |  |  | showSearch: true, // | 
|---|
|  |  |  | 
|---|
|  |  |  | // 非多个禁用 | 
|---|
|  |  |  | multiple: true, | 
|---|
|  |  |  | // 用户表格数据 | 
|---|
|  |  |  | userList: [], //模版列表 | 
|---|
|  |  |  | userList: [], //模板列表 | 
|---|
|  |  |  | multiplechoice: [], //多选结果 | 
|---|
|  |  |  | patientuserList: [], //选择患者列表 | 
|---|
|  |  |  | sonuserList: [], //选中患者列表 | 
|---|
|  |  |  | delvariableList: [], //删除变量临时存储 | 
|---|
|  |  |  | longtype: [ | 
|---|
|  |  |  | { value: 0, label: "自定义周期" }, | 
|---|
|  |  |  | { value: 1, label: "长期任务" }, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | variableList: [ | 
|---|
|  |  |  | { | 
|---|
|  |  |  | name: "姓名", | 
|---|
|  |  |  | 
|---|
|  |  |  | tasktopic: null, //新增类型 | 
|---|
|  |  |  | SelectPatientslist: [], | 
|---|
|  |  |  | form: { | 
|---|
|  |  |  | serviceform: [], | 
|---|
|  |  |  | patTaskRelevances: [], | 
|---|
|  |  |  | sendType: 1, | 
|---|
|  |  |  | sendType: 3, | 
|---|
|  |  |  | longTask: 0, | 
|---|
|  |  |  | templatename: "", | 
|---|
|  |  |  | templateid: null, | 
|---|
|  |  |  | libtemplateid: null, | 
|---|
|  |  |  | kcb: | 
|---|
|  |  |  | "亲爱的患者/家属,您好!我们是" + | 
|---|
|  |  |  | localStorage.getItem("orgname") + | 
|---|
|  |  |  | "的医护人员,为了更好地了解您的康复情况,请您抽一点宝贵时间,进行本次回访服务。", | 
|---|
|  |  |  | jsy: "请您注意休息和营养,生活上要劳逸结合,适当锻炼,戒烟限酒,保持心情舒畅,定期复诊。那本次回访内容就到这里,祝您身体健康!", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | taskoptions: [ | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "1", | 
|---|
|  |  |  | value: "4", | 
|---|
|  |  |  | label: "出院病人", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "1", | 
|---|
|  |  |  | label: "在院病人", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "2", | 
|---|
|  |  |  | 
|---|
|  |  |  | value: "3", | 
|---|
|  |  |  | label: "体检病人", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "5", | 
|---|
|  |  |  | label: "手术病人", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | source: [ | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: 0, | 
|---|
|  |  |  | label: "所属患者", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: 1, | 
|---|
|  |  |  | label: "科室患者", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: 2, | 
|---|
|  |  |  | label: "病区患者", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  |  | 
|---|
|  |  |  | tasktypes: store.getters.tasktypes, | 
|---|
|  |  |  | // 科室/病区 | 
|---|
|  |  |  | belongWards: [], | 
|---|
|  |  |  | deptlist: [], | 
|---|
|  |  |  | hosplist: [], | 
|---|
|  |  |  | diagglist: [], | 
|---|
|  |  |  | operlist: [], | 
|---|
|  |  |  | tempDetpRelevanceslist: [], //科室数据 | 
|---|
|  |  |  | tempDetpRelevanceslistform: [], //科室数据 | 
|---|
|  |  |  | tempbelongWards: [], //病区数据 | 
|---|
|  |  |  | tempbelongWardsform: [], //病区数据 | 
|---|
|  |  |  | rules: { | 
|---|
|  |  |  | taskName: [ | 
|---|
|  |  |  | { required: true, message: "任务名称不能为空", trigger: "blur" }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | min: 2, | 
|---|
|  |  |  | max: 30, | 
|---|
|  |  |  | message: "任务名称长度必须介于 2 和 30 之间", | 
|---|
|  |  |  | trigger: "blur", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | sendType: [ | 
|---|
|  |  |  | { required: true, message: "发送设置不能为空", trigger: "blur" }, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | // deptcode: [ | 
|---|
|  |  |  | //   { required: true, message: "适用科室不能为空", trigger: "blur" }, | 
|---|
|  |  |  | // ], | 
|---|
|  |  |  | // leavehospitaldistrictcode: [ | 
|---|
|  |  |  | //   { required: true, message: "适用病区不能为空", trigger: "blur" }, | 
|---|
|  |  |  | // ], | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 科室院区查询入参 | 
|---|
|  |  |  | queryParamsdept: { | 
|---|
|  |  |  | tempid: "", | 
|---|
|  |  |  | type: 2, | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | belongDepts: [], | 
|---|
|  |  |  | quote: false, | 
|---|
|  |  |  | serviceType: null, | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | components: { SFtable }, | 
|---|
|  |  |  | components: { SFtable, OptionalForm, SortCheckbox }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | created() { | 
|---|
|  |  |  | this.appraiselist = store.getters.appraiselist; | 
|---|
|  |  |  | this.belongWards = store.getters.belongWards; | 
|---|
|  |  |  | this.belongDepts = store.getters.belongDepts; | 
|---|
|  |  |  | this.username = store.getters.name; | 
|---|
|  |  |  | this.mode = store.getters.Askmode; | 
|---|
|  |  |  | this.id = this.$route.query.id; | 
|---|
|  |  |  | this.form.hospType = this.$route.query.type; | 
|---|
|  |  |  | this.listDept(); | 
|---|
|  |  |  | this.newadd = this.$route.query.newadd; | 
|---|
|  |  |  | this.form.type = this.$route.query.type; | 
|---|
|  |  |  | this.form.typename = this.$route.query.typename; | 
|---|
|  |  |  | this.serviceType = Number(this.$route.query.serviceType); | 
|---|
|  |  |  | this.form.serviceType = Number(this.$route.query.serviceType); | 
|---|
|  |  |  | console.log(localStorage.getItem("orgid"), "orgid"); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | this.Acquisitiontype(); | 
|---|
|  |  |  | this.getillnesslist(); | 
|---|
|  |  |  | this.Getdetails(); | 
|---|
|  |  |  | this.getFollowupclassify(); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | activated() { | 
|---|
|  |  |  | console.log(this.id, "CS", this.$route.query.id); | 
|---|
|  |  |  | if (this.id != this.$route.query.id) { | 
|---|
|  |  |  | this.id = this.$route.query.id; | 
|---|
|  |  |  | this.newadd = this.$route.query.newadd; | 
|---|
|  |  |  | this.form.type = this.$route.query.type; | 
|---|
|  |  |  | this.form.typename = this.$route.query.typename; | 
|---|
|  |  |  | this.serviceType = Number(this.$route.query.serviceType); | 
|---|
|  |  |  | this.form.serviceType = Number(this.$route.query.serviceType); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | this.Acquisitiontype(); | 
|---|
|  |  |  | this.Getdetails(); | 
|---|
|  |  |  | this.getFollowupclassify(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | methods: { | 
|---|
|  |  |  | // { | 
|---|
|  |  |  | //   姓名: { "${name}": "龙傲天" }, | 
|---|
|  |  |  | //   地址: { "${dzz}": "龙宫" }, | 
|---|
|  |  |  | //   电话: { "${dhh}": "八个八" }, | 
|---|
|  |  |  | // } | 
|---|
|  |  |  | // 变量转换对象转数组 | 
|---|
|  |  |  | convertFormat1ToFormat2(data) { | 
|---|
|  |  |  | let result = []; | 
|---|
|  |  |  | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | return result; | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | flattenArray(multiArray) { | 
|---|
|  |  |  | let result = []; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 递归函数,用于将多级数组转换为一维数组,只包含最底层的元素 | 
|---|
|  |  |  | function flatten(element) { | 
|---|
|  |  |  | // 如果当前元素有子元素,继续递归 | 
|---|
|  |  |  | if (element.children && element.children.length > 0) { | 
|---|
|  |  |  | element.children.forEach((child) => flatten(child)); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | // 克隆元素以避免修改原始数据 | 
|---|
|  |  |  | let item = JSON.parse(JSON.stringify(element)); | 
|---|
|  |  |  | result.push(item); // 将最底层的元素添加到结果数组 | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 从顶层元素开始递归 | 
|---|
|  |  |  | multiArray.forEach((element) => flatten(element)); | 
|---|
|  |  |  | return result; // 返回只包含最底层元素的一维数组 | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 获取当前类型 | 
|---|
|  |  |  | Acquisitiontype() { | 
|---|
|  |  |  | let queryParams = { | 
|---|
|  |  |  | pageNum: this.topqueryParams.pageNum, | 
|---|
|  |  |  | pageSize: this.topqueryParams.pageSize, | 
|---|
|  |  |  | isavailable: "", | 
|---|
|  |  |  | isenable: "", | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | this.currenttype = this.$route.query.type; | 
|---|
|  |  |  | console.log(this.currenttype, "1"); | 
|---|
|  |  |  | if (this.currenttype == 1 || this.currenttype == 8) { | 
|---|
|  |  |  | // 医技宣教,普通宣教 | 
|---|
|  |  |  | this.title = "宣教内容列表"; | 
|---|
|  |  |  | this.tableLabel = this.tableLabelxj; | 
|---|
|  |  |  | this.title = "随访内容列表"; | 
|---|
|  |  |  | this.tableLabel = this.tableLabelwj; | 
|---|
|  |  |  | if (this.form.serviceType == 1) { | 
|---|
|  |  |  | this.checkboxlist = [ | 
|---|
|  |  |  | "线下(口头宣教、电视宣教、纸质)", | 
|---|
|  |  |  | "线上(短信/钉钉的文本、图文链接)", | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "1", | 
|---|
|  |  |  | label: "人工", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "2", | 
|---|
|  |  |  | label: "纸质", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "4", | 
|---|
|  |  |  | label: "短信", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "5", | 
|---|
|  |  |  | label: "微信公众号", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | ]; | 
|---|
|  |  |  | getlibrarylist(queryParams).then((response) => { | 
|---|
|  |  |  | this.userList = response.rows; | 
|---|
|  |  |  | this.total = response.total; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } else if (this.form.serviceType == 6) { | 
|---|
|  |  |  | this.checkboxlist = [ | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "3", | 
|---|
|  |  |  | label: "智能语音", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "4", | 
|---|
|  |  |  | label: "短信", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "5", | 
|---|
|  |  |  | label: "微信公众号", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "6", | 
|---|
|  |  |  | label: "微信小程序", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // { | 
|---|
|  |  |  | //   value: "8", | 
|---|
|  |  |  | //   label: "智能机器人", | 
|---|
|  |  |  | // }, | 
|---|
|  |  |  | ]; | 
|---|
|  |  |  | } else if ( | 
|---|
|  |  |  | this.currenttype == 2 || | 
|---|
|  |  |  | this.currenttype == 3 || | 
|---|
|  |  |  | this.currenttype == 7 | 
|---|
|  |  |  | this.form.serviceType == 7 || | 
|---|
|  |  |  | this.form.serviceType == 5 || | 
|---|
|  |  |  | this.form.serviceType == 8 || | 
|---|
|  |  |  | this.form.serviceType == 9 || | 
|---|
|  |  |  | this.form.serviceType == 11 || | 
|---|
|  |  |  | this.form.serviceType == 12 || | 
|---|
|  |  |  | this.form.serviceType == 10 | 
|---|
|  |  |  | ) { | 
|---|
|  |  |  | // 出院、门诊、专病随访 | 
|---|
|  |  |  | this.title = "随访内容列表"; | 
|---|
|  |  |  | this.tableLabel = this.tableLabelmz; | 
|---|
|  |  |  | this.checkboxlist = ["线下", "AI语音外呼", "人工电话"]; | 
|---|
|  |  |  | getFollowuplist(queryParams).then((response) => { | 
|---|
|  |  |  | this.userList = response.rows; | 
|---|
|  |  |  | this.total = response.total; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } else if (this.currenttype == 4 || this.currenttype == 5) { | 
|---|
|  |  |  | // 复诊、体检通知 | 
|---|
|  |  |  | this.title = "通知内容列表"; | 
|---|
|  |  |  | this.tableLabel = this.tableLabelfz; | 
|---|
|  |  |  | this.checkboxlist = ["线下", "AI语音外呼", "人工电话", "短信"]; | 
|---|
|  |  |  | getFollowuplist(queryParams).then((response) => { | 
|---|
|  |  |  | this.userList = response.rows; | 
|---|
|  |  |  | this.total = response.total; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } else if (this.currenttype == 6) { | 
|---|
|  |  |  | this.title = "问卷内容列表"; | 
|---|
|  |  |  | this.tableLabel = this.tableLabelwj; | 
|---|
|  |  |  | this.checkboxlist = [ | 
|---|
|  |  |  | "线下(纸质)", | 
|---|
|  |  |  | "线上(短信/钉钉的文本、问卷链接)", | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "1", | 
|---|
|  |  |  | label: "人工", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "2", | 
|---|
|  |  |  | label: "纸质", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "3", | 
|---|
|  |  |  | label: "智能语音", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "4", | 
|---|
|  |  |  | label: "短信", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "5", | 
|---|
|  |  |  | label: "微信公众号", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "6", | 
|---|
|  |  |  | label: "微信小程序", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "7", | 
|---|
|  |  |  | label: "术后随访", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | ]; | 
|---|
|  |  |  | getQtemplatelist(queryParams).then((response) => { | 
|---|
|  |  |  | this.userList = response.rows; | 
|---|
|  |  |  | this.total = response.total; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } else if ( | 
|---|
|  |  |  | this.form.serviceType == 2 || | 
|---|
|  |  |  | this.form.serviceType == 3 || | 
|---|
|  |  |  | this.form.serviceType == 16 || | 
|---|
|  |  |  | this.form.serviceType == 4 | 
|---|
|  |  |  | ) { | 
|---|
|  |  |  | this.checkboxlist = [ | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "1", | 
|---|
|  |  |  | label: "人工", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "3", | 
|---|
|  |  |  | label: "智能语音", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "4", | 
|---|
|  |  |  | label: "短信", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "5", | 
|---|
|  |  |  | label: "微信公众号", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: "6", | 
|---|
|  |  |  | label: "微信小程序", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // { | 
|---|
|  |  |  | //   value: "8", | 
|---|
|  |  |  | //   label: "智能机器人", | 
|---|
|  |  |  | // }, | 
|---|
|  |  |  | ]; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | getFollowuplist(this.topqueryParams).then((response) => { | 
|---|
|  |  |  | this.userList = response.rows; | 
|---|
|  |  |  | this.total = response.total; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | nextstep() { | 
|---|
|  |  |  | if (this.Editprogress <= 3) { | 
|---|
|  |  |  | return this.Editprogress++; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 保存 | 
|---|
|  |  |  | submitForm(formName) { | 
|---|
|  |  |  | this.form.serviceform = this.checkList.join(","); | 
|---|
|  |  |  | this.form.hospType = this.currenttype; | 
|---|
|  |  |  | const filteredArray = this.variableList.filter( | 
|---|
|  |  |  | (item) => | 
|---|
|  |  |  | item.name !== "姓名" && item.name !== "电话" && item.name !== "地址" | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | console.log(filteredArray, "存前变量"); | 
|---|
|  |  |  | this.form.textParam = this.convertFormat2ToFormat1(filteredArray); | 
|---|
|  |  |  | if (this.form.taskid) { | 
|---|
|  |  |  | this.form.isoperation = 2; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.form.isoperation = 1; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | Editsingletask(this.form).then((res) => { | 
|---|
|  |  |  | if (res.code == 200) { | 
|---|
|  |  |  | if (this.form.taskid) { | 
|---|
|  |  |  | this.$modal.msgSuccess("新增成功"); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$modal.msgSuccess("修改成功"); | 
|---|
|  |  |  | this.$refs["form"].validate((valid) => { | 
|---|
|  |  |  | if (valid) { | 
|---|
|  |  |  | if (this.Editprogress <= 3) { | 
|---|
|  |  |  | return this.Editprogress++; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.$router.go(-1); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$modal.msgError("表单内容未完善,请检查"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // ----------------------表格子组件事件 | 
|---|
|  |  |  | // 确认选择模版放入任务模版 | 
|---|
|  |  |  | selectfn(row, type) { | 
|---|
|  |  |  | // 模版情况下获取模版信息 | 
|---|
|  |  |  | if (type == 1) { | 
|---|
|  |  |  | if ( | 
|---|
|  |  |  | this.currenttype == 2 || | 
|---|
|  |  |  | this.currenttype == 4 || | 
|---|
|  |  |  | this.currenttype == 3 || | 
|---|
|  |  |  | currenttype == 5 || | 
|---|
|  |  |  | currenttype == 7 | 
|---|
|  |  |  | ) { | 
|---|
|  |  |  | this.libName = row.templateName; | 
|---|
|  |  |  | this.libId = row.id; | 
|---|
|  |  |  | } else if (this.currenttype == 1) { | 
|---|
|  |  |  | this.libName = row.preachname; | 
|---|
|  |  |  | this.libId = row.id; | 
|---|
|  |  |  | // 保存 | 
|---|
|  |  |  | submitForm(type) { | 
|---|
|  |  |  | if (this.submitLoading) { | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | // 第二步:开启加载状态,禁用按钮 | 
|---|
|  |  |  | this.submitLoading = true; | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | if (this.templateor && type) this.templateor = false; | 
|---|
|  |  |  | if (this.time4 && this.form.sendType == 3) | 
|---|
|  |  |  | this.form.showTimeMorn = this.time4; | 
|---|
|  |  |  | this.form.sendTimeslot = [ | 
|---|
|  |  |  | { | 
|---|
|  |  |  | begantime: this.time4, | 
|---|
|  |  |  | endtime: "", | 
|---|
|  |  |  | xh: 1, | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | ]; | 
|---|
|  |  |  | if (this.form.appltype == 1) { | 
|---|
|  |  |  | this.leavehospitaldistrictcodes = []; | 
|---|
|  |  |  | this.operationcodes = []; | 
|---|
|  |  |  | this.illnesscodes = []; | 
|---|
|  |  |  | } else if (this.form.appltype == 2) { | 
|---|
|  |  |  | this.deptcodesWards = []; | 
|---|
|  |  |  | this.operationcodes = []; | 
|---|
|  |  |  | this.illnesscodes = []; | 
|---|
|  |  |  | } else if (this.form.appltype == 3) { | 
|---|
|  |  |  | this.deptcodesWards = []; | 
|---|
|  |  |  | this.leavehospitaldistrictcodes = []; | 
|---|
|  |  |  | this.operationcodes = []; | 
|---|
|  |  |  | } else if (this.form.appltype == 4) { | 
|---|
|  |  |  | this.deptcodesWards = []; | 
|---|
|  |  |  | this.illnesscodes = []; | 
|---|
|  |  |  | this.leavehospitaldistrictcodes = []; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | getvFollowup({ id: row.id }).then((res) => { | 
|---|
|  |  |  | if (this.checkList) { | 
|---|
|  |  |  | this.form.preachform = this.checkList.join(","); | 
|---|
|  |  |  | this.form.preachformList = this.selectedOrder; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$modal.msgError("请选择服务类型"); | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if ( | 
|---|
|  |  |  | this.deptcodesWards[0] || | 
|---|
|  |  |  | this.leavehospitaldistrictcodes[0] || | 
|---|
|  |  |  | this.diagglist[0] || | 
|---|
|  |  |  | this.operationcodes[0] || | 
|---|
|  |  |  | this.form.longTask == 2 || | 
|---|
|  |  |  | this.serviceType == 3 | 
|---|
|  |  |  | ) { | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$modal.msgError("请选择任务关联条件"); | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | // if (!this.form.patTaskRelevances[0] && !this.form.longTask) { | 
|---|
|  |  |  | //   this.$modal.msgError("请选择病人"); | 
|---|
|  |  |  | //   return; | 
|---|
|  |  |  | // } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (!this.form.templatename && !this.templateor) { | 
|---|
|  |  |  | this.$modal.msgError("未选择模板"); | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if ( | 
|---|
|  |  |  | (this.form.sendType == 1 && this.time1) || | 
|---|
|  |  |  | this.form.sendType == 2 | 
|---|
|  |  |  | ) { | 
|---|
|  |  |  | } else if ( | 
|---|
|  |  |  | (this.form.sendType == 3 && this.time4) || | 
|---|
|  |  |  | this.form.longTask | 
|---|
|  |  |  | ) { | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | return this.$modal.msgError("时间信息缺失"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | const filteredArray = this.variableList.filter( | 
|---|
|  |  |  | (item) => | 
|---|
|  |  |  | item.name !== "姓名" && item.name !== "电话" && item.name !== "地址" | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | this.form.textParam = this.convertFormat2ToFormat1(filteredArray); | 
|---|
|  |  |  | if (this.form.taskid) { | 
|---|
|  |  |  | this.form.isoperation = 2; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.form.isoperation = 1; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (!this.form.type) { | 
|---|
|  |  |  | this.form.type = this.$route.query.type; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.form.serviceType = this.serviceType; | 
|---|
|  |  |  | this.form.deptcode = this.deptcodesWards.join(","); | 
|---|
|  |  |  | this.form.leavehospitaldistrictcode = | 
|---|
|  |  |  | this.leavehospitaldistrictcodes.join(","); | 
|---|
|  |  |  | this.form.opcode = this.operationcodes.join(","); | 
|---|
|  |  |  | this.form.icd10code = this.diagglist | 
|---|
|  |  |  | .map((item) => item.icdcode) | 
|---|
|  |  |  | .join(","); | 
|---|
|  |  |  | Editsingletask(this.form).then((res) => { | 
|---|
|  |  |  | if (res.code == 200) { | 
|---|
|  |  |  | this.Tasktemplate = res.data; | 
|---|
|  |  |  | const data = res.data; | 
|---|
|  |  |  | this.questionList = data.ivrLibaTemplateScriptVOList; | 
|---|
|  |  |  | this.previewtf = true; | 
|---|
|  |  |  | this.previewid = data.id; | 
|---|
|  |  |  | console.log(this.questionList, "questionList"); | 
|---|
|  |  |  | this.Variablehandling(data.ivrLibaTemplateScriptVOList, 1); | 
|---|
|  |  |  | if (this.form.taskid) { | 
|---|
|  |  |  | this.$modal.msgSuccess("修改成功"); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$modal.msgSuccess("新增成功"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.submitLoading = false; | 
|---|
|  |  |  | this.$router.push({ | 
|---|
|  |  |  | path: "/followvisit/tasklist", | 
|---|
|  |  |  | query: { tasktopic: this.form.serviceType }, | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } catch (error) { | 
|---|
|  |  |  | this.submitLoading = false; | 
|---|
|  |  |  | } finally { | 
|---|
|  |  |  | // 第四步:无论成功或失败,最终都关闭加载状态 | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // ----------------------表格子组件事件 | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 选择预览 | 
|---|
|  |  |  | selectfn(row, type) { | 
|---|
|  |  |  | // 模板情况下获取模板信息 | 
|---|
|  |  |  | if (type == 1) { | 
|---|
|  |  |  | this.libName = row.templateName; | 
|---|
|  |  |  | this.libId = row.id; | 
|---|
|  |  |  | this.questionList = row.ivrLibaTemplateScriptVOList; | 
|---|
|  |  |  | getvFollowup({ id: row.id }).then((res) => { | 
|---|
|  |  |  | if (res.code == 200) { | 
|---|
|  |  |  | this.objyl = res.data; | 
|---|
|  |  |  | // if (this.form.longTask) { | 
|---|
|  |  |  | //   this.objyl.sendDay = 5; | 
|---|
|  |  |  | // } | 
|---|
|  |  |  | this.queryParamsdept.type = 2; | 
|---|
|  |  |  | this.queryParamsdept.tempid = row.id; | 
|---|
|  |  |  | this.tempDetpRelevanceslist = []; | 
|---|
|  |  |  | this.tempbelongWards = []; | 
|---|
|  |  |  | this.objyl.suitway = this.objyl.suitway.split(","); | 
|---|
|  |  |  | this.questionList = res.data.ivrLibaTemplateScriptVOList; | 
|---|
|  |  |  | this.getillness(row.id); | 
|---|
|  |  |  | this.Variablehandling(res.data.ivrLibaTemplateScriptVOList, 1); | 
|---|
|  |  |  | this.previewtf = true; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | this.previewid = row.id; | 
|---|
|  |  |  | } else if (type == 2) { | 
|---|
|  |  |  | } else if (type == 3) { | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 预览 | 
|---|
|  |  |  | previewfnmb() { | 
|---|
|  |  |  | getTaskparticty(this.form.templateid).then((res) => { | 
|---|
|  |  |  | if (res.code == 200) { | 
|---|
|  |  |  | this.objyl = res.data; | 
|---|
|  |  |  | if (this.objyl.suitway) | 
|---|
|  |  |  | this.objyl.suitway = this.objyl.suitway.split(","); | 
|---|
|  |  |  | this.queryParamsdept.tempid = this.form.templateid; | 
|---|
|  |  |  | this.queryParamsdept.type = 21; | 
|---|
|  |  |  | // 疾病 | 
|---|
|  |  |  | this.getillness(this.form.libtemplateid); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | getvFollowup({ id: this.form.libtemplateid }).then((res) => { | 
|---|
|  |  |  | if (res.code == 200) { | 
|---|
|  |  |  | this.previewtf = true; | 
|---|
|  |  |  | this.previewtftype = 1; | 
|---|
|  |  |  | this.questionList = res.data.ivrLibaTemplateScriptVOList; | 
|---|
|  |  |  | this.objyl.ivrLibaTemplateScriptVOList = | 
|---|
|  |  |  | res.data.ivrLibaTemplateScriptVOList; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | getillness(id) { | 
|---|
|  |  |  | if (id) { | 
|---|
|  |  |  | getillness({ outid: id, type: 5 }).then((res) => { | 
|---|
|  |  |  | this.illnesslist = res.rows; | 
|---|
|  |  |  | this.illnesslist.forEach((item) => { | 
|---|
|  |  |  | item.icdname = item.icd10name; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 处理问题层变量 | 
|---|
|  |  |  | 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) { | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | 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) { | 
|---|
|  |  |  | console.log(this.overallCase, "ssaaa"); | 
|---|
|  |  |  | this.allpids = []; | 
|---|
|  |  |  | this.overallCase.forEach((item) => { | 
|---|
|  |  |  | this.allpids.push(item.patid); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | this.patientqueryParams.pids = this.allpids.join(","); | 
|---|
|  |  |  | getTaskpatient(this.patientqueryParams).then((response) => { | 
|---|
|  |  |  | console.log(response); | 
|---|
|  |  |  | if (this.patientqueryParams.allhosp == 1) { | 
|---|
|  |  |  | this.tableLabelhz = [ | 
|---|
|  |  |  | // { label: "入院日期", width: "170", prop: "starttime" }, | 
|---|
|  |  |  | { label: "出院日期", width: "150", prop: "endtime" }, | 
|---|
|  |  |  | { label: "患者", width: "", prop: "name" }, | 
|---|
|  |  |  | { label: "身份证", width: "200", prop: "idcardno" }, | 
|---|
|  |  |  | { label: "电话号码", width: "180", prop: "telcode" }, | 
|---|
|  |  |  | { label: "性别", width: "", prop: "sex" }, | 
|---|
|  |  |  | { label: "年龄", width: "", prop: "age" }, | 
|---|
|  |  |  | { label: "电话", width: "180", prop: "telcode" }, | 
|---|
|  |  |  | { label: "出院天数", width: "", prop: "endDay" }, | 
|---|
|  |  |  | { label: "责任护士", width: "", prop: "nurseName" }, | 
|---|
|  |  |  | { label: "医生", width: "", prop: "drname" }, | 
|---|
|  |  |  | { label: "科室", width: "180", prop: "dept" }, | 
|---|
|  |  |  | { label: "病区", width: "150", prop: "leavehospitaldistrictname" }, | 
|---|
|  |  |  | ]; | 
|---|
|  |  |  | } else if (this.patientqueryParams.allhosp == 4) { | 
|---|
|  |  |  | this.tableLabelhz = [ | 
|---|
|  |  |  | { label: "入院日期", width: "150", prop: "starttime" }, | 
|---|
|  |  |  | { label: "患者", width: "", prop: "name" }, | 
|---|
|  |  |  | { label: "身份证", width: "200", prop: "idcardno" }, | 
|---|
|  |  |  | { label: "电话号码", width: "180", prop: "telcode" }, | 
|---|
|  |  |  | { label: "性别", width: "", prop: "sex" }, | 
|---|
|  |  |  | { label: "年龄", width: "", prop: "age" }, | 
|---|
|  |  |  | { label: "电话", width: "180", prop: "telcode" }, | 
|---|
|  |  |  | { label: "出院天数", width: "", prop: "endDay" }, | 
|---|
|  |  |  | { 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 = [ | 
|---|
|  |  |  | { label: "就诊日期", width: "150", prop: "admitdate" }, | 
|---|
|  |  |  | { label: "患者", width: "", prop: "name" }, | 
|---|
|  |  |  | { label: "身份证", width: "200", prop: "idcardno" }, | 
|---|
|  |  |  | { label: "电话号码", width: "180", prop: "telcode" }, | 
|---|
|  |  |  | { label: "性别", width: "", prop: "sex" }, | 
|---|
|  |  |  | { label: "年龄", width: "", prop: "age" }, | 
|---|
|  |  |  | { label: "电话", width: "180", prop: "telcode" }, | 
|---|
|  |  |  | { label: "出院天数", width: "", prop: "endDay" }, | 
|---|
|  |  |  | { label: "责任护士", width: "", prop: "nurseName" }, | 
|---|
|  |  |  | { label: "医生", width: "", prop: "drname" }, | 
|---|
|  |  |  | { label: "科室", width: "180", prop: "dept" }, | 
|---|
|  |  |  | { label: "病区", width: "150", prop: "leavehospitaldistrictname" }, | 
|---|
|  |  |  | ]; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (this.allpids[0]) { | 
|---|
|  |  |  | this.patientqueryParams.pids = this.allpids; | 
|---|
|  |  |  | } 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); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | getTaskpatientQC(this.patientqueryParams).then((response) => { | 
|---|
|  |  |  | this.patientuserList = response.rows; | 
|---|
|  |  |  | this.patientuserList.forEach((item) => { | 
|---|
|  |  |  | if (item.endtime) { | 
|---|
|  |  |  | item.endDay = this.daysBetween(item.endtime); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | this.patienttotal = response.total; | 
|---|
|  |  |  | this.loading = false; | 
|---|
|  |  |  | this.Restorecheck(); | 
|---|
|  |  |  | 
|---|
|  |  |  | handleUpdate() {}, | 
|---|
|  |  |  | handleDelete() {}, | 
|---|
|  |  |  | handleExport() {}, | 
|---|
|  |  |  | // 选中患者表 | 
|---|
|  |  |  | handlePitchionChange() {}, | 
|---|
|  |  |  | // 选择患者表数据 | 
|---|
|  |  |  | handleSelectionChange(selection) { | 
|---|
|  |  |  | console.log("多选患者"); | 
|---|
|  |  |  | this.SelectPatientslist = selection; | 
|---|
|  |  |  | this.ids = null; | 
|---|
|  |  |  | this.ids = selection.map((item) => item.patid).join(","); | 
|---|
|  |  |  | // let result = this.ids.join(","); | 
|---|
|  |  |  | this.SelectPatientslist = structuredClone(selection); | 
|---|
|  |  |  | this.multiple = !selection.length; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 赋值给整体选中数组 | 
|---|
|  |  |  | 
|---|
|  |  |  | const isExist = this.overallCase.find((obj) => obj.name == item.name); | 
|---|
|  |  |  | if (!isExist) { | 
|---|
|  |  |  | item.isoperation = 1; | 
|---|
|  |  |  | item.patid = item.id; | 
|---|
|  |  |  | item.hospType = this.patientqueryParams.allhosp; | 
|---|
|  |  |  | item.sfzh = item.idcardno; | 
|---|
|  |  |  | item.deptCode = item.deptcode; | 
|---|
|  |  |  | item.deptName = item.dept; | 
|---|
|  |  |  | item.admindate = item.inhosptime; | 
|---|
|  |  |  | item.sfzh = item.idcardno; | 
|---|
|  |  |  | if (this.patientqueryParams.allhosp == 6) { | 
|---|
|  |  |  | item.patfrom = 1; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (this.patientqueryParams.allhosp == 1) { | 
|---|
|  |  |  | item.visittime = item.endtime; | 
|---|
|  |  |  | } else if (this.patientqueryParams.allhosp == 4) { | 
|---|
|  |  |  | item.visittime = item.starttime; | 
|---|
|  |  |  | } else if (this.patientqueryParams.allhosp == 2) { | 
|---|
|  |  |  | item.visittime = item.admitdate; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.overallCase.push(item); | 
|---|
|  |  |  | this.form.patTaskRelevances.push(item); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 切换页后恢复选中 | 
|---|
|  |  |  | Restorecheck() { | 
|---|
|  |  |  | console.log(this.overallCase, "this.overallCase"); | 
|---|
|  |  |  | const allid = this.overallCase.map((item) => item.patid); | 
|---|
|  |  |  | const overlap = this.patientuserList.filter((value) => { | 
|---|
|  |  |  | return allid.includes(value.patid); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | // 保持ids和当前页面的同步性 | 
|---|
|  |  |  | this.SelectPatientslist = overlap; | 
|---|
|  |  |  | console.log(this.SelectPatientslist, "进入分页SelectPatientslist"); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | this.toggleSelection(overlap); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 挂载选择状态 | 
|---|
|  |  |  | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | this.decision = false; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | console.log(123); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$refs.multipleTable.clearSelection(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | let indexa = this.overallCase.indexOf(row); | 
|---|
|  |  |  | let indexb = this.form.patTaskRelevances.indexOf(row); | 
|---|
|  |  |  | this.overallCase.splice(indexa, 1); | 
|---|
|  |  |  | this.form.patTaskRelevances[indexb].isoperation = 3; | 
|---|
|  |  |  | if (!this.form.taskid) { | 
|---|
|  |  |  | this.form.patTaskRelevances.splice(indexa, 1); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.form.patTaskRelevances[indexb].isoperation = 3; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.$modal.msgSuccess("删除成功"); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | getList() {}, | 
|---|
|  |  |  | handleQuery() { | 
|---|
|  |  |  | console.log( | 
|---|
|  |  |  | "this.patientqueryParams.allhosp", | 
|---|
|  |  |  | this.patientqueryParams.allhosp | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | if (this.patientqueryParams.topica == 0) { | 
|---|
|  |  |  | this.patientqueryParams.leavehospitaldistrictcodes = | 
|---|
|  |  |  | store.getters.leavehospitaldistrictcodes; | 
|---|
|  |  |  | this.patientqueryParams.leaveldeptcodes = store.getters.leaveldeptcodes; | 
|---|
|  |  |  | } else if (this.patientqueryParams.topica == 1) { | 
|---|
|  |  |  | this.patientqueryParams.leavehospitaldistrictcodes = null; | 
|---|
|  |  |  | this.patientqueryParams.leaveldeptcodes = store.getters.leaveldeptcodes; | 
|---|
|  |  |  | } else if (this.patientqueryParams.topica == 2) { | 
|---|
|  |  |  | this.patientqueryParams.leavehospitaldistrictcodes = | 
|---|
|  |  |  | store.getters.leavehospitaldistrictcodes; | 
|---|
|  |  |  | this.patientqueryParams.leaveldeptcodes = null; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if ( | 
|---|
|  |  |  | !this.patientqueryParams.leavehospitaldistrictcodes || | 
|---|
|  |  |  | !this.patientqueryParams.leavehospitaldistrictcodes[0] | 
|---|
|  |  |  | ) | 
|---|
|  |  |  | this.patientqueryParams.leavehospitaldistrictcodes = null; | 
|---|
|  |  |  | if ( | 
|---|
|  |  |  | !this.patientqueryParams.leaveldeptcodes || | 
|---|
|  |  |  | !this.patientqueryParams.leaveldeptcodes[0] | 
|---|
|  |  |  | ) | 
|---|
|  |  |  | this.patientqueryParams.leaveldeptcodes = null; | 
|---|
|  |  |  | this.handleAddpatient(); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | console.log( | 
|---|
|  |  |  | "this.patientqueryParams.allhosp", | 
|---|
|  |  |  | this.patientqueryParams.allhosp | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | resetQuery() {}, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | resetQuerymb() { | 
|---|
|  |  |  | this.topqueryParams = { svyname: "" }; | 
|---|
|  |  |  | this.handleQuerymb(); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | resetQuery() { | 
|---|
|  |  |  | this.patientqueryParams = { | 
|---|
|  |  |  | pageNum: 1, // | 
|---|
|  |  |  | pageSize: 10, | 
|---|
|  |  |  | topica: 1, //0全部1科室2病区 | 
|---|
|  |  |  | leaveldeptcodes: [], | 
|---|
|  |  |  | leavehospitaldistrictcodes: [], | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | this.handleQuery(); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | handleQuerymb() { | 
|---|
|  |  |  | getFollowuplist(this.topqueryParams).then((response) => { | 
|---|
|  |  |  | this.userList = response.rows; | 
|---|
|  |  |  | this.total = response.total; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | handleClosehz() { | 
|---|
|  |  |  | this.dialogVisiblepatient = false; | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | 
|---|
|  |  |  | resetForm(formName) { | 
|---|
|  |  |  | this.$refs[formName].resetFields(); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 预览模版 | 
|---|
|  |  |  | // 预览模板 | 
|---|
|  |  |  | PreviewTemplate() {}, | 
|---|
|  |  |  | Acknowledgereference() { | 
|---|
|  |  |  | this.quote = true; | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 获取详情 | 
|---|
|  |  |  | Getdetails() { | 
|---|
|  |  |  | this.form = { | 
|---|
|  |  |  | patTaskRelevances: [], | 
|---|
|  |  |  | sendType: 1, | 
|---|
|  |  |  | sendDay: 5, | 
|---|
|  |  |  | templatename: "", | 
|---|
|  |  |  | templateid: null, | 
|---|
|  |  |  | libtemplateid: null, | 
|---|
|  |  |  | kcb: | 
|---|
|  |  |  | "亲爱的患者/家属,您好!我们是" + | 
|---|
|  |  |  | localStorage.getItem("orgname") + | 
|---|
|  |  |  | "的医护人员,为了更好地了解您的康复情况,请您抽一点宝贵时间,进行本次回访服务。", | 
|---|
|  |  |  | jsy: "请您注意休息和营养,生活上要劳逸结合,适当锻炼,戒烟限酒,保持心情舒畅,定期复诊。那本次回访就到这里,祝您身体健康!", | 
|---|
|  |  |  | }; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | this.questionList = []; | 
|---|
|  |  |  | if (this.id) { | 
|---|
|  |  |  | getTaskInfo({ taskid: this.id }).then((res) => { | 
|---|
|  |  |  | let filteredArray = ""; | 
|---|
|  |  |  | if (res.code == 200) { | 
|---|
|  |  |  | this.form = res.data; | 
|---|
|  |  |  | this.form.serviceType = this.serviceType; | 
|---|
|  |  |  | this.form.patTaskRelevances = this.form.patTaskRelevances | 
|---|
|  |  |  | ? this.form.patTaskRelevances | 
|---|
|  |  |  | : []; | 
|---|
|  |  |  | this.overallCase = this.form.patTaskRelevances.concat(); | 
|---|
|  |  |  | this.checkList = this.form.serviceform.split(","); | 
|---|
|  |  |  | this.daytime = this.form.sendlimitabegin.split(","); | 
|---|
|  |  |  | if (this.form.sendlimitaend) | 
|---|
|  |  |  | this.time1 = this.form.sendlimitaend.split(","); | 
|---|
|  |  |  | if (this.form.sendlimitnbegin) | 
|---|
|  |  |  | this.time2 = this.form.sendlimitaend.split(","); | 
|---|
|  |  |  | if (this.form.sendlimitnend) | 
|---|
|  |  |  | this.time3 = this.form.sendlimitaend.split(","); | 
|---|
|  |  |  | this.checkList = this.form.preachform.split(","); | 
|---|
|  |  |  | this.selectedOrder = this.form.preachformList; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | this.overallCase.forEach((item) => { | 
|---|
|  |  |  | if (item.endtime) { | 
|---|
|  |  |  | item.endDay = this.daysBetween(item.endtime); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | if (this.form.showDate) | 
|---|
|  |  |  | this.daytime = this.form.showDate.split(","); | 
|---|
|  |  |  | if (this.form.showTimeMorn) { | 
|---|
|  |  |  | if (this.form.sendType == 3) { | 
|---|
|  |  |  | this.time4 = this.form.showTimeMorn; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.time1 = this.form.showTimeMorn.split(","); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (this.form.taskid) { | 
|---|
|  |  |  | this.listDept(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (this.form.showTimeNoon) | 
|---|
|  |  |  | this.time2 = this.form.showTimeNoon.split(","); | 
|---|
|  |  |  | if (this.form.showTimeNight) | 
|---|
|  |  |  | this.time3 = this.form.showTimeNight.split(","); | 
|---|
|  |  |  | filteredArray = this.convertFormat1ToFormat2(this.form.textParam); | 
|---|
|  |  |  | console.log(filteredArray, "filteredArray"); | 
|---|
|  |  |  | this.variableList = this.transitionList.concat(filteredArray); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$modal.msgError(res.code); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (this.newadd) { | 
|---|
|  |  |  | this.neWaddfn(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 依照新增时处理 | 
|---|
|  |  |  | neWaddfn() { | 
|---|
|  |  |  | this.id = null; | 
|---|
|  |  |  | this.form.taskName = ""; | 
|---|
|  |  |  | this.form.sendState = null; | 
|---|
|  |  |  | this.form.taskid = null; | 
|---|
|  |  |  | this.overallCase = []; | 
|---|
|  |  |  | this.form.patTaskRelevances = []; | 
|---|
|  |  |  | this.daytime = []; //日期 | 
|---|
|  |  |  | this.applydaytime = []; //计算日期 | 
|---|
|  |  |  | this.time1 = ""; //上午时间段 | 
|---|
|  |  |  | this.time2 = ""; //下午时间段 | 
|---|
|  |  |  | this.time3 = ""; //晚上时间段 | 
|---|
|  |  |  | this.time4 = ""; //晚上时间段 | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 获取科室列表 | 
|---|
|  |  |  | listDept() { | 
|---|
|  |  |  | listDept().then((res) => { | 
|---|
|  |  |  | this.topicoptions = this.handleTree(res.data, "deptId"); | 
|---|
|  |  |  | console.log(this.topicoptions, "topicoptions"); | 
|---|
|  |  |  | this.leavehospitaldistrictcodes = []; | 
|---|
|  |  |  | this.deptcodesWards = []; | 
|---|
|  |  |  | this.queryParamsdept.taskId = this.form.taskid; | 
|---|
|  |  |  | taskdepthospgetsonlist(this.queryParamsdept).then((res) => { | 
|---|
|  |  |  | if (res.code == 200) { | 
|---|
|  |  |  | let arr = res.rows; | 
|---|
|  |  |  | arr.forEach((item) => { | 
|---|
|  |  |  | if (item.deptType == 1) { | 
|---|
|  |  |  | this.deptlist.push(item); | 
|---|
|  |  |  | this.deptcodesWards.push(item.deptCode); | 
|---|
|  |  |  | } else if (item.deptType == 2) { | 
|---|
|  |  |  | this.hosplist.push(item); | 
|---|
|  |  |  | this.leavehospitaldistrictcodes.push(item.deptCode); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | taskdiaggetlist(this.queryParamsdept).then((res) => { | 
|---|
|  |  |  | if (res.code == 200) { | 
|---|
|  |  |  | let arr = res.rows; | 
|---|
|  |  |  | arr.forEach((item) => { | 
|---|
|  |  |  | getillnesslist({ | 
|---|
|  |  |  | icdcode: item.icd10code, | 
|---|
|  |  |  | }).then((res) => { | 
|---|
|  |  |  | item.icdname = res.rows[0].icdname; | 
|---|
|  |  |  | this.diagglist.push(item); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | this.illnesscodes.push(item.icd10code); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | taskopergetlist(this.queryParamsdept).then((res) => { | 
|---|
|  |  |  | if (res.code == 200) { | 
|---|
|  |  |  | let arr = res.rows; | 
|---|
|  |  |  | arr.forEach((item) => { | 
|---|
|  |  |  | this.operlist.push(item); | 
|---|
|  |  |  | this.operationcodes.push(item.opcode); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | getillnesslist() { | 
|---|
|  |  |  | getillnesslist({ | 
|---|
|  |  |  | pageNum: 1, | 
|---|
|  |  |  | pageSize: 1000, | 
|---|
|  |  |  | }).then((row) => { | 
|---|
|  |  |  | this.donorchargeList = res.rows; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | getbaseopera({ | 
|---|
|  |  |  | pageNum: 1, | 
|---|
|  |  |  | pageSize: 1000, | 
|---|
|  |  |  | }).then((row) => { | 
|---|
|  |  |  | this.baseoperaList = res.rows; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 手术查询 | 
|---|
|  |  |  | remoteopcode(name) { | 
|---|
|  |  |  | if (name) { | 
|---|
|  |  |  | getbaseopera({ | 
|---|
|  |  |  | pageNum: 1, | 
|---|
|  |  |  | pageSize: 1000, | 
|---|
|  |  |  | opdesc: name, | 
|---|
|  |  |  | }).then((res) => { | 
|---|
|  |  |  | this.baseoperaList = res.rows; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 任务科室删除触发 | 
|---|
|  |  |  | removetag(row) { | 
|---|
|  |  |  | let result = this.deptlist | 
|---|
|  |  |  | .filter((item) => item.deptCode == row) | 
|---|
|  |  |  | .map((item) => item.id); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (result.length) { | 
|---|
|  |  |  | taskdepthospgetsondel(result).then((res) => { | 
|---|
|  |  |  | if (res.code) { | 
|---|
|  |  |  | this.$modal.msgSuccess("删除成功"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 院区删除删除触发 | 
|---|
|  |  |  | removehpsp(row) { | 
|---|
|  |  |  | let result = this.hosplist | 
|---|
|  |  |  | .filter((item) => item.deptCode == row) | 
|---|
|  |  |  | .map((item) => item.id); | 
|---|
|  |  |  | if (result.length) { | 
|---|
|  |  |  | taskdepthospgetsondel(result).then((res) => { | 
|---|
|  |  |  | if (res.code) { | 
|---|
|  |  |  | this.$modal.msgSuccess("删除成功"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 手术删除触发 | 
|---|
|  |  |  | removeopera(row) { | 
|---|
|  |  |  | let result = this.operlist | 
|---|
|  |  |  | .filter((item) => item.opcode == row) | 
|---|
|  |  |  | .map((item) => item.id); | 
|---|
|  |  |  | if (result.length) { | 
|---|
|  |  |  | taskoperhospgetsondel(result).then((res) => { | 
|---|
|  |  |  | if (res.code) { | 
|---|
|  |  |  | this.$modal.msgSuccess("删除成功"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 疾病删除触发 | 
|---|
|  |  |  | removediagg(row) { | 
|---|
|  |  |  | let result = this.diagglist | 
|---|
|  |  |  | .filter((item) => item.icd10code == row) | 
|---|
|  |  |  | .map((item) => item.id); | 
|---|
|  |  |  | if (result.length) { | 
|---|
|  |  |  | taskdiaghospgetsondel(result).then((res) => { | 
|---|
|  |  |  | if (res.code) { | 
|---|
|  |  |  | this.diagglist = this.diagglist.filter( | 
|---|
|  |  |  | (item) => item.icd10code != row | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | this.$modal.msgSuccess("删除成功"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | getFollowupclassify() { | 
|---|
|  |  |  | getFollowupclassify({}).then((res) => { | 
|---|
|  |  |  | this.optionsclass = res.rows; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 新增派送患者 | 
|---|
|  |  |  | 
|---|
|  |  |  | this.variableList.splice(index, 1); | 
|---|
|  |  |  | row.isoperation = 3; | 
|---|
|  |  |  | this.delvariableList.push(row); | 
|---|
|  |  |  | console.log(index, row); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 时间---------- | 
|---|
|  |  |  | changeTime(row) { | 
|---|
|  |  |  | console.log(row, "时间"); | 
|---|
|  |  |  | this.processingTime(); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | Totaldate(row) { | 
|---|
|  |  |  | this.form.sendTimeslot = [{ begantime: row, endtime: row, xh: 1 }]; | 
|---|
|  |  |  | this.form.showTimeMorn = row; | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | changeTimeday(row) { | 
|---|
|  |  |  | const startDate = new Date(row[0]); | 
|---|
|  |  |  | 
|---|
|  |  |  | this.form.sendTimeslot = combinedData; | 
|---|
|  |  |  | // 展示数据临时存储日期、早、中、晚 | 
|---|
|  |  |  |  | 
|---|
|  |  |  | this.form.sendlimitabegin = this.daytime.join(","); | 
|---|
|  |  |  | if (this.time1) this.form.sendlimitaend = this.time1.join(","); | 
|---|
|  |  |  | if (this.time2) this.form.sendlimitnbegin = this.time2.join(","); | 
|---|
|  |  |  | if (this.time3) this.form.sendlimitnend = this.time3.join(","); | 
|---|
|  |  |  | console.log(combinedData, "combinedData"); | 
|---|
|  |  |  | this.form.showDate = this.daytime.join(","); | 
|---|
|  |  |  | if (this.time1) this.form.showTimeMorn = this.time1.join(","); | 
|---|
|  |  |  | if (this.time2) this.form.showTimeNoon = this.time2.join(","); | 
|---|
|  |  |  | if (this.time3) this.form.showTimeNight = this.time3.join(","); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 查看模版 | 
|---|
|  |  |  | previewGo() { | 
|---|
|  |  |  | this.$router.push({ | 
|---|
|  |  |  | path: "/knowledge/templateku/configurat/", | 
|---|
|  |  |  | query: { id: this.previewid, task: true, data: this.form }, | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 保存/更新任务模板 | 
|---|
|  |  |  | previewFn() { | 
|---|
|  |  |  | let id = this.Tasktemplate.id; | 
|---|
|  |  |  | this.Tasktemplate.id = null; | 
|---|
|  |  |  | this.Tasktemplate.ivrLibaTemplateScriptVOList.ivrTaskScriptTargetoptionList = | 
|---|
|  |  |  | this.Tasktemplate.ivrLibaTemplateScriptVOList.ivrLibaScriptTargetoptionList; | 
|---|
|  |  |  | this.Tasktemplate.ivrTaskTemplateScriptVOList = | 
|---|
|  |  |  | this.Tasktemplate.ivrLibaTemplateScriptVOList; | 
|---|
|  |  |  | this.Tasktemplate.ivrLibaTemplateTagList = null; | 
|---|
|  |  |  | this.Tasktemplate.tempDetpRelevances = null; | 
|---|
|  |  |  | this.Tasktemplate.libtemplateid = id; | 
|---|
|  |  |  | this.Tasktemplate.isoperation = 1; | 
|---|
|  |  |  | this.Tasktemplate.libtemplatename = this.Tasktemplate.templateName; | 
|---|
|  |  |  | TaskTemplatecomit(this.Tasktemplate).then((response) => { | 
|---|
|  |  |  | console.log(response); | 
|---|
|  |  |  | this.previewtf = false; | 
|---|
|  |  |  | this.form.templateid = response.data; | 
|---|
|  |  |  | this.form.libtemplateid = this.libId; | 
|---|
|  |  |  | this.form.templatename = this.libName; | 
|---|
|  |  |  | this.$modal.msgSuccess("选择模版成功"); | 
|---|
|  |  |  | if (Array.isArray(this.objyl.suitway)) { | 
|---|
|  |  |  | this.objyl.suitway = this.objyl.suitway.join(","); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.objyl.ivrLibaTemplateScriptVOList.forEach((item) => { | 
|---|
|  |  |  | item.ivrTaskScriptTargetoptionList = item.ivrLibaScriptTargetoptionList; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | this.objyl.ivrTaskTemplateScriptVOList = | 
|---|
|  |  |  | this.objyl.ivrLibaTemplateScriptVOList; | 
|---|
|  |  |  | this.objyl.isoperation = 1; | 
|---|
|  |  |  | if (this.form.id) { | 
|---|
|  |  |  | this.objyl.taskid = this.form.id; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | // if (!this.objyl.sendDay) { | 
|---|
|  |  |  | //   this.objyl.sendDay = "5"; | 
|---|
|  |  |  | // } | 
|---|
|  |  |  | if (this.form.templateid) { | 
|---|
|  |  |  | deleteTaskparticty(this.form.templateid).then((res) => { | 
|---|
|  |  |  | if (res.code == 200) { | 
|---|
|  |  |  | Taskparticty(this.objyl).then((response) => { | 
|---|
|  |  |  | this.previewtf = false; | 
|---|
|  |  |  | this.form.libtemplateid = this.objyl.id; | 
|---|
|  |  |  | this.form.templateid = response.data; | 
|---|
|  |  |  | this.putbelongDepts(response.data); | 
|---|
|  |  |  | this.form.templatename = this.objyl.templateName; | 
|---|
|  |  |  | this.$modal.msgSuccess("替换模板成功"); | 
|---|
|  |  |  | this.drawermb = false; //选择模板弹窗 | 
|---|
|  |  |  | this.previewtf = false; //预览 | 
|---|
|  |  |  | if (this.skip) { | 
|---|
|  |  |  | // 跳转前往修改 | 
|---|
|  |  |  | this.$router.push({ | 
|---|
|  |  |  | path: "/knowledge/taskub/", | 
|---|
|  |  |  | query: { id: response.data }, | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | Taskparticty(this.objyl).then((response) => { | 
|---|
|  |  |  | this.previewtf = false; | 
|---|
|  |  |  | this.form.libtemplateid = this.objyl.id; | 
|---|
|  |  |  | this.form.templateid = response.data; | 
|---|
|  |  |  | this.putbelongDepts(response.data); | 
|---|
|  |  |  | this.form.templatename = this.objyl.templateName; | 
|---|
|  |  |  | this.$modal.msgSuccess("选择模板成功"); | 
|---|
|  |  |  | this.drawermb = false; //选择模板弹窗 | 
|---|
|  |  |  | this.previewtf = false; //预览 | 
|---|
|  |  |  | if (this.skip) { | 
|---|
|  |  |  | // 跳转前往修改 | 
|---|
|  |  |  | this.$router.push({ | 
|---|
|  |  |  | path: "/knowledge/taskub/", | 
|---|
|  |  |  | query: { id: response.data }, | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 保存科室/病区 | 
|---|
|  |  |  | putbelongDepts(id) { | 
|---|
|  |  |  | this.tempDetpRelevanceslistform.forEach((item) => { | 
|---|
|  |  |  | item.tempid = id; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | this.tempbelongWardsform.forEach((item) => { | 
|---|
|  |  |  | item.tempid = id; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | depthospgetson(this.tempDetpRelevanceslistform).then((res) => { | 
|---|
|  |  |  | if (res.code == 200) { | 
|---|
|  |  |  | this.$modal.msgSuccess("科室更新成功"); | 
|---|
|  |  |  | this.tempDetpRelevanceslistform = []; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | depthospgetson(this.tempbelongWardsform).then((res) => { | 
|---|
|  |  |  | if (res.code == 200) { | 
|---|
|  |  |  | this.$modal.msgSuccess("病区更新成功"); | 
|---|
|  |  |  | this.tempbelongWardsform = []; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | checkSelectionChange(selectedValues, selectedOrder) { | 
|---|
|  |  |  | this.selectedOrder = selectedValues; | 
|---|
|  |  |  | console.log("当前选中:", selectedValues); | 
|---|
|  |  |  | console.log("选中顺序:", selectedOrder); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 服务形式选取 | 
|---|
|  |  |  | handleCheckedCitiesChange(row) { | 
|---|
|  |  |  | console.log(row, "服务"); | 
|---|
|  |  |  | this.foncheckList = this.checkboxlist.filter((obj) => | 
|---|
|  |  |  | row.includes(obj.value) | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 服务形式删除 | 
|---|
|  |  |  | handleClosetag(tag) { | 
|---|
|  |  |  | console.log(tag, "tag"); | 
|---|
|  |  |  | console.log(this.foncheckList, "foncheckList"); | 
|---|
|  |  |  | this.checkList = this.checkList.filter((item) => item != tag.value); | 
|---|
|  |  |  | this.foncheckList = this.foncheckList.filter( | 
|---|
|  |  |  | (obj) => obj.value !== tag.value | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 科室处理 | 
|---|
|  |  |  | Departmenttreatment() { | 
|---|
|  |  |  | if (!this.form.taskid) { | 
|---|
|  |  |  | this.templateor = true; | 
|---|
|  |  |  | MessageBox.confirm( | 
|---|
|  |  |  | "当前为新增任务未保存不可关联模板,是否先暂存模板保存任务后生效?", | 
|---|
|  |  |  | "功能提示", | 
|---|
|  |  |  | { | 
|---|
|  |  |  | confirmButtonText: "暂存模板", | 
|---|
|  |  |  | cancelButtonText: "取消", | 
|---|
|  |  |  | type: "warning", | 
|---|
|  |  |  | } | 
|---|
|  |  |  | ) | 
|---|
|  |  |  | .then(() => { | 
|---|
|  |  |  | if (Array.isArray(this.objyl.suitway)) { | 
|---|
|  |  |  | this.objyl.suitway = this.objyl.suitway.join(","); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.objyl.templateid = this.objyl.id; | 
|---|
|  |  |  | this.objyl.isoperation = 1; | 
|---|
|  |  |  | this.objyl.ivrLibaTemplateScriptVOList.forEach((item) => { | 
|---|
|  |  |  | item.ivrTaskScriptTargetoptionList = | 
|---|
|  |  |  | item.ivrLibaScriptTargetoptionList; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | this.objyl.ivrTaskTemplateScriptVOList = | 
|---|
|  |  |  | this.objyl.ivrLibaTemplateScriptVOList; | 
|---|
|  |  |  | this.form.ivrTaskTemplateVO = this.objyl; | 
|---|
|  |  |  | this.form.templatename = this.objyl.templateName; | 
|---|
|  |  |  | this.$modal.msgSuccess("暂存成功保存任务后模板失效"); | 
|---|
|  |  |  | this.drawermb = false; | 
|---|
|  |  |  | this.previewtf = false; | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | .catch(() => { | 
|---|
|  |  |  | this.drawermb = false; | 
|---|
|  |  |  | this.previewtf = false; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | setTimeout(() => { | 
|---|
|  |  |  | this.previewFn(); | 
|---|
|  |  |  | }, 1000); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 前往修改 | 
|---|
|  |  |  | Modifytemplate() { | 
|---|
|  |  |  | if (this.form.templateid && this.previewtftype) { | 
|---|
|  |  |  | this.$modal.confirm("是否前往修改任务模板详细内容?").then(() => { | 
|---|
|  |  |  | this.drawermb = false; //选择模板弹窗 | 
|---|
|  |  |  | this.previewtf = false; //预览 | 
|---|
|  |  |  | this.$router.push({ | 
|---|
|  |  |  | path: "/knowledge/taskub/", | 
|---|
|  |  |  | query: { id: this.form.templateid }, | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$modal | 
|---|
|  |  |  | .confirm("当前为基础预览是否创建任务模板并前往修改详情?") | 
|---|
|  |  |  | .then(() => { | 
|---|
|  |  |  | // 走取先绑定后修改操作 | 
|---|
|  |  |  | this.Departmenttreatment(); | 
|---|
|  |  |  | this.skip = true; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | 
|---|
|  |  |  | 0 0 6px 0 rgba(0, 0, 0, 0.04); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .examine-jic { | 
|---|
|  |  |  | margin: 20px; | 
|---|
|  |  |  | .headline { | 
|---|
|  |  |  | font-size: 24px; | 
|---|
|  |  |  | height: 40px; | 
|---|
|  |  |  | border-left: 5px solid #41a1be; | 
|---|
|  |  |  | padding-left: 5px; | 
|---|
|  |  |  | margin-bottom: 10px; | 
|---|
|  |  |  | display: flex; | 
|---|
|  |  |  | justify-content: space-between; | 
|---|
|  |  |  | // justify-content: space-between; | 
|---|
|  |  |  | .Add-details { | 
|---|
|  |  |  | font-size: 18px; | 
|---|
|  |  |  | color: #02a7f0; | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | // .leftvlue-jbxx { | 
|---|
|  |  |  | //   margin-bottom: 50px; | 
|---|
|  |  |  | //   font-size: 20px; | 
|---|
|  |  |  | //   span { | 
|---|
|  |  |  | //     position: absolute; | 
|---|
|  |  |  | //     right: 80px; | 
|---|
|  |  |  | //   } | 
|---|
|  |  |  | //   .demo-cascader { | 
|---|
|  |  |  | //     margin-right: 20px; | 
|---|
|  |  |  | //   } | 
|---|
|  |  |  | //   .PreviewTemplate { | 
|---|
|  |  |  | //     color: #02a7f0; | 
|---|
|  |  |  | //     cursor: pointer; | 
|---|
|  |  |  | //     font-size: 20px; | 
|---|
|  |  |  | //     margin: 0 20px; | 
|---|
|  |  |  | //   } | 
|---|
|  |  |  | // } | 
|---|
|  |  |  | .xinz-infs { | 
|---|
|  |  |  | font-size: 18px; | 
|---|
|  |  |  | line-height: 48px; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .el-tag + .el-tag { | 
|---|
|  |  |  | margin-left: 10px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .preview-left { | 
|---|
|  |  |  | margin: 20px; | 
|---|
|  |  |  | //   margin: 20px; | 
|---|
|  |  |  | padding: 30px; | 
|---|
|  |  |  | background: #ffff; | 
|---|
|  |  |  | 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); | 
|---|
|  |  |  | .topic-dev { | 
|---|
|  |  |  | // 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); | 
|---|
|  |  |  | .scriptTopic-dev { | 
|---|
|  |  |  | margin-bottom: 25px; | 
|---|
|  |  |  | font-size: 20px !important; | 
|---|
|  |  |  | .dev-text { | 
|---|
|  |  |  | 
|---|
|  |  |  | // } | 
|---|
|  |  |  | ::v-deep.el-radio-group { | 
|---|
|  |  |  | span { | 
|---|
|  |  |  | font-size: 24px; | 
|---|
|  |  |  | font-size: 18px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | ::v-deep.el-input.is-disabled .el-input__inner { | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | ::v-deep.el-checkbox-group { | 
|---|
|  |  |  | span { | 
|---|
|  |  |  | font-size: 24px; | 
|---|
|  |  |  | font-size: 18px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | </style> | 
|---|