|  |  | 
 |  |  |                   /> | 
 |  |  |                 </el-form-item> | 
 |  |  |                 <el-form-item label="服务形式"> | 
 |  |  |                   <el-checkbox-group | 
 |  |  |                   <el-radio-group | 
 |  |  |                     v-model="checkList" | 
 |  |  |                     @change="handleCheckedCitiesChange" | 
 |  |  |                   > | 
 |  |  |                     <el-checkbox | 
 |  |  |                     <el-radio | 
 |  |  |                       v-for="(item, index) in checkboxlist" | 
 |  |  |                       :key="index" | 
 |  |  |                       :label="item.value" | 
 |  |  |                        @change="checkboxChange($event, item.value)" | 
 |  |  |                       @change="checkboxChange($event, item.value)" | 
 |  |  |                     > | 
 |  |  |                       {{ item.label }}</el-checkbox | 
 |  |  |                       {{ item.label }}</el-radio | 
 |  |  |                     > | 
 |  |  |                   </el-checkbox-group> | 
 |  |  |                   </el-radio-group> | 
 |  |  |                 </el-form-item> | 
 |  |  |                 <div class="xinz-infs"> | 
 |  |  |                 <!-- <div class="xinz-infs"> | 
 |  |  |                   <el-form-item label="服务执行顺序" prop="daytime"> | 
 |  |  |                     <el-tag | 
 |  |  |                       :key="tag.label" | 
 |  |  | 
 |  |  |                       :disable-transitions="false" | 
 |  |  |                       @close="handleClosetag(tag)" | 
 |  |  |                     > | 
 |  |  |                       ({{index+1}}){{ tag.label }} | 
 |  |  |                       ({{ index + 1 }}){{ tag.label }} | 
 |  |  |                     </el-tag> | 
 |  |  |                   </el-form-item> | 
 |  |  |                 </div> | 
 |  |  |                 <el-form-item label="是否长期" prop="longTask"> | 
 |  |  |                 </div> --> | 
 |  |  |                 <el-form-item label="执行周期" prop="longTask"> | 
 |  |  |                   <el-radio-group v-model="form.longTask"> | 
 |  |  |                     <el-radio :label="0">普通任务</el-radio> | 
 |  |  |                     <el-radio :label="0">自定义周期</el-radio> | 
 |  |  |                     <el-radio :label="1">长期任务</el-radio> | 
 |  |  |                   </el-radio-group> | 
 |  |  |                 </el-form-item> | 
 |  |  |                 <el-row :gutter="20" v-if="form.longTask"> | 
 |  |  |                   <el-col :span="8"> | 
 |  |  |                     <el-form-item label="周期时间" prop="name"> | 
 |  |  |                       <el-input | 
 |  |  |                         v-model="form.sendDay" | 
 |  |  |                         placeholder="默认5天后" | 
 |  |  |                       ></el-input> | 
 |  |  |                     </el-form-item> | 
 |  |  |                   </el-col> | 
 |  |  |                 </el-row> | 
 |  |  |                 <el-form-item | 
 |  |  |                   label="执行设置" | 
 |  |  |                   prop="sendType" | 
 |  |  | 
 |  |  |                     </div> | 
 |  |  |                   </div> | 
 |  |  |                 </el-form-item> | 
 |  |  |                 <el-row> | 
 |  |  |                 <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="form.deptcode" | 
 |  |  |                         v-model="deptcodesWards" | 
 |  |  |                         @remove-tag="removetag" | 
 |  |  |                         style="width: 400px" | 
 |  |  |                         size="medium" | 
 |  |  |                         multiple | 
 |  |  |                         filterable | 
 |  |  |                         placeholder="请选择科室" | 
 |  |  |                       > | 
 |  |  | 
 |  |  |                       </el-select> </el-form-item | 
 |  |  |                   ></el-col> | 
 |  |  |                 </el-row> | 
 |  |  |                 <el-row> | 
 |  |  |                 <el-row v-if="form.appltype == 2"> | 
 |  |  |                   <el-col :span="20" | 
 |  |  |                     ><el-form-item label="适用病区" prop="region"> | 
 |  |  |                       <!-- <el-cascader | 
 |  |  |                       style="width: 400px" | 
 |  |  |                       v-model="form.leavehospitaldistrictcode" | 
 |  |  |                       :options="topicoptions" | 
 |  |  |                       :props="propstask" | 
 |  |  |                       :show-all-levels="false" | 
 |  |  |                       clearable | 
 |  |  |                     > | 
 |  |  |                       <template slot-scope="{ node, data }"> | 
 |  |  |                         <span>{{ data.deptName }}</span> | 
 |  |  |                         <span v-if="!node.isLeaf"> | 
 |  |  |                           ({{ data.children.length }}) | 
 |  |  |                         </span> | 
 |  |  |                       </template> | 
 |  |  |                     </el-cascader> --> | 
 |  |  |                       <el-select | 
 |  |  |                         v-model="form.leavehospitaldistrictcode" | 
 |  |  |                         v-model="leavehospitaldistrictcodes" | 
 |  |  |                         style="width: 400px" | 
 |  |  |                         @remove-tag="removehpsp" | 
 |  |  |                         size="medium" | 
 |  |  |                         multiple | 
 |  |  |                         filterable | 
 |  |  |                         placeholder="请选择病区" | 
 |  |  |                       > | 
 |  |  | 
 |  |  |                           :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 | 
 |  |  | 
 |  |  |                       placeholder="请点击右侧选择" | 
 |  |  |                     /> | 
 |  |  |                     <el-button | 
 |  |  |                       v-if=" | 
 |  |  |                         (form.templateid && form.sendState == 1) || | 
 |  |  |                         !form.templateid | 
 |  |  |                       " | 
 |  |  |                       style="margin-left: 10px" | 
 |  |  |                       type="primary" | 
 |  |  |                       icon="el-icon-edit" | 
 |  |  | 
 |  |  |                     ></el-button> | 
 |  |  |  | 
 |  |  |                     <el-button | 
 |  |  |                       v-if="form.templatename" | 
 |  |  |                       v-if="form.templateid" | 
 |  |  |                       type="success" | 
 |  |  |                       icon="el-icon-search" | 
 |  |  |                       @click="previewfnmb" | 
 |  |  |                       @click="previewfnmb()" | 
 |  |  |                       circle | 
 |  |  |                     ></el-button> | 
 |  |  |                   </el-form-item> | 
 |  |  | 
 |  |  |           </div> | 
 |  |  |         </div> | 
 |  |  |         <el-button type="primary" @click="laststep()">上一步</el-button> | 
 |  |  |         <el-button type="success" @click="submitForm('ruleForm')">{{ | 
 |  |  |         <el-button type="success" @click="submitForm('11')">{{ | 
 |  |  |           quote ? "立即创建" : "确认任务配置" | 
 |  |  |         }}</el-button> | 
 |  |  |         <el-button @click="resetForm('ruleForm')">重置</el-button> | 
 |  |  | 
 |  |  |               v-show="showSearch" | 
 |  |  |               label-width="98px" | 
 |  |  |             > | 
 |  |  |               <el-form-item label="主治医生:"> | 
 |  |  |                 <el-input | 
 |  |  |                   v-model="patientqueryParams.drname" | 
 |  |  |                   @keyup.enter.native="handleQuery" | 
 |  |  |                 ></el-input> | 
 |  |  |               </el-form-item> | 
 |  |  |               <el-form-item label="患者:"> | 
 |  |  |                 <el-input | 
 |  |  |                   v-model="patientqueryParams.name" | 
 |  |  | 
 |  |  |               <el-row :gutter="20"> | 
 |  |  |                 <el-col :span="14"> | 
 |  |  |                   <el-form-item label="可用状态" prop="isenable"> | 
 |  |  |                     <el-radio-group v-model="objyl.usestate"> | 
 |  |  |                     <el-radio-group v-model="objyl.isenable"> | 
 |  |  |                       <el-radio | 
 |  |  |                         v-for="(item, index) in usable" | 
 |  |  |                         :label="item.value" | 
 |  |  | 
 |  |  |                   <el-input v-model="objyl.templateName"></el-input> | 
 |  |  |                 </div> | 
 |  |  |               </el-form-item> | 
 |  |  |               <el-form-item label="随访方式" prop="suitway"> | 
 |  |  |                 <el-select | 
 |  |  |                   style="width: 400px" | 
 |  |  |                   v-model="objyl.suitway" | 
 |  |  |                   size="medium" | 
 |  |  |                   multiple | 
 |  |  |                   filterable | 
 |  |  |                   placeholder="请选择分类" | 
 |  |  |                 > | 
 |  |  |                   <el-option | 
 |  |  |                     class="ruleFormaa" | 
 |  |  |                     v-for="item in mode" | 
 |  |  |                     :key="item.value" | 
 |  |  |                     :label="item.label" | 
 |  |  |                     :value="item.value" | 
 |  |  |                   > | 
 |  |  |                   </el-option> | 
 |  |  |                 </el-select> | 
 |  |  |               </el-form-item> | 
 |  |  |               <el-row :gutter="20" v-if="form.longTask"> | 
 |  |  |                 <el-col :span="14"> | 
 |  |  |                   <el-form-item label="长期任务" prop="longTemp"> | 
 |  |  |                     <el-radio-group v-model="objyl.longTemp"> | 
 |  |  |                       <el-radio | 
 |  |  |                         v-for="(item, index) in longtype" | 
 |  |  |                         :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.sendDay" | 
 |  |  |                       placeholder="默认5天后" | 
 |  |  |                     ></el-input> | 
 |  |  |                   </el-form-item> | 
 |  |  |                 </el-col> | 
 |  |  |               </el-row> | 
 |  |  |               <el-row> | 
 |  |  |                 <el-col :span="20" | 
 |  |  |                   ><el-form-item label="适用科室" prop="region"> | 
 |  |  |                     <el-select | 
 |  |  |                       style="width: 400px" | 
 |  |  |                       v-model="tempDetpRelevanceslist" | 
 |  |  |                       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> | 
 |  |  |                 <el-col :span="20" | 
 |  |  |                   ><el-form-item label="适用病区" prop="region"> | 
 |  |  |                     <el-select | 
 |  |  |                       v-model="tempbelongWards" | 
 |  |  |                       style="width: 400px" | 
 |  |  |                       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> | 
 |  |  |  | 
 |  |  |               <div class="xinz-infs"> | 
 |  |  |                 <el-form-item> | 
 |  |  | 
 |  |  |  | 
 |  |  |       <span slot="footer" class="dialog-footer"> | 
 |  |  |         <!-- <el-button @click="previewGo">保存模板详情修改</el-button> --> | 
 |  |  |         <el-button type="primary" @click="Departmenttreatment" | 
 |  |  |           >保存使用</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> | 
 |  |  | 
 |  |  |         </div> | 
 |  |  |       </div> | 
 |  |  |     </el-drawer> | 
 |  |  |     <Optional-Form | 
 |  |  |       ref="child" | 
 |  |  |       :dialogVisiblepatient="dialogVisiblepatientjb" | 
 |  |  |       :overallCase="diagglist" | 
 |  |  |       @addoption="dialogVisiblepatientjb = false" | 
 |  |  |       @kkoption="dialogVisiblepatientjb = true" | 
 |  |  |     /> | 
 |  |  |   </div> | 
 |  |  | </template> | 
 |  |  |  | 
 |  |  | 
 |  |  | import store from "@/store"; | 
 |  |  | import { | 
 |  |  |   getTaskpatient, | 
 |  |  |   getlibrarylist, | 
 |  |  |   getillnesslist, | 
 |  |  |   getbaseopera, | 
 |  |  |   getFollowuplist, | 
 |  |  |   getvFollowup, | 
 |  |  |   Taskparticty, | 
 |  |  | 
 |  |  |   getillness, | 
 |  |  |   Editsingletask, | 
 |  |  |   getFollowupclassify, | 
 |  |  |   depthospgetsonlist, | 
 |  |  |   taskdepthospgetsonlist, | 
 |  |  |   taskdepthospgetsondel, | 
 |  |  |   taskoperhospgetsondel, | 
 |  |  |   taskdiaghospgetsondel, | 
 |  |  |   taskdiaggetlist, | 
 |  |  |   taskopergetlist, | 
 |  |  | } from "@/api/AiCentre/index"; | 
 |  |  | import { deptTreeSelect } from "@/api/system/user"; | 
 |  |  | import OptionalForm from "@/components/OptionalForm"; | 
 |  |  | import { MessageBox } from "element-ui"; | 
 |  |  |  | 
 |  |  | import SFtable from "@/components/SFtable"; //表格组件 | 
 |  |  |  | 
 |  |  | export default { | 
 |  |  |   name: "ServiceDetails", | 
 |  |  |   name: "particty", | 
 |  |  |   data() { | 
 |  |  |     return { | 
 |  |  |       title: "宣教内容列表", | 
 |  |  | 
 |  |  |       id: "", // | 
 |  |  |       previewid: "", //任务模板传递id | 
 |  |  |       libName: "", | 
 |  |  |       username: "", | 
 |  |  |       templateor: false, | 
 |  |  |       objyl: {}, | 
 |  |  |       overallCase: [], //选择患者总 | 
 |  |  |       allpids: [], | 
 |  |  | 
 |  |  |       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: [], | 
 |  |  |       usable: [ | 
 |  |  |         { value: "0", label: "可用" }, | 
 |  |  |         { value: "1", label: "停用" }, | 
 |  |  | 
 |  |  |       ], | 
 |  |  |  | 
 |  |  |       tableLabelwj: [ | 
 |  |  |         { label: "创建人", width: "", prop: "createBy" }, | 
 |  |  |         { label: "模板标题", width: "", prop: "templateName" }, | 
 |  |  |         { label: "随访描述", width: "", prop: "note" }, | 
 |  |  |         { label: "修改日期", width: "", prop: "updateTime" }, | 
 |  |  |         { label: "创建人", width: "", prop: "createBy" }, | 
 |  |  |       ], | 
 |  |  |       // 变量 | 
 |  |  |       tableLabelvariable: [ | 
 |  |  | 
 |  |  |       preachform: [ | 
 |  |  |         { label: "多媒体", value: 1 }, | 
 |  |  |         { label: "纸质", value: 2 }, | 
 |  |  |         { label: "电话", value: 3 }, | 
 |  |  |         { label: "智能语音", value: 3 }, | 
 |  |  |         { label: "短信", value: 4 }, | 
 |  |  |         { label: "微信公众号", value: 5 }, | 
 |  |  |         { label: "微信小程序", value: 6 }, | 
 |  |  | 
 |  |  |         pageNum: 1, // | 
 |  |  |         pageSize: 10, | 
 |  |  |       }, | 
 |  |  |       checkList: [], | 
 |  |  |       checkList: "", | 
 |  |  |       foncheckList: [], | 
 |  |  |       formatvalue: { | 
 |  |  |         format1: "", | 
 |  |  | 
 |  |  |         pageNum: 1, // | 
 |  |  |         pageSize: 10, | 
 |  |  |         topica: 1, //0全部1科室2病区 | 
 |  |  |         leaveldeptcodes: [], | 
 |  |  |         leavehospitaldistrictcodes: [], | 
 |  |  |       }, | 
 |  |  |       topicoptions: [{ children: [{ children: [] }] }], | 
 |  |  |       showSearch: true, // | 
 |  |  | 
 |  |  |       sonuserList: [], //选中患者列表 | 
 |  |  |       delvariableList: [], //删除变量临时存储 | 
 |  |  |       longtype: [ | 
 |  |  |         { value: 0, label: "普通任务" }, | 
 |  |  |         { value: 0, label: "自定义周期" }, | 
 |  |  |         { value: 1, label: "长期任务" }, | 
 |  |  |       ], | 
 |  |  |       variableList: [ | 
 |  |  | 
 |  |  |         templatename: "", | 
 |  |  |         templateid: null, | 
 |  |  |         libtemplateid: null, | 
 |  |  |         kcb: "亲爱的患者/家属,您好!我们是浙中医大二院的医护人员,为了更好地了解您的康复情况,请您抽一点宝贵时间,观看这份宣教资讯。", | 
 |  |  |         jsy: "请您注意休息和营养,生活上要劳逸结合,适当锻炼,戒烟限酒,保持心情舒畅,定期复诊。那本次宣教内容就到这里,祝您身体健康!", | 
 |  |  |         kcb: | 
 |  |  |           "亲爱的患者/家属,您好!我们是" + | 
 |  |  |           localStorage.getItem("orgname") + | 
 |  |  |           "的医护人员,为了更好地了解您的康复情况,请您抽一点宝贵时间,进行本次回访服务。", | 
 |  |  |         jsy: "请您注意休息和营养,生活上要劳逸结合,适当锻炼,戒烟限酒,保持心情舒畅,定期复诊。那本次回访内容就到这里,祝您身体健康!", | 
 |  |  |       }, | 
 |  |  |       taskoptions: [ | 
 |  |  |         { | 
 |  |  | 
 |  |  |         { | 
 |  |  |           value: "3", | 
 |  |  |           label: "体检病人", | 
 |  |  |         }, | 
 |  |  |         { | 
 |  |  |           value: "5", | 
 |  |  |           label: "手术病人", | 
 |  |  |         }, | 
 |  |  |       ], | 
 |  |  |       source: [ | 
 |  |  | 
 |  |  |  | 
 |  |  |       tasktypes: [ | 
 |  |  |         { | 
 |  |  |           value: 1, | 
 |  |  |           value: "1", | 
 |  |  |           label: "监测评估", | 
 |  |  |         }, | 
 |  |  |         { | 
 |  |  |           value: 2, | 
 |  |  |           value: "2", | 
 |  |  |           label: "出院随访", | 
 |  |  |         }, | 
 |  |  |         { | 
 |  |  |           value: 3, | 
 |  |  |           value: "3", | 
 |  |  |           label: "门诊随访", | 
 |  |  |         }, | 
 |  |  |         { | 
 |  |  |           value: 4, | 
 |  |  |           value: "4", | 
 |  |  |           label: "宣教关怀", | 
 |  |  |         }, | 
 |  |  |         { | 
 |  |  |           value: 5, | 
 |  |  |           value: "5", | 
 |  |  |           label: "复诊管理", | 
 |  |  |         }, | 
 |  |  |         // { | 
 |  |  |         //   value: "5", | 
 |  |  |         //   label: "满意度调查", | 
 |  |  |         // }, | 
 |  |  |         { | 
 |  |  |           value: 6, | 
 |  |  |           label: "满意度调查", | 
 |  |  |         }, | 
 |  |  |         { | 
 |  |  |           value: 7, | 
 |  |  |           value: "7", | 
 |  |  |           label: "患者报告", | 
 |  |  |         }, | 
 |  |  |  | 
 |  |  |         // { | 
 |  |  |         //   value: "8", | 
 |  |  |         //   label: "其他通知", | 
 |  |  |         // }, | 
 |  |  |         { | 
 |  |  |           value: 8, | 
 |  |  |           label: "其他通知", | 
 |  |  |           value: "9", | 
 |  |  |           label: "体检随访", | 
 |  |  |         }, | 
 |  |  |         // { | 
 |  |  |         //   value: "10", | 
 |  |  |         //   label: "医技随访", | 
 |  |  |         // }, | 
 |  |  |         { | 
 |  |  |           value: "11", | 
 |  |  |           label: "影像随访", | 
 |  |  |         }, | 
 |  |  |         { | 
 |  |  |           value: "12", | 
 |  |  |           label: "心电随访", | 
 |  |  |         }, | 
 |  |  |         // { | 
 |  |  |         //   value: "13", | 
 |  |  |         //   label: "专病随访", | 
 |  |  |         // }, | 
 |  |  |       ], | 
 |  |  |       // 科室/病区 | 
 |  |  |       belongWards: [], | 
 |  |  |       belongWards: [], | 
 |  |  |       deptlist: [], | 
 |  |  |       hosplist: [], | 
 |  |  |       diagglist: [], | 
 |  |  |       operlist: [], | 
 |  |  |       tempDetpRelevanceslist: [], //科室数据 | 
 |  |  |       tempDetpRelevanceslistform: [], //科室数据 | 
 |  |  |       tempbelongWards: [], //病区数据 | 
 |  |  | 
 |  |  |         sendType: [ | 
 |  |  |           { required: true, message: "发送设置不能为空", trigger: "blur" }, | 
 |  |  |         ], | 
 |  |  |         // deptcode: [ | 
 |  |  |         //   { required: true, message: "适用科室不能为空", trigger: "blur" }, | 
 |  |  |         // ], | 
 |  |  |         // leavehospitaldistrictcode: [ | 
 |  |  |         //   { required: true, message: "适用病区不能为空", trigger: "blur" }, | 
 |  |  |         // ], | 
 |  |  |       }, | 
 |  |  |       // 科室院区查询入参 | 
 |  |  |       queryParamsdept: { | 
 |  |  |         tempid: "", | 
 |  |  |         type: 11, | 
 |  |  |         type: 2, | 
 |  |  |       }, | 
 |  |  |       belongDepts: [], | 
 |  |  |       quote: false, | 
 |  |  |       serviceType: null, | 
 |  |  |     }; | 
 |  |  |   }, | 
 |  |  |   components: { SFtable }, | 
 |  |  |   components: { SFtable, OptionalForm }, | 
 |  |  |  | 
 |  |  |   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.newadd = this.$route.query.newadd; | 
 |  |  | 
 |  |  |     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 = { | 
 |  |  | 
 |  |  |             label: "纸质", | 
 |  |  |           }, | 
 |  |  |           { | 
 |  |  |             value: "4", | 
 |  |  |             label: "短信", | 
 |  |  |           }, | 
 |  |  |           { | 
 |  |  |             value: "5", | 
 |  |  |             label: "微信公众号", | 
 |  |  |           }, | 
 |  |  | 
 |  |  |         this.checkboxlist = [ | 
 |  |  |           { | 
 |  |  |             value: "3", | 
 |  |  |             label: "电话", | 
 |  |  |             label: "智能语音", | 
 |  |  |           }, | 
 |  |  |           { | 
 |  |  |             value: "4", | 
 |  |  | 
 |  |  |             label: "微信小程序", | 
 |  |  |           }, | 
 |  |  |  | 
 |  |  |           { | 
 |  |  |             value: "8", | 
 |  |  |             label: "智能机器人", | 
 |  |  |           }, | 
 |  |  |           // { | 
 |  |  |           //   value: "8", | 
 |  |  |           //   label: "智能机器人", | 
 |  |  |           // }, | 
 |  |  |         ]; | 
 |  |  |       } else if (this.form.serviceType == 7 || this.form.serviceType == 5) { | 
 |  |  |       } else if ( | 
 |  |  |         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.checkboxlist = [ | 
 |  |  |           { | 
 |  |  |             value: "1", | 
 |  |  | 
 |  |  |           }, | 
 |  |  |           { | 
 |  |  |             value: "3", | 
 |  |  |             label: "电话", | 
 |  |  |             label: "智能语音", | 
 |  |  |           }, | 
 |  |  |           { | 
 |  |  |             value: "4", | 
 |  |  | 
 |  |  |             value: "6", | 
 |  |  |             label: "微信小程序", | 
 |  |  |           }, | 
 |  |  |           { | 
 |  |  |             value: "7", | 
 |  |  |             label: "术后随访", | 
 |  |  |           }, | 
 |  |  |         ]; | 
 |  |  |       } else if (this.form.serviceType == 2 || this.form.serviceType == 3) { | 
 |  |  |       } else if ( | 
 |  |  |         this.form.serviceType == 2 || | 
 |  |  |         this.form.serviceType == 3 || | 
 |  |  |         this.form.serviceType == 4 | 
 |  |  |       ) { | 
 |  |  |         this.checkboxlist = [ | 
 |  |  |           { | 
 |  |  |             value: "1", | 
 |  |  | 
 |  |  |           }, | 
 |  |  |           { | 
 |  |  |             value: "3", | 
 |  |  |             label: "电话", | 
 |  |  |             label: "智能语音", | 
 |  |  |           }, | 
 |  |  |           { | 
 |  |  |             value: "4", | 
 |  |  | 
 |  |  |             label: "微信小程序", | 
 |  |  |           }, | 
 |  |  |  | 
 |  |  |           { | 
 |  |  |             value: "8", | 
 |  |  |             label: "智能机器人", | 
 |  |  |           }, | 
 |  |  |           // { | 
 |  |  |           //   value: "8", | 
 |  |  |           //   label: "智能机器人", | 
 |  |  |           // }, | 
 |  |  |         ]; | 
 |  |  |       } | 
 |  |  |       getFollowuplist(this.topqueryParams).then((response) => { | 
 |  |  | 
 |  |  |       }); | 
 |  |  |     }, | 
 |  |  |     // 保存 | 
 |  |  |     submitForm(formName) { | 
 |  |  |     submitForm(type) { | 
 |  |  |       if (this.templateor && type) this.templateor = false; | 
 |  |  |       if (this.time4 && this.form.sendType == 3) | 
 |  |  |         this.form.showTimeMorn = this.time4; | 
 |  |  |       this.form.sendTimeslot = [ | 
 |  |  | 
 |  |  |           xh: 1, | 
 |  |  |         }, | 
 |  |  |       ]; | 
 |  |  |       if (this.checkList[0]) { | 
 |  |  |         this.form.preachform = this.checkList.join(","); | 
 |  |  |       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 = []; | 
 |  |  |       } | 
 |  |  |       if (this.checkList) { | 
 |  |  |         this.form.preachform = this.checkList; | 
 |  |  |       } else { | 
 |  |  |         this.$modal.msgError("请选择服务类型"); | 
 |  |  |         return; | 
 |  |  |       } | 
 |  |  |  | 
 |  |  |       if ( | 
 |  |  |         this.deptcodesWards[0] || | 
 |  |  |         this.leavehospitaldistrictcodes[0] || | 
 |  |  |         this.diagglist[0] || | 
 |  |  |         this.operationcodes[0] | 
 |  |  |       ) { | 
 |  |  |       } else { | 
 |  |  |         this.$modal.msgError("请选择任务关联条件"); | 
 |  |  |         return; | 
 |  |  |       } | 
 |  |  |       if (!this.form.patTaskRelevances[0] && !this.form.longTask) { | 
 |  |  |         this.$modal.msgError("请选择病人"); | 
 |  |  |         return; | 
 |  |  |       } | 
 |  |  |       if (!this.form.templatename) { | 
 |  |  |  | 
 |  |  |       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.type = this.$route.query.type; | 
 |  |  |       } | 
 |  |  |       this.form.serviceType = this.serviceType; | 
 |  |  |       this.form.leaveldeptcodes = store.getters.belongDepts.map( | 
 |  |  |         (obj) => obj.deptCode | 
 |  |  |       ); | 
 |  |  |       this.form.leavehospitaldistrictcodes = store.getters.belongWards.map( | 
 |  |  |         (obj) => obj.districtCode | 
 |  |  |       ); | 
 |  |  |       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) { | 
 |  |  |           if (this.form.taskid) { | 
 |  |  |             this.$modal.msgSuccess("修改成功"); | 
 |  |  |           } else { | 
 |  |  |             this.puttaskid(res.data); | 
 |  |  |             this.$modal.msgSuccess("新增成功"); | 
 |  |  |           } | 
 |  |  |           this.$router.push({ | 
 |  |  | 
 |  |  |         } | 
 |  |  |       }); | 
 |  |  |     }, | 
 |  |  |     // 给任务模板赋值任务id | 
 |  |  |     puttaskid(data) { | 
 |  |  |       getTaskparticty(this.form.templateid).then((res) => { | 
 |  |  |         if (res.code == 200) { | 
 |  |  |           this.objyl = res.data; | 
 |  |  |           this.objyl.isoperation = 2; | 
 |  |  |           this.objyl.taskid = data.taskId; | 
 |  |  |           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("选择模板成功"); | 
 |  |  |           }); | 
 |  |  |         } | 
 |  |  |       }); | 
 |  |  |     }, | 
 |  |  |  | 
 |  |  |     // ----------------------表格子组件事件 | 
 |  |  |  | 
 |  |  |     // 选择预览 | 
 |  |  | 
 |  |  |         getvFollowup({ id: row.id }).then((res) => { | 
 |  |  |           if (res.code == 200) { | 
 |  |  |             this.objyl = res.data; | 
 |  |  |             if (this.form.longTask) { | 
 |  |  |               this.objyl.longTemp = 1; | 
 |  |  |             } | 
 |  |  |             this.queryParamsdept.type = 1; | 
 |  |  |             // if (this.form.longTask) { | 
 |  |  |             //   this.objyl.sendDay = 5; | 
 |  |  |             // } | 
 |  |  |             this.queryParamsdept.type = 2; | 
 |  |  |             this.queryParamsdept.tempid = row.id; | 
 |  |  |             this.listDept(); | 
 |  |  |  | 
 |  |  |             this.tempDetpRelevanceslist = []; | 
 |  |  |             this.tempbelongWards = []; | 
 |  |  |             this.objyl.suitway = this.objyl.suitway.split(","); | 
 |  |  |             this.questionList = res.data.ivrLibaTemplateScriptVOList; | 
 |  |  |             this.getillness(row.id); | 
 |  |  | 
 |  |  |           if (this.objyl.suitway) | 
 |  |  |             this.objyl.suitway = this.objyl.suitway.split(","); | 
 |  |  |           this.queryParamsdept.tempid = this.form.templateid; | 
 |  |  |           this.queryParamsdept.type = 11; | 
 |  |  |           this.queryParamsdept.type = 21; | 
 |  |  |           // 疾病 | 
 |  |  |           this.getillness(this.form.libtemplateid); | 
 |  |  |           // 执行获取该任务模板id | 
 |  |  |           this.listDept(); | 
 |  |  |           this.previewtf = true; | 
 |  |  |  | 
 |  |  |           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 { | 
 |  |  |             } | 
 |  |  |           }); | 
 |  |  |         } | 
 |  |  | 
 |  |  |             } | 
 |  |  |           }); | 
 |  |  |         }); | 
 |  |  |  | 
 |  |  |         const Aarr = Variablist.filter( | 
 |  |  |           (obj, index, self) => | 
 |  |  |             index === | 
 |  |  | 
 |  |  |           { label: "出院日期", width: "150", prop: "endtime" }, | 
 |  |  |           { label: "患者", width: "", prop: "name" }, | 
 |  |  |           { label: "身份证", width: "200", prop: "idcardno" }, | 
 |  |  |         { label: "电话号码", width: "180", prop: "telcode" }, | 
 |  |  |           { label: "电话号码", width: "180", prop: "telcode" }, | 
 |  |  |           { label: "性别", width: "", prop: "sex" }, | 
 |  |  |           { label: "年龄", width: "", prop: "age" }, | 
 |  |  |           { label: "出院天数", width: "", prop: "endDay" }, | 
 |  |  | 
 |  |  |           { label: "入院日期", width: "150", prop: "starttime" }, | 
 |  |  |           { label: "患者", width: "", prop: "name" }, | 
 |  |  |           { label: "身份证", width: "200", prop: "idcardno" }, | 
 |  |  |         { label: "电话号码", width: "180", prop: "telcode" }, | 
 |  |  |           { label: "电话号码", width: "180", prop: "telcode" }, | 
 |  |  |           { label: "性别", width: "", prop: "sex" }, | 
 |  |  |           { label: "年龄", width: "", prop: "age" }, | 
 |  |  |           { label: "出院天数", width: "", prop: "endDay" }, | 
 |  |  | 
 |  |  |         this.patientqueryParams.cry = 1; | 
 |  |  |       } else if (this.patientqueryParams.allhosp == 4) { | 
 |  |  |         this.patientqueryParams.cry = 0; | 
 |  |  |         this.patientqueryParams.allhosp = "1"; | 
 |  |  |       } | 
 |  |  |       // 来源判断 | 
 |  |  |  | 
 |  |  | 
 |  |  |           item.deptName = item.dept; | 
 |  |  |           item.admindate = item.inhosptime; | 
 |  |  |           item.sfzh = item.idcardno; | 
 |  |  |           if (this.patientqueryParams.allhosp == 6) { | 
 |  |  |             item.patfrom = 1; | 
 |  |  |           } | 
 |  |  |           this.overallCase.push(item); | 
 |  |  |           this.form.patTaskRelevances.push(item); | 
 |  |  |         } | 
 |  |  | 
 |  |  |           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("删除成功"); | 
 |  |  |         }); | 
 |  |  |     }, | 
 |  |  | 
 |  |  |           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(); | 
 |  |  |     }, | 
 |  |  |     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.form = { | 
 |  |  |         patTaskRelevances: [], | 
 |  |  |         sendType: 1, | 
 |  |  |         sendDay: 5, | 
 |  |  |         templatename: "", | 
 |  |  |         templateid: null, | 
 |  |  |         libtemplateid: null, | 
 |  |  |         kcb: "亲爱的患者/家属,您好!我们是浙中医大二院的医护人员,为了更好地了解您的康复情况,请您抽一点宝贵时间,完成这份随访随访。", | 
 |  |  |         kcb: | 
 |  |  |           "亲爱的患者/家属,您好!我们是" + | 
 |  |  |           localStorage.getItem("orgname") + | 
 |  |  |           "的医护人员,为了更好地了解您的康复情况,请您抽一点宝贵时间,进行本次回访服务。", | 
 |  |  |         jsy: "请您注意休息和营养,生活上要劳逸结合,适当锻炼,戒烟限酒,保持心情舒畅,定期复诊。那本次回访就到这里,祝您身体健康!", | 
 |  |  |       }; | 
 |  |  |  | 
 |  |  | 
 |  |  |               ? this.form.patTaskRelevances | 
 |  |  |               : []; | 
 |  |  |             this.overallCase = this.form.patTaskRelevances.concat(); | 
 |  |  |             this.checkList = this.form.preachform.split(","); | 
 |  |  |             this.checkList = this.form.preachform; | 
 |  |  |  | 
 |  |  |             this.overallCase.forEach((item) => { | 
 |  |  |               if (item.endtime) { | 
 |  |  | 
 |  |  |                 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) | 
 |  |  | 
 |  |  |           } 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 = []; | 
 |  |  | 
 |  |  |     }, | 
 |  |  |     // 获取科室列表 | 
 |  |  |     listDept() { | 
 |  |  |       this.tempDetpRelevanceslist = []; | 
 |  |  |       this.tempbelongWards = []; | 
 |  |  |       depthospgetsonlist(this.queryParamsdept).then((res) => { | 
 |  |  |       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.tempDetpRelevanceslist.push(item.deptCode); | 
 |  |  |               this.deptcodesWards.push(item.deptCode); | 
 |  |  |             } else if (item.deptType == 2) { | 
 |  |  |               this.hosplist.push(item); | 
 |  |  |               this.tempbelongWards.push(item.deptCode); | 
 |  |  |               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.objyl.suitway = this.objyl.suitway.join(","); | 
 |  |  |       } | 
 |  |  |       this.objyl.ivrLibaTemplateScriptVOList.forEach((item) => { | 
 |  |  |         item.ivrTaskTemplateTargetoptions = item.ivrLibaScriptTargetoptionList; | 
 |  |  |         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) { | 
 |  |  | 
 |  |  |               this.form.templateid = response.data; | 
 |  |  |               this.putbelongDepts(response.data); | 
 |  |  |               this.form.templatename = this.objyl.templateName; | 
 |  |  |               this.$modal.msgSuccess("选择模板成功"); | 
 |  |  |               this.$modal.msgSuccess("替换模板成功"); | 
 |  |  |               this.drawermb = false; //选择模板弹窗 | 
 |  |  |               this.previewtf = false; //预览 | 
 |  |  |               if (this.skip) { | 
 |  |  |                 // 跳转前往修改 | 
 |  |  |                 this.$router.push({ | 
 |  |  |                   path: "/knowledge/taskub/", | 
 |  |  |                   query: { id: 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 }, | 
 |  |  |             }); | 
 |  |  |           } | 
 |  |  |         }); | 
 |  |  |       } | 
 |  |  |     }, | 
 |  |  | 
 |  |  |         } | 
 |  |  |       }); | 
 |  |  |     }, | 
 |  |  |     checkboxChange(checked, value){ | 
 |  |  |  | 
 |  |  |     }, | 
 |  |  |     checkboxChange(checked, value) {}, | 
 |  |  |     // 服务形式选取 | 
 |  |  |     handleCheckedCitiesChange(row) { | 
 |  |  |       console.log(row, "服务"); | 
 |  |  | 
 |  |  |       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); | 
 |  |  |       console.log(this.checkList, "checkList"); | 
 |  |  |  | 
 |  |  |       this.foncheckList = this.foncheckList.filter( | 
 |  |  |         (obj) => obj.value !== tag.value | 
 |  |  |       ); | 
 |  |  |     }, | 
 |  |  |     // 科室处理 | 
 |  |  |     Departmenttreatment() { | 
 |  |  |       this.tempDetpRelevanceslist.forEach((item) => { | 
 |  |  |         this.tempDetpRelevanceslistform.push({ | 
 |  |  |           deptType: 1, | 
 |  |  |           longTemp: this.form.longTask, | 
 |  |  |           deptCode: item, | 
 |  |  |           tempid: null, | 
 |  |  |           type: 11, | 
 |  |  |       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 }, | 
 |  |  |           }); | 
 |  |  |         }); | 
 |  |  |       }); | 
 |  |  |  | 
 |  |  |       this.tempbelongWards.forEach((item) => { | 
 |  |  |         this.tempbelongWardsform.push({ | 
 |  |  |           deptType: 2, | 
 |  |  |           longTemp: this.form.longTask, | 
 |  |  |           deptCode: item, | 
 |  |  |           tempid: null, | 
 |  |  |           type: 11, | 
 |  |  |         }); | 
 |  |  |       }); | 
 |  |  |       console.log(33); | 
 |  |  |  | 
 |  |  |       setTimeout(() => { | 
 |  |  |         this.previewFn(); | 
 |  |  |       }, 1000); | 
 |  |  |       } else { | 
 |  |  |         this.$modal | 
 |  |  |           .confirm("当前为基础预览是否创建任务模板并前往修改详情?") | 
 |  |  |           .then(() => { | 
 |  |  |             // 走取先绑定后修改操作 | 
 |  |  |             this.Departmenttreatment(); | 
 |  |  |             this.skip = true; | 
 |  |  |           }); | 
 |  |  |       } | 
 |  |  |     }, | 
 |  |  |   }, | 
 |  |  | }; |