|  |  |  | 
|---|
|  |  |  | label-width="98px" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-form-item label="任务名称"> | 
|---|
|  |  |  | <el-input v-model="topqueryParams.name"></el-input> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | v-model="topqueryParams.taskName" | 
|---|
|  |  |  | @keyup.enter.native="handleQuery" | 
|---|
|  |  |  | ></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label="审核人"> | 
|---|
|  |  |  | <el-input v-model="topqueryParams.name"></el-input> | 
|---|
|  |  |  | <el-form-item label="创建人"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | v-model="topqueryParams.createBy" | 
|---|
|  |  |  | @keyup.enter.native="handleQuery" | 
|---|
|  |  |  | ></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label="审核时间"> | 
|---|
|  |  |  | <el-form-item label="发送时间"> | 
|---|
|  |  |  | <el-date-picker | 
|---|
|  |  |  | v-model="dateRange" | 
|---|
|  |  |  | style="width: 240px" | 
|---|
|  |  |  | 
|---|
|  |  |  | end-placeholder="结束日期" | 
|---|
|  |  |  | ></el-date-picker> | 
|---|
|  |  |  | </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 label="任务模板" prop="status"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | v-model="topqueryParams.templatename" | 
|---|
|  |  |  | @keyup.enter.native="handleQuery" | 
|---|
|  |  |  | ></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label="模版" prop="status"> | 
|---|
|  |  |  | <el-select v-model="topqueryParams.topic" placeholder="请选择"> | 
|---|
|  |  |  | <el-form-item label="任务状态" prop="status"> | 
|---|
|  |  |  | <el-select v-model="topqueryParams.sendState" 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" | 
|---|
|  |  |  | v-for="item in dict.type.task_status" | 
|---|
|  |  |  | :key="item.value" | 
|---|
|  |  |  | :label="item.label" | 
|---|
|  |  |  | :value="item.value" | 
|---|
|  |  |  | 
|---|
|  |  |  | <el-divider></el-divider> | 
|---|
|  |  |  | <el-row :gutter="10" class="mb8"> | 
|---|
|  |  |  | <el-col :span="1.5"> | 
|---|
|  |  |  | <el-select | 
|---|
|  |  |  | @change="handleQuerytask" | 
|---|
|  |  |  | v-model="tasktopic" | 
|---|
|  |  |  | placeholder="请选择服务类型" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option | 
|---|
|  |  |  | v-for="item in taskoptions" | 
|---|
|  |  |  | :key="item.value" | 
|---|
|  |  |  | :label="item.label" | 
|---|
|  |  |  | :value="item.value" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-option> | 
|---|
|  |  |  | </el-select> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="1.5"> | 
|---|
|  |  |  | <el-select | 
|---|
|  |  |  | @change="handleQuery" | 
|---|
|  |  |  | v-model="topqueryParams.type" | 
|---|
|  |  |  | placeholder="请选择执行类型" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option | 
|---|
|  |  |  | v-for="item in longtermlist" | 
|---|
|  |  |  | :key="item.value" | 
|---|
|  |  |  | :label="item.label" | 
|---|
|  |  |  | :value="item.value" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-option> | 
|---|
|  |  |  | </el-select> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="1.5"> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | type="primary" | 
|---|
|  |  |  | plain | 
|---|
|  |  |  | icon="el-icon-plus" | 
|---|
|  |  |  | size="medium" | 
|---|
|  |  |  | @click="handleAdd" | 
|---|
|  |  |  | v-hasPermi="['system:user:add']" | 
|---|
|  |  |  | >新增</el-button | 
|---|
|  |  |  | :disabled="!tasktopic" | 
|---|
|  |  |  | >新建任务</el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="1.5"> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | type="success" | 
|---|
|  |  |  | plain | 
|---|
|  |  |  | icon="el-icon-edit" | 
|---|
|  |  |  | size="medium" | 
|---|
|  |  |  | :disabled="single" | 
|---|
|  |  |  | @click="handleUpdate" | 
|---|
|  |  |  | v-hasPermi="['system:user:edit']" | 
|---|
|  |  |  | >修改</el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="1.5"> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | type="danger" | 
|---|
|  |  |  | plain | 
|---|
|  |  |  | icon="el-icon-delete" | 
|---|
|  |  |  | size="medium" | 
|---|
|  |  |  | :disabled="multiple" | 
|---|
|  |  |  | @click="handleDelete" | 
|---|
|  |  |  | v-hasPermi="['system:user:remove']" | 
|---|
|  |  |  | >删除</el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="19"> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!-- <el-col :span="19"> | 
|---|
|  |  |  | <div class="documentf"> | 
|---|
|  |  |  | <div class="document"> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | </el-col> --> | 
|---|
|  |  |  | <!-- <el-col :span="1.5"> </el-col> --> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <!-- <right-toolbar | 
|---|
|  |  |  | 
|---|
|  |  |  | @queryTable="getList" | 
|---|
|  |  |  | :columns="columns" | 
|---|
|  |  |  | ></right-toolbar> --> | 
|---|
|  |  |  | <el-table | 
|---|
|  |  |  | v-loading="loading" | 
|---|
|  |  |  | :data="userList" | 
|---|
|  |  |  | @selection-change="handleSelectionChange" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-table-column type="selection" width="50" align="center" /> | 
|---|
|  |  |  | <el-table-column label="序号" align="center" key="id" prop="id" /> | 
|---|
|  |  |  | <el-table v-loading="loading" :data="userList"> | 
|---|
|  |  |  | <!-- <el-table-column | 
|---|
|  |  |  | label="序号" | 
|---|
|  |  |  | fixed | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | key="taskid" | 
|---|
|  |  |  | prop="taskid" | 
|---|
|  |  |  | /> --> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | label="任务名称" | 
|---|
|  |  |  | fixed | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | sortable | 
|---|
|  |  |  | key="name" | 
|---|
|  |  |  | prop="name" | 
|---|
|  |  |  | key="taskName" | 
|---|
|  |  |  | prop="taskName" | 
|---|
|  |  |  | :show-overflow-tooltip="true" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | label="任务描述" | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | key="describe" | 
|---|
|  |  |  | prop="describe" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | label="待执行/总任务" | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | key="nickName" | 
|---|
|  |  |  | prop="nickName" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | label="状态" | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | key="phonenumber" | 
|---|
|  |  |  | prop="phonenumber" | 
|---|
|  |  |  | width="120" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | label="审核人" | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | key="create_by" | 
|---|
|  |  |  | prop="create_by" | 
|---|
|  |  |  | width="120" | 
|---|
|  |  |  | key="taskDesc" | 
|---|
|  |  |  | prop="taskDesc" | 
|---|
|  |  |  | :show-overflow-tooltip="true" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | label="审核时间" | 
|---|
|  |  |  | sortable | 
|---|
|  |  |  | label="服务项目" | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | prop="create_time" | 
|---|
|  |  |  | width="160" | 
|---|
|  |  |  | key="templatename" | 
|---|
|  |  |  | prop="templatename" | 
|---|
|  |  |  | :show-overflow-tooltip="true" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | label="总任务/已随访" | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | key="nickName" | 
|---|
|  |  |  | width="120" | 
|---|
|  |  |  | prop="nickName" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <template slot-scope="scope"> | 
|---|
|  |  |  | <span>{{ parseTime(scope.row.create_time) }}</span> | 
|---|
|  |  |  | <span | 
|---|
|  |  |  | >{{ | 
|---|
|  |  |  | scope.row.wfs || scope.row.wfs == 0 | 
|---|
|  |  |  | ? scope.row.wfs + scope.row.yfs | 
|---|
|  |  |  | : "" | 
|---|
|  |  |  | }}/{{ scope.row.yfs }}</span | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | label="是否长期任务" | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | key="longTask" | 
|---|
|  |  |  | prop="longTask" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <template slot-scope="scope"> | 
|---|
|  |  |  | <span>{{ scope.row.longTask ? "长期任务" : "非长期" }}</span> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | label="状态" | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | key="sendState" | 
|---|
|  |  |  | prop="sendState" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <template slot-scope="scope"> | 
|---|
|  |  |  | <dict-tag | 
|---|
|  |  |  | :options="dict.type.task_status" | 
|---|
|  |  |  | :value="scope.row.sendState" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | label="创建人" | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | key="create_by" | 
|---|
|  |  |  | prop="create_by" | 
|---|
|  |  |  | width="120" | 
|---|
|  |  |  | key="createBy" | 
|---|
|  |  |  | prop="createBy" | 
|---|
|  |  |  | :show-overflow-tooltip="true" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | label="创建时间" | 
|---|
|  |  |  | sortable | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | prop="create_time" | 
|---|
|  |  |  | width="160" | 
|---|
|  |  |  | prop="createTime" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <template slot-scope="scope"> | 
|---|
|  |  |  | <span>{{ parseTime(scope.row.create_time) }}</span> | 
|---|
|  |  |  | <span>{{ formatTime(scope.row.createTime) }}</span> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | label="操作" | 
|---|
|  |  |  | fixed="right" | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | width="120" | 
|---|
|  |  |  | width="240" | 
|---|
|  |  |  | class-name="small-padding fixed-width" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <template slot-scope="scope"> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | v-if=" | 
|---|
|  |  |  | (scope.row.sendState == 1 || scope.row.sendState == 3) && | 
|---|
|  |  |  | !scope.row.longTask | 
|---|
|  |  |  | " | 
|---|
|  |  |  | size="medium" | 
|---|
|  |  |  | type="text" | 
|---|
|  |  |  | @click="handleUpdate(scope.row)" | 
|---|
|  |  |  | v-hasPermi="['system:user:edit']" | 
|---|
|  |  |  | @click="sponsor(scope.row)" | 
|---|
|  |  |  | ><span class="button-zx" | 
|---|
|  |  |  | ><i class="el-icon-s-promotion"></i>开始执行</span | 
|---|
|  |  |  | ><i class="el-icon-s-promotion"></i>发起</span | 
|---|
|  |  |  | ></el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | label="任务详情" | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | width="200" | 
|---|
|  |  |  | class-name="small-padding fixed-width" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <template slot-scope="scope"> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | size="medium" | 
|---|
|  |  |  | type="text" | 
|---|
|  |  |  | @click="handleUpdate(scope.row)" | 
|---|
|  |  |  | v-hasPermi="['system:user:edit']" | 
|---|
|  |  |  | ><span class="button-xq" | 
|---|
|  |  |  | ><i class="el-icon-s-data"></i>详情</span | 
|---|
|  |  |  | ></el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <!-- <el-button | 
|---|
|  |  |  | size="medium" | 
|---|
|  |  |  | type="text" | 
|---|
|  |  |  | @click="handleUpdate(scope.row)" | 
|---|
|  |  |  | v-hasPermi="['system:user:edit']" | 
|---|
|  |  |  | ><span class="button-bb" | 
|---|
|  |  |  | ><i class="el-icon-s-order"></i>报表</span | 
|---|
|  |  |  | <!-- <el-button size="medium" type="text" @click="newAdd(scope.row)" | 
|---|
|  |  |  | ><span class="button-xj" | 
|---|
|  |  |  | ><i class="el-icon-circle-plus-outline"></i>终止</span | 
|---|
|  |  |  | ></el-button | 
|---|
|  |  |  | > --> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | size="medium" | 
|---|
|  |  |  | type="text" | 
|---|
|  |  |  | @click="handleUpdate(scope.row, 1)" | 
|---|
|  |  |  | ><span class="button-xj">依照新增</span></el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | v-if="scope.row.sendState != 5" | 
|---|
|  |  |  | size="medium" | 
|---|
|  |  |  | type="text" | 
|---|
|  |  |  | @click="handleAddpatient(scope.row.taskid, scope.row.type)" | 
|---|
|  |  |  | ><span class="button-hz" | 
|---|
|  |  |  | ><i class="el-icon-circle-plus-outline"></i>新增患者</span | 
|---|
|  |  |  | ></el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | v-if="scope.row.sendState == 2" | 
|---|
|  |  |  | size="medium" | 
|---|
|  |  |  | type="text" | 
|---|
|  |  |  | @click="stop(scope.row)" | 
|---|
|  |  |  | ><span class="button-zt">暂停</span></el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | label="任务详情" | 
|---|
|  |  |  | fixed="right" | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | width="240" | 
|---|
|  |  |  | class-name="small-padding fixed-width" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <template slot-scope="scope"> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | size="medium" | 
|---|
|  |  |  | type="text" | 
|---|
|  |  |  | @click="handleUpdate(scope.row)" | 
|---|
|  |  |  | v-hasPermi="['system:user:edit']" | 
|---|
|  |  |  | ><span class="button-xq" | 
|---|
|  |  |  | ><i class="el-icon-s-data"></i>详情</span | 
|---|
|  |  |  | ></el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-button size="medium" type="text" @click="deletefn(scope.row)" | 
|---|
|  |  |  | ><span class="button-sc" | 
|---|
|  |  |  | ><i class="el-icon-delete"></i>删除</span | 
|---|
|  |  |  | ></el-button | 
|---|
|  |  |  | 
|---|
|  |  |  | @pagination="getList" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <!-- 添加或修改门诊随访对话框 --> | 
|---|
|  |  |  | <!-- 确认发起对话框 --> | 
|---|
|  |  |  | <el-dialog | 
|---|
|  |  |  | :title="title" | 
|---|
|  |  |  | :visible.sync="addalteropen" | 
|---|
|  |  |  | width="700px" | 
|---|
|  |  |  | append-to-body | 
|---|
|  |  |  | title="任务发起确认" | 
|---|
|  |  |  | :visible.sync="taskformVisible" | 
|---|
|  |  |  | width="50%" | 
|---|
|  |  |  | :before-close="handleClose" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-form ref="form" :model="form" label-width="100px"> | 
|---|
|  |  |  | <el-row :gutter="20"> | 
|---|
|  |  |  | <el-col :span="12" | 
|---|
|  |  |  | ><el-form-item label="任务名称"> | 
|---|
|  |  |  | <el-input v-model="form.name"></el-input> </el-form-item | 
|---|
|  |  |  | ></el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <el-row :gutter="20"> | 
|---|
|  |  |  | <el-col :span="24" | 
|---|
|  |  |  | ><el-form-item label="所属科室"> | 
|---|
|  |  |  | <el-select v-model="form.region" placeholder="请选择科室"> | 
|---|
|  |  |  | <el-option label="区域一" value="shanghai"></el-option> | 
|---|
|  |  |  | <el-option label="区域二" value="beijing"></el-option> | 
|---|
|  |  |  | </el-select> </el-form-item></el-col | 
|---|
|  |  |  | ></el-row> | 
|---|
|  |  |  | <el-row :gutter="20"> | 
|---|
|  |  |  | <el-col :span="24" | 
|---|
|  |  |  | ><el-form-item label="随访类型"> | 
|---|
|  |  |  | <el-select v-model="form.region" placeholder="请选择随访类型"> | 
|---|
|  |  |  | <el-option label="区域一" value="shanghai"></el-option> | 
|---|
|  |  |  | <el-option label="区域二" value="beijing"></el-option> | 
|---|
|  |  |  | </el-select> </el-form-item | 
|---|
|  |  |  | ></el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <el-row :gutter="20"> | 
|---|
|  |  |  | <el-col :span="24"> | 
|---|
|  |  |  | <el-form-item label="服务模块"> | 
|---|
|  |  |  | <el-select v-model="form.region" placeholder="请选择模块"> | 
|---|
|  |  |  | <el-option label="区域一" value="shanghai"></el-option> | 
|---|
|  |  |  | <el-option label="区域二" value="beijing"></el-option> | 
|---|
|  |  |  | </el-select> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <el-row :gutter="20"> | 
|---|
|  |  |  | <el-col :span="24"> | 
|---|
|  |  |  | <el-form-item label="门诊随访要求"> | 
|---|
|  |  |  | <el-input type="textarea" v-model="form.desc"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | </el-form> | 
|---|
|  |  |  | <div slot="footer" class="dialog-footer"> | 
|---|
|  |  |  | <el-button type="primary" @click="submitForm">提 交</el-button> | 
|---|
|  |  |  | <el-button @click="cancel">返 回</el-button> | 
|---|
|  |  |  | <el-tabs type="border-card" v-model="activname"> | 
|---|
|  |  |  | <el-tab-pane> | 
|---|
|  |  |  | <span slot="label"><i class="el-icon-date"></i> 正常发起</span> | 
|---|
|  |  |  | <div style="font-size: 20px; color: red; margin-bottom: 20px"> | 
|---|
|  |  |  | 请确认任务"{{ taskform.taskName }}"的执行时间 | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div | 
|---|
|  |  |  | style="font-size: 18px; margin-bottom: 20px" | 
|---|
|  |  |  | v-if="taskform.showDate" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | 执行日期:<span | 
|---|
|  |  |  | style="font-size: 18px; color: #2376b7; margin-bottom: 20px" | 
|---|
|  |  |  | >{{ taskform.showDate[0] }} 至 {{ taskform.showDate[1] }}</span | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div | 
|---|
|  |  |  | style="font-size: 18px; margin-bottom: 20px" | 
|---|
|  |  |  | v-if="taskform.showTimeMorn[0]" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | 第一时间段:<span | 
|---|
|  |  |  | style="font-size: 18px; color: #2376b7; margin-bottom: 20px" | 
|---|
|  |  |  | >{{ taskform.showTimeMorn[0] }} 至 | 
|---|
|  |  |  | {{ taskform.showTimeMorn[1] }}</span | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div | 
|---|
|  |  |  | style="font-size: 18px; margin-bottom: 20px" | 
|---|
|  |  |  | v-if="taskform.showTimeNight[0]" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | 第二时间段:<span | 
|---|
|  |  |  | style="font-size: 18px; color: #2376b7; margin-bottom: 20px" | 
|---|
|  |  |  | >{{ taskform.showTimeNight[0] }} 至 | 
|---|
|  |  |  | {{ taskform.showTimeNight[1] }}</span | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div | 
|---|
|  |  |  | style="font-size: 18px; margin-bottom: 20px" | 
|---|
|  |  |  | v-if="taskform.showTimeNoon[0]" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | 第三时间段:<span | 
|---|
|  |  |  | style="font-size: 18px; color: #2376b7; margin-bottom: 20px" | 
|---|
|  |  |  | >{{ taskform.showTimeNoon[0] }} 至 | 
|---|
|  |  |  | {{ taskform.showTimeNoon[1] }}</span | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </el-tab-pane> | 
|---|
|  |  |  | <el-tab-pane label="立即执行"> | 
|---|
|  |  |  | <div style="font-size: 20px; color: red; margin-bottom: 20px"> | 
|---|
|  |  |  | 此操作将立即发起并执行任务:{{ taskform.taskName }},请谨慎操作! | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </el-tab-pane> | 
|---|
|  |  |  | </el-tabs> | 
|---|
|  |  |  | <div style="text-align: right; margin: 20px 0"> | 
|---|
|  |  |  | <el-button style="margin-right: 20px" @click="taskformVisible = false" | 
|---|
|  |  |  | >取 消</el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | style="margin-right: 20px" | 
|---|
|  |  |  | type="success" | 
|---|
|  |  |  | @click="confirmSponsor(taskform)" | 
|---|
|  |  |  | >确认执行</el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-button type="primary" @click="handleUpdate(taskform)" | 
|---|
|  |  |  | >前往修改</el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </el-dialog> | 
|---|
|  |  |  | <!-- 选择患者弹框 --> | 
|---|
|  |  |  | <Patient-Selection | 
|---|
|  |  |  | ref="Patient" | 
|---|
|  |  |  | :dialogVisiblepatient="dialogVisiblepatient" | 
|---|
|  |  |  | @addoption="addoption" | 
|---|
|  |  |  | @kkoption="dialogVisiblepatient = true" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <script> | 
|---|
|  |  |  | import { | 
|---|
|  |  |  | listUser, | 
|---|
|  |  |  | getUser, | 
|---|
|  |  |  | delUser, | 
|---|
|  |  |  | addUser, | 
|---|
|  |  |  | 
|---|
|  |  |  | changeUserStatus, | 
|---|
|  |  |  | } from "@/api/system/user"; | 
|---|
|  |  |  | import { | 
|---|
|  |  |  | listsvr_prj, | 
|---|
|  |  |  | getsvr_task, | 
|---|
|  |  |  | addsvr_task, | 
|---|
|  |  |  | updatesvr_task, | 
|---|
|  |  |  | delsvr_task, | 
|---|
|  |  |  | } from "@/api/smartorpor/svr_task"; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | getTasklist, | 
|---|
|  |  |  | delTaskInfo, | 
|---|
|  |  |  | TaskTemplateSendExecution, | 
|---|
|  |  |  | } from "@/api/AiCentre/index"; | 
|---|
|  |  |  | import store from "@/store"; | 
|---|
|  |  |  | import PatientSelection from "@/components/PatientSelection"; //正则组件 | 
|---|
|  |  |  | import SFtable from "@/components/SFtable"; //表格组件 | 
|---|
|  |  |  | import Treeselect from "@riophae/vue-treeselect"; | 
|---|
|  |  |  | import "@riophae/vue-treeselect/dist/vue-treeselect.css"; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | export default { | 
|---|
|  |  |  | name: "User", | 
|---|
|  |  |  | dicts: ["sys_normal_disable", "sys_user_sex"], | 
|---|
|  |  |  | components: { Treeselect }, | 
|---|
|  |  |  | name: "Tasklist", | 
|---|
|  |  |  | dicts: ["sys_normal_disable", "sys_user_sex", "task_status"], | 
|---|
|  |  |  | components: { Treeselect, PatientSelection }, | 
|---|
|  |  |  | data() { | 
|---|
|  |  |  | return { | 
|---|
|  |  |  | // 遮罩层 | 
|---|
|  |  |  | 
|---|
|  |  |  | // 用户表格数据 | 
|---|
|  |  |  | userList: null, | 
|---|
|  |  |  | // 弹出层标题 | 
|---|
|  |  |  | title: "新增门诊随访", | 
|---|
|  |  |  | title: "新增影像随访", | 
|---|
|  |  |  | // 是否显示修改、添加弹出层 | 
|---|
|  |  |  | addalteropen: false, | 
|---|
|  |  |  | // 部门名称 | 
|---|
|  |  |  | 
|---|
|  |  |  | postOptions: [], | 
|---|
|  |  |  | // 角色选项 | 
|---|
|  |  |  | roleOptions: [], | 
|---|
|  |  |  | longTask: 0, | 
|---|
|  |  |  | taskform: { | 
|---|
|  |  |  | showDate: [], | 
|---|
|  |  |  | showTimeMorn: [], | 
|---|
|  |  |  | showTimeNight: [], | 
|---|
|  |  |  | showTimeNoon: [], | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | dialogVisiblepatient: false, | 
|---|
|  |  |  | Patientlist: [], | 
|---|
|  |  |  | taskformVisible: false, | 
|---|
|  |  |  | dynamicTags: ["选项一", "选项二", "选项三"], //选项 | 
|---|
|  |  |  | inputVisible: false, | 
|---|
|  |  |  | inputValue: "", | 
|---|
|  |  |  | previewVisible: false, //门诊随访预览弹框 | 
|---|
|  |  |  | previewVisible: false, //影像随访预览弹框 | 
|---|
|  |  |  | TaskOperation: {}, | 
|---|
|  |  |  | radio: "", | 
|---|
|  |  |  | radios: [], | 
|---|
|  |  |  | previewtype: 2, //预览门诊随访类型 | 
|---|
|  |  |  | previewtype: 2, //预览影像随访类型 | 
|---|
|  |  |  | total: 0, // 总条数 | 
|---|
|  |  |  | ImportQuantity: 999, //导门诊随访数量 | 
|---|
|  |  |  | //预览门诊随访信息 | 
|---|
|  |  |  | ImportQuantity: 999, //导影像随访数量 | 
|---|
|  |  |  | //预览影像随访信息 | 
|---|
|  |  |  | previewvalue: { | 
|---|
|  |  |  | username: "这个医生对你怎么样", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | longtermlist: [ | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: 1, | 
|---|
|  |  |  | label: "语音随访", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: 2, | 
|---|
|  |  |  | label: "问卷随访", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: 3, | 
|---|
|  |  |  | label: "宣教关怀", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: 4, | 
|---|
|  |  |  | label: "消息通知", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | taskoptions: store.getters.tasktypes, | 
|---|
|  |  |  | tasktopic: 2, //新增类型 | 
|---|
|  |  |  | activname: "", | 
|---|
|  |  |  | value: [], | 
|---|
|  |  |  | list: [], | 
|---|
|  |  |  | loading: false, | 
|---|
|  |  |  | 
|---|
|  |  |  | topqueryParams: { | 
|---|
|  |  |  | pageNum: 1, | 
|---|
|  |  |  | pageSize: 10, | 
|---|
|  |  |  | type: 2, | 
|---|
|  |  |  | userName: undefined, | 
|---|
|  |  |  | tagid: undefined, | 
|---|
|  |  |  | topic: undefined, | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | propss: { multiple: true }, | 
|---|
|  |  |  | options: [], | 
|---|
|  |  |  |  | 
|---|
|  |  |  | topicoptions: [ | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: 1, | 
|---|
|  |  |  | label: "待审核", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: 2, | 
|---|
|  |  |  | label: "执行中", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: 3, | 
|---|
|  |  |  | label: "执行完成", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: 4, | 
|---|
|  |  |  | label: "已停止", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | checkboxlist: [], | 
|---|
|  |  |  | // 表单校验 | 
|---|
|  |  |  | rules: { | 
|---|
|  |  |  | userName: [ | 
|---|
|  |  |  | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | watch: {}, | 
|---|
|  |  |  | created() { | 
|---|
|  |  |  | // this.topqueryParams.leaveldeptcodes = store.getters.belongDepts.map( | 
|---|
|  |  |  | //   (obj) => obj.deptCode | 
|---|
|  |  |  | // ); | 
|---|
|  |  |  | // this.topqueryParams.leavehospitaldistrictcodes = | 
|---|
|  |  |  | //   store.getters.belongWards.map((obj) => obj.districtCode); | 
|---|
|  |  |  | this.tasktopic = this.$route.query.tasktopic | 
|---|
|  |  |  | ? this.$route.query.tasktopic | 
|---|
|  |  |  | : this.tasktopic; | 
|---|
|  |  |  | this.tasktopic = Number(this.tasktopic); | 
|---|
|  |  |  | this.getList(); | 
|---|
|  |  |  | this.getConfigKey("sys.user.initPassword").then((response) => { | 
|---|
|  |  |  | this.initPassword = response.msg; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | this.checkboxlist = store.getters.checkboxlist; | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | activated() { | 
|---|
|  |  |  | this.getList(); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 搜索 | 
|---|
|  |  |  | mounted() { | 
|---|
|  |  |  | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | methods: { | 
|---|
|  |  |  | /** 查询门诊随访列表 */ | 
|---|
|  |  |  | /** 查询任务列表 */ | 
|---|
|  |  |  | getList() { | 
|---|
|  |  |  | this.loading = true; | 
|---|
|  |  |  | listUser(this.addDateRange(this.topqueryParams, this.dateRange)).then( | 
|---|
|  |  |  | (response) => { | 
|---|
|  |  |  | console.log(response); | 
|---|
|  |  |  | this.userList = response.rows; | 
|---|
|  |  |  | this.total = response.total; | 
|---|
|  |  |  | this.loading = false; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | ); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | this.topqueryParams.serviceType = Number(this.tasktopic); | 
|---|
|  |  |  | if ( | 
|---|
|  |  |  | this.tasktopic == 2 || | 
|---|
|  |  |  | this.tasktopic == 3 || | 
|---|
|  |  |  | this.tasktopic == 1 || | 
|---|
|  |  |  | this.tasktopic == 7 || | 
|---|
|  |  |  | this.tasktopic == 5 || | 
|---|
|  |  |  | this.tasktopic == 6 | 
|---|
|  |  |  | ) { | 
|---|
|  |  |  | if (!this.topqueryParams.type) this.topqueryParams.type = "2"; | 
|---|
|  |  |  | this.longtermlist = [ | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: 1, | 
|---|
|  |  |  | label: "语音随访", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: 2, | 
|---|
|  |  |  | label: "问卷随访", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | ]; | 
|---|
|  |  |  | // this.topqueryParams.type = 2; | 
|---|
|  |  |  | } else if (this.tasktopic == 4 || this.tasktopic == 8) { | 
|---|
|  |  |  | if (!this.topqueryParams.type) this.topqueryParams.type = "3"; | 
|---|
|  |  |  | this.longtermlist = [ | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: 3, | 
|---|
|  |  |  | label: "宣教关怀", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | ]; | 
|---|
|  |  |  | this.topqueryParams.type = 3; | 
|---|
|  |  |  | } else if (this.tasktopic == 16) { | 
|---|
|  |  |  | if (!this.topqueryParams.type) this.topqueryParams.type = "2"; | 
|---|
|  |  |  | this.longtermlist = [ | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: 1, | 
|---|
|  |  |  | label: "语音随访", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: 2, | 
|---|
|  |  |  | label: "问卷随访", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | value: 3, | 
|---|
|  |  |  | label: "宣教关怀", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | ]; | 
|---|
|  |  |  | // this.topqueryParams.type = 2; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.topqueryParams.beginTime = this.dateRange[0]; | 
|---|
|  |  |  | this.topqueryParams.endTime = this.dateRange[1]; | 
|---|
|  |  |  | getTasklist(this.topqueryParams).then((response) => { | 
|---|
|  |  |  | this.userList = response.rows; | 
|---|
|  |  |  | this.total = response.total; | 
|---|
|  |  |  | this.$forceUpdate(); | 
|---|
|  |  |  | this.loading = false; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 查看门诊随访详情 | 
|---|
|  |  |  | // 查看影像随访详情 | 
|---|
|  |  |  | Referencequestion(row) { | 
|---|
|  |  |  | this.previewVisible = true; | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | 
|---|
|  |  |  | this.options = []; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 门诊随访状态修改 | 
|---|
|  |  |  | handleStatusChange(row) { | 
|---|
|  |  |  | let text = row.status === "0" ? "启用" : "停用"; | 
|---|
|  |  |  | this.$modal | 
|---|
|  |  |  | .confirm('确认要"' + text + '""' + row.userName + '"用户吗?') | 
|---|
|  |  |  | .then(function () { | 
|---|
|  |  |  | return changeUserStatus(row.userId, row.status); | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | .then(() => { | 
|---|
|  |  |  | this.$modal.msgSuccess(text + "成功"); | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | .catch(function () { | 
|---|
|  |  |  | row.status = row.status === "0" ? "1" : "0"; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 取消按钮 | 
|---|
|  |  |  | cancel() { | 
|---|
|  |  |  | this.addalteropen = false; | 
|---|
|  |  |  | this.reset(); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 表单重置 | 
|---|
|  |  |  | reset() { | 
|---|
|  |  |  | this.form = { | 
|---|
|  |  |  | 
|---|
|  |  |  | this.resetForm("form"); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | /** 搜索按钮操作 */ | 
|---|
|  |  |  | handleQuerytask() { | 
|---|
|  |  |  | this.topqueryParams.pageNum = 1; | 
|---|
|  |  |  | // this.topqueryParams.type = ''; | 
|---|
|  |  |  | this.getList(); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | handleQuery() { | 
|---|
|  |  |  | this.topqueryParams.pageNum = 1; | 
|---|
|  |  |  | this.getList(); | 
|---|
|  |  |  | 
|---|
|  |  |  | resetQuery() { | 
|---|
|  |  |  | this.dateRange = []; | 
|---|
|  |  |  | this.resetForm("queryForm"); | 
|---|
|  |  |  | this.topqueryParams.deptId = undefined; | 
|---|
|  |  |  | this.$refs.tree.setCurrentKey(null); | 
|---|
|  |  |  | this.topqueryParams = { | 
|---|
|  |  |  | pageNum: 1, | 
|---|
|  |  |  | pageSize: 10, | 
|---|
|  |  |  | type: 2, | 
|---|
|  |  |  | userName: undefined, | 
|---|
|  |  |  | tagid: undefined, | 
|---|
|  |  |  | topic: undefined, | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | // this.$refs.tree.setCurrentKey(null); | 
|---|
|  |  |  | this.handleQuery(); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 多选框选中数据 | 
|---|
|  |  |  | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | /** 新增按钮操作 */ | 
|---|
|  |  |  | handleAdd() { | 
|---|
|  |  |  | this.$router.push({ | 
|---|
|  |  |  | path: "/followvisit/tasklist/FollowupDetails/", | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | if (this.topqueryParams.type == 1) { | 
|---|
|  |  |  | this.$router.push({ | 
|---|
|  |  |  | path: "/followvisit/particty", | 
|---|
|  |  |  | query: { | 
|---|
|  |  |  | type: this.topqueryParams.type, | 
|---|
|  |  |  | serviceType: this.tasktopic, | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } else if (this.topqueryParams.type == 2) { | 
|---|
|  |  |  | this.$router.push({ | 
|---|
|  |  |  | path: "/followvisit/QuestionnaireTask", | 
|---|
|  |  |  | query: { | 
|---|
|  |  |  | type: this.topqueryParams.type, | 
|---|
|  |  |  | serviceType: this.tasktopic, | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } else if (this.topqueryParams.type == 3) { | 
|---|
|  |  |  | this.$router.push({ | 
|---|
|  |  |  | path: "/followvisit/Missioncreation", | 
|---|
|  |  |  | query: { | 
|---|
|  |  |  | type: this.topqueryParams.type, | 
|---|
|  |  |  | serviceType: this.tasktopic, | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | /** 修改按钮操作 */ | 
|---|
|  |  |  | handleUpdate(row) { | 
|---|
|  |  |  | // const userId = row.userId || this.ids; | 
|---|
|  |  |  | // this.$router.push({ | 
|---|
|  |  |  | //   path: "/followvisit/tasklist/FollowupDetails/", | 
|---|
|  |  |  | //   query: { id: row.id }, | 
|---|
|  |  |  | // }); | 
|---|
|  |  |  | this.$router.push({ | 
|---|
|  |  |  | path: "/followvisit/particty", | 
|---|
|  |  |  | query: { type: 2, }, | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | handleUpdate(row, newadd) { | 
|---|
|  |  |  | if (this.topqueryParams.type == 1) { | 
|---|
|  |  |  | this.$router.push({ | 
|---|
|  |  |  | path: "/followvisit/particty", | 
|---|
|  |  |  | query: { | 
|---|
|  |  |  | id: row.taskid, | 
|---|
|  |  |  | type: this.topqueryParams.type, | 
|---|
|  |  |  | serviceType: this.tasktopic, | 
|---|
|  |  |  | newadd: newadd, //是否依照新建 | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } else if (this.topqueryParams.type == 2) { | 
|---|
|  |  |  | this.$router.push({ | 
|---|
|  |  |  | path: "/followvisit/QuestionnaireTask", | 
|---|
|  |  |  | query: { | 
|---|
|  |  |  | id: row.taskid, | 
|---|
|  |  |  | type: this.topqueryParams.type, | 
|---|
|  |  |  | serviceType: this.tasktopic, | 
|---|
|  |  |  | newadd: newadd, | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } else if (this.topqueryParams.type == 3) { | 
|---|
|  |  |  | this.$router.push({ | 
|---|
|  |  |  | path: "/followvisit/Missioncreation", | 
|---|
|  |  |  | query: { | 
|---|
|  |  |  | id: row.taskid, | 
|---|
|  |  |  | type: this.topqueryParams.type, | 
|---|
|  |  |  | serviceType: this.tasktopic, | 
|---|
|  |  |  | newadd: newadd, | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | /** 重置密码按钮操作 */ | 
|---|
|  |  |  | handleResetPwd(row) { | 
|---|
|  |  |  | this.$prompt('请输入"' + row.userName + '"的新密码', "提示", { | 
|---|
|  |  |  | confirmButtonText: "确定", | 
|---|
|  |  |  | cancelButtonText: "取消", | 
|---|
|  |  |  | closeOnClickModal: false, | 
|---|
|  |  |  | inputPattern: /^.{5,20}$/, | 
|---|
|  |  |  | inputErrorMessage: "用户密码长度必须介于 5 和 20 之间", | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | .then(({ value }) => { | 
|---|
|  |  |  | resetUserPwd(row.userId, value).then((response) => { | 
|---|
|  |  |  | this.$modal.msgSuccess("修改成功,新密码是:" + value); | 
|---|
|  |  |  | // 删除任务 | 
|---|
|  |  |  | deletefn(row) { | 
|---|
|  |  |  | this.$modal | 
|---|
|  |  |  | .confirm( | 
|---|
|  |  |  | '是否删除任务名称为"' + | 
|---|
|  |  |  | row.taskName + | 
|---|
|  |  |  | '"的数据项,删除后不可撤回!是否继续' | 
|---|
|  |  |  | ) | 
|---|
|  |  |  | .then(() => { | 
|---|
|  |  |  | delTaskInfo(row.taskid).then((res) => { | 
|---|
|  |  |  | if (res.code == 200) { | 
|---|
|  |  |  | this.getList(); | 
|---|
|  |  |  | this.$modal.msgSuccess("删除成功"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | .catch(() => {}); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 任务发起 | 
|---|
|  |  |  | sponsor(row) { | 
|---|
|  |  |  | console.log(row, "任务信息"); | 
|---|
|  |  |  | this.taskform = row; | 
|---|
|  |  |  | if (this.taskform.showDate && this.taskform.sendType != 2) { | 
|---|
|  |  |  | this.taskform.showDate = this.taskform.showDate.split(","); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (this.taskform.showTimeMorn && this.taskform.sendType != 2) { | 
|---|
|  |  |  | this.taskform.showTimeMorn = this.taskform.showTimeMorn.split(","); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.taskform.showTimeMorn = []; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (this.taskform.showTimeNight && this.taskform.sendType != 2) { | 
|---|
|  |  |  | this.taskform.showTimeNight = this.taskform.showTimeNight.split(","); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.taskform.showTimeNight = []; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (this.taskform.showTimeNoon && this.taskform.sendType != 2) { | 
|---|
|  |  |  | this.taskform.showTimeNoon = this.taskform.showTimeNoon.split(","); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.taskform.showTimeNoon = []; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (this.taskform.sendState != 2 && this.taskform.sendType != 2) { | 
|---|
|  |  |  | this.taskformVisible = true; | 
|---|
|  |  |  | } else if (this.taskform.sendState != 2 && this.taskform.sendType == 2) { | 
|---|
|  |  |  | this.TaskOperation.taskId = row.taskid; | 
|---|
|  |  |  | this.TaskOperation.taskType = this.topqueryParams.type; | 
|---|
|  |  |  | this.TaskOperation.sendState = 2; | 
|---|
|  |  |  | this.TaskOperation.sendType = 2; | 
|---|
|  |  |  | this.$modal | 
|---|
|  |  |  | .confirm( | 
|---|
|  |  |  | '当前选中任务名称为"' + | 
|---|
|  |  |  | row.taskName + | 
|---|
|  |  |  | '"的数据项为立即执行任务,发起执行后不可撤回!是否继续' | 
|---|
|  |  |  | ) | 
|---|
|  |  |  | .then(() => { | 
|---|
|  |  |  | TaskTemplateSendExecution(this.TaskOperation).then((res) => { | 
|---|
|  |  |  | if (res.code == 200) { | 
|---|
|  |  |  | this.getList(); | 
|---|
|  |  |  | this.$modal.msgSuccess("任务已立即执行"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | .catch(() => {}); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$modal.msgError("任务已发起,不可再次发起"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 确认发起 | 
|---|
|  |  |  | confirmSponsor(row) { | 
|---|
|  |  |  | if (this.activname == 0) { | 
|---|
|  |  |  | this.TaskOperation.taskId = row.taskid; | 
|---|
|  |  |  | this.TaskOperation.taskType = this.topqueryParams.type; | 
|---|
|  |  |  | this.TaskOperation.sendState = 2; | 
|---|
|  |  |  | TaskTemplateSendExecution(this.TaskOperation).then((res) => { | 
|---|
|  |  |  | if (res.code == 200) { | 
|---|
|  |  |  | this.$modal.msgSuccess("任务已成功加入执行队列"); | 
|---|
|  |  |  | this.taskformVisible = false; | 
|---|
|  |  |  | this.getList(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } else if (this.activname == 1) { | 
|---|
|  |  |  | this.immediateExecution(row); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 立即执行 | 
|---|
|  |  |  | immediateExecution(row) { | 
|---|
|  |  |  | console.log(row, "任务信息"); | 
|---|
|  |  |  | if (row.sendState != 2) { | 
|---|
|  |  |  | this.TaskOperation.taskType = this.topqueryParams.type; | 
|---|
|  |  |  | this.TaskOperation.taskId = row.taskid; | 
|---|
|  |  |  | this.TaskOperation.sendState = 2; | 
|---|
|  |  |  | this.TaskOperation.sendType = 2; | 
|---|
|  |  |  | this.$modal | 
|---|
|  |  |  | .confirm( | 
|---|
|  |  |  | '是否立即执行任务名称为为"' + | 
|---|
|  |  |  | row.taskName + | 
|---|
|  |  |  | '"的数据项?发起执行后不可撤回!' | 
|---|
|  |  |  | ) | 
|---|
|  |  |  | .then(() => { | 
|---|
|  |  |  | TaskTemplateSendExecution(this.TaskOperation).then((res) => { | 
|---|
|  |  |  | if (res.code == 200) { | 
|---|
|  |  |  | this.getList(); | 
|---|
|  |  |  | this.$modal.msgSuccess("任务已立即执行"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | .then(() => {}) | 
|---|
|  |  |  | .catch(() => {}); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 暂停 | 
|---|
|  |  |  | stop(row) { | 
|---|
|  |  |  | console.log(row); | 
|---|
|  |  |  | if (row.sendState == 2) { | 
|---|
|  |  |  | this.TaskOperation.taskId = row.taskid; | 
|---|
|  |  |  | this.TaskOperation.sendState = 3; | 
|---|
|  |  |  | this.TaskOperation.sendType = ""; | 
|---|
|  |  |  | this.TaskOperation.taskType = row.type; | 
|---|
|  |  |  | TaskTemplateSendExecution(this.TaskOperation).then((res) => { | 
|---|
|  |  |  | this.$modal.msgSuccess("任务已暂停"); | 
|---|
|  |  |  | this.getList(); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** 提交按钮 */ | 
|---|
|  |  |  | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | `user_${new Date().getTime()}.xlsx` | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | findLabelByValue(data, value) { | 
|---|
|  |  |  | const item = data.find((item) => item.value === value); | 
|---|
|  |  |  | return item ? item.label : null; | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | handleAddpatient(taskid) { | 
|---|
|  |  |  | this.$refs.Patient.handleAddpatient(taskid); | 
|---|
|  |  |  | this.dialogVisiblepatient = true; // 手动控制弹窗显示 | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | addoption() { | 
|---|
|  |  |  | this.dialogVisiblepatient = false; // 手动控制弹窗显示 | 
|---|
|  |  |  | this.handleQuery(); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | 
|---|
|  |  |  | border-radius: 1px; | 
|---|
|  |  |  | color: #ffffff; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .button-lj { | 
|---|
|  |  |  | background: #e9614f; | 
|---|
|  |  |  | padding: 5px; | 
|---|
|  |  |  | border-radius: 1px; | 
|---|
|  |  |  | color: #ffffff; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .button-xj { | 
|---|
|  |  |  | background: #815c94; | 
|---|
|  |  |  | padding: 5px; | 
|---|
|  |  |  | border-radius: 1px; | 
|---|
|  |  |  | color: #ffffff; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .button-zt { | 
|---|
|  |  |  | background: #f9c116; | 
|---|
|  |  |  | padding: 5px; | 
|---|
|  |  |  | border-radius: 1px; | 
|---|
|  |  |  | color: #ffffff; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .button-hz { | 
|---|
|  |  |  | background: #63d37b; | 
|---|
|  |  |  | padding: 5px; | 
|---|
|  |  |  | border-radius: 1px; | 
|---|
|  |  |  | color: #ffffff; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | ::v-deep.el-radio-group { | 
|---|
|  |  |  | span { | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | ::v-deep.el-button + .el-button { | 
|---|
|  |  |  | margin-left: 0; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | ::v-deep.el-checkbox-group { | 
|---|
|  |  |  | span { | 
|---|
|  |  |  | font-size: 24px; | 
|---|