| | |
| | | <div class="app-container"> |
| | | <el-row :gutter="20"> |
| | | <!--用户数据--> |
| | | |
| | | <el-form |
| | | :model="topqueryParams" |
| | | ref="queryForm" |
| | |
| | | label-width="98px" |
| | | > |
| | | <el-form-item label="任务名称"> |
| | | <el-input v-model="topqueryParams.name"></el-input> |
| | | <el-input |
| | | v-model="topqueryParams.taskName" |
| | | placeholder="请选择任务名称" |
| | | ></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="审核人"> |
| | | <el-input v-model="topqueryParams.name"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="审核时间"> |
| | | <!-- <el-form-item label="发起人"> |
| | | <el-input v-model="topqueryParams.createBy"></el-input> |
| | | </el-form-item> --> |
| | | <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-form-item label="患者姓名" prop="sendname"> |
| | | <el-input |
| | | v-model="topqueryParams.sendname" |
| | | placeholder="请输入患者姓名" |
| | | ></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="患者范围" prop="status"> |
| | | <el-select |
| | | v-model="topqueryParams.searchscope" |
| | | placeholder="请选择患者范围" |
| | | > |
| | | <el-option |
| | | v-for="item in source" |
| | | :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.sendstate" placeholder="请选择"> |
| | | <el-option |
| | | v-for="item in topicoptions" |
| | | :key="item.value" |
| | |
| | | </el-option> |
| | | </el-select> |
| | | </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.excep" 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 topicoptionsyj" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | |
| | | icon="el-icon-plus" |
| | | size="medium" |
| | | @click="handleAdd" |
| | | v-hasPermi="['system:user:add']" |
| | | >新增</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"> |
| | | <div class="documentf"> |
| | | <div class="document"> |
| | | <el-button |
| | | type="warning" |
| | | plain |
| | | icon="el-icon-download" |
| | | icon="el-icon-upload2" |
| | | size="medium" |
| | | @click="handleExport" |
| | | v-hasPermi="['system:user:export']" |
| | |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | <!-- <el-col :span="1.5"> </el-col> --> |
| | | <el-col :span="1.5"> |
| | | <div class="documentf"> |
| | | <div class="document"> |
| | | <el-button |
| | | type="warning" |
| | | plain |
| | | icon="el-icon-warning-outline" |
| | | size="medium" |
| | | @click="toleadExport(1)" |
| | | >执行失败</el-button |
| | | > |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="1.5"> |
| | | <div class="documentf"> |
| | | <div class="document"> |
| | | <el-button |
| | | type="danger" |
| | | plain |
| | | icon="el-icon-warning" |
| | | size="medium" |
| | | @click="toleadExport(2)" |
| | | >结果异常</el-button |
| | | > |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | </el-row> |
| | | <el-table |
| | | v-loading="loading" |
| | | :data="userList" |
| | | height="560" |
| | | @selection-change="handleSelectionChange" |
| | | > |
| | | <el-table-column type="selection" width="50" align="center" /> |
| | | <el-table-column |
| | | label="序号" |
| | | label="任务名称" |
| | | fixed |
| | | align="center" |
| | | key="userId" |
| | | prop="userId" |
| | | key="taskName" |
| | | prop="taskName" |
| | | width="180" |
| | | /> |
| | | <!-- <el-table-column label="序号" fixed align="center" key="id" prop="id" /> --> |
| | | <el-table-column |
| | | label="姓名" |
| | | fixed |
| | | align="center" |
| | | key="sendname" |
| | | prop="sendname" |
| | | /> |
| | | <el-table-column |
| | | label="宣教状态" |
| | | align="center" |
| | | key="sendstate" |
| | | prop="sendstate" |
| | | width="120" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <div v-if="scope.row.sendstate == 1"> |
| | | <el-tag type="primary" :disable-transitions="false" |
| | | >表单已领取</el-tag |
| | | > |
| | | </div> |
| | | <div v-if="scope.row.sendstate == 2"> |
| | | <el-tag type="primary" :disable-transitions="false" |
| | | >待执行</el-tag |
| | | > |
| | | </div> |
| | | <div v-if="scope.row.sendstate == 3"> |
| | | <el-tag type="success" :disable-transitions="false" |
| | | >表单已发送</el-tag |
| | | > |
| | | </div> |
| | | <div v-if="scope.row.sendstate == 4"> |
| | | <el-tag type="info" :disable-transitions="false">不执行</el-tag> |
| | | </div> |
| | | <div v-if="scope.row.sendstate == 5"> |
| | | <el-tag type="danger" :disable-transitions="false" |
| | | >发送失败</el-tag |
| | | > |
| | | </div> |
| | | <div v-if="scope.row.sendstate == 6"> |
| | | <el-tag type="danger" :disable-transitions="false">已完成</el-tag> |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | label="结果状态" |
| | | align="center" |
| | | key="excep" |
| | | prop="excep" |
| | | width="120" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <div v-if="scope.row.sendstate == 6"> |
| | | <dict-tag |
| | | :options="dict.type.sys_yujing" |
| | | :value="scope.row.excep" |
| | | /> |
| | | </div> |
| | | <div v-else> |
| | | <span></span> |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="处理意见" |
| | | align="center" |
| | | key="suggest" |
| | | prop="suggest" |
| | | width="120" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <dict-tag |
| | | :options="dict.type.sys_suggest" |
| | | :value="scope.row.suggest" |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | label="出院日期" |
| | | width="200" |
| | | align="center" |
| | | key="endtime" |
| | | prop="endtime" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <span>{{ formatTime(scope.row.endtime) }}</span> |
| | | </template></el-table-column |
| | | > |
| | | <el-table-column |
| | | label="应宣教日期" |
| | | width="200" |
| | | align="center" |
| | | key="longSendTime" |
| | | prop="longSendTime" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <span>{{ formatTime(scope.row.longSendTime) }}</span> |
| | | </template></el-table-column |
| | | > |
| | | <el-table-column |
| | | label="出院天数" |
| | | width="120" |
| | | align="center" |
| | | key="endDay" |
| | | prop="endDay" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <span>{{ |
| | | scope.row.endDay ? scope.row.endDay + "天" : "" |
| | | }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="身份证号码" |
| | | width="200" |
| | | align="center" |
| | | key="sfzh" |
| | | prop="sfzh" |
| | | /> |
| | | <!-- <el-table-column |
| | | label="责任护士" |
| | | width="120" |
| | | align="center" |
| | | key="nurseName" |
| | | prop="nurseName" |
| | | /> |
| | | <el-table-column |
| | | label="主治医生" |
| | | width="120" |
| | | align="center" |
| | | key="drname" |
| | | prop="drname" |
| | | /> --> |
| | | |
| | | |
| | | <!-- <el-table-column |
| | | label="病历号" |
| | | align="center" |
| | | sortable |
| | | key="userName" |
| | | prop="userName" |
| | | key="medicalRecordNo" |
| | | prop="medicalRecordNo" |
| | | width="120" |
| | | /> |
| | | <el-table-column label="姓名" align="center" key="types" prop="types" /> |
| | | /> --> |
| | | |
| | | <!-- <el-table-column label="年龄" align="center" key="age" prop="age" /> --> |
| | | <!-- <el-table-column label="性别" align="center" key="sex" prop="sex" /> --> |
| | | <!-- <el-table-column label="床号" align="center" key="badNo" prop="badNo" /> --> |
| | | <el-table-column |
| | | label="年龄" |
| | | label="科室" |
| | | align="center" |
| | | key="nickName" |
| | | prop="nickName" |
| | | /> |
| | | key="deptname" |
| | | prop="deptname" |
| | | width="120" |
| | | > |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="床号" |
| | | label="病区" |
| | | align="center" |
| | | key="nickName" |
| | | prop="nickName" |
| | | /> |
| | | <el-table-column |
| | | label="科室/病区" |
| | | align="center" |
| | | key="phonenumber" |
| | | prop="phonenumber" |
| | | key="leavehospitaldistrictname" |
| | | prop="leavehospitaldistrictname" |
| | | width="120" |
| | | > |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | <!-- <el-table-column |
| | | label="疾病名称" |
| | | align="center" |
| | | key="topicnumber" |
| | | prop="topicnumber" |
| | | key="icdName" |
| | | prop="icdName" |
| | | width="120" |
| | | :show-overflow-tooltip="true" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <div>轻度骨裂</div> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table-column> --> |
| | | |
| | | <el-table-column |
| | | label="通知状态" |
| | | label="模板名称" |
| | | align="center" |
| | | key="topicnumber" |
| | | prop="topicnumber" |
| | | width="120" |
| | | key="templatename" |
| | | prop="templatename" |
| | | :show-overflow-tooltip="true" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <div>未完成</div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="宣教内容" |
| | | align="center" |
| | | key="topicnumberaa" |
| | | prop="topicnumberaa" |
| | | width="120" |
| | | width="200" |
| | | /> |
| | | <el-table-column |
| | | label="宣教材料" |
| | | align="center" |
| | | key="topicnumberaa" |
| | | prop="topicnumberaa" |
| | | width="120" |
| | | /> |
| | | <el-table-column |
| | | label="宣教方式" |
| | | align="center" |
| | | key="topicnumberaa" |
| | | prop="topicnumberaa" |
| | | width="120" |
| | | /> |
| | | |
| | | <el-table-column |
| | | label="宣教人员" |
| | | align="center" |
| | | key="topicnumberaa" |
| | | prop="topicnumberaa" |
| | | key="createBy" |
| | | prop="createBy" |
| | | width="120" |
| | | /> |
| | | |
| | | <el-table-column |
| | | label="就诊时间" |
| | | sortable |
| | | <!-- <el-table-column |
| | | fixed="right" |
| | | label="任务发送流程" |
| | | align="center" |
| | | prop="createTime" |
| | | key="serviceSubtaskRecordList" |
| | | prop="serviceSubtaskRecordList" |
| | | width="160" |
| | | :show-overflow-tooltip="true" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <span>{{ parseTime(scope.row.createTime) }}</span> |
| | | <span v-for="item in scope.row.serviceSubtaskRecordList" |
| | | >{{ item.remark }}、 |
| | | </span> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table-column> --> |
| | | <el-table-column |
| | | fixed="right" |
| | | label="任务结果记录" |
| | | width="120" |
| | | align="center" |
| | | key="remark" |
| | | prop="remark" |
| | | > |
| | | <template slot-scope="scope" v-if="scope.row.remark"> |
| | | <el-tag type="success" v-if="scope.row.sendstate!=5&&scope.row.sendstate!=4&&scope.row.remark">{{ scope.row.remark }}</el-tag> |
| | | <el-tag type="warning" v-else>{{ scope.row.remark }}</el-tag> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | fixed="right" |
| | | label="宣教时间" |
| | | sortable |
| | | align="center" |
| | | prop="createTime" |
| | | prop="finishtime" |
| | | width="160" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <span>{{ parseTime(scope.row.createTime) }}</span> |
| | | <span>{{ parseTime(scope.row.finishtime) }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="回复时间" |
| | | sortable |
| | | <!-- <el-table-column |
| | | label="宣教状态" |
| | | fixed="right" |
| | | align="center" |
| | | prop="createTime" |
| | | width="160" |
| | | key="sendstate" |
| | | prop="sendstate" |
| | | width="120" |
| | | :show-overflow-tooltip="true" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <span>{{ parseTime(scope.row.createTime) }}</span> |
| | | <dict-tag :options="serviceState" :value="scope.row.sendstate" /> |
| | | </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-sc" |
| | | ><i class="el-icon-delete"></i>删除</span |
| | | ></el-button |
| | | > |
| | | </template> |
| | | </el-table-column> |
| | | </el-table-column> --> |
| | | </el-table> |
| | | |
| | | <pagination |
| | |
| | | @pagination="getList" |
| | | /> |
| | | </el-row> |
| | | <!-- 添加或修改门诊随访对话框 --> |
| | | <!-- 添加或修改门诊宣教对话框 --> |
| | | <el-dialog |
| | | :title="title" |
| | | :visible.sync="addalteropen" |
| | |
| | | ></el-row> |
| | | <el-row :gutter="20"> |
| | | <el-col :span="24" |
| | | ><el-form-item label="随访类型"> |
| | | <el-select v-model="form.region" placeholder="请选择随访类型"> |
| | | ><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-row> |
| | | <el-row :gutter="20"> |
| | | <el-col :span="24"> |
| | | <el-form-item label="门诊随访要求"> |
| | | <el-form-item label="门诊宣教要求"> |
| | | <el-input type="textarea" v-model="form.desc"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | |
| | | <el-button type="primary" @click="submitForm">提 交</el-button> |
| | | <el-button @click="cancel">返 回</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | <!-- 修改发送时间对话框 --> |
| | | <el-dialog |
| | | title="发送时间设置" |
| | | :visible.sync="modificationVisible" |
| | | width="45%" |
| | | > |
| | | <div style="margin-bottom: 20px; color: red"> |
| | | 统一修改当天未发送的任务时间 |
| | | </div> |
| | | |
| | | <el-form |
| | | :model="ruleForm" |
| | | :rules="rules" |
| | | ref="ruleForm" |
| | | label-width="120px" |
| | | class="demo-ruleForm" |
| | | > |
| | | <el-form-item label="发送日期"> |
| | | <el-date-picker |
| | | v-model="ruleForm.value1" |
| | | type="date" |
| | | placeholder="选择日期" |
| | | > |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="时间段" prop="type"> |
| | | <el-checkbox-group v-model="ruleForm.type"> |
| | | <el-checkbox label="上午" name="type"></el-checkbox> |
| | | <el-checkbox label="下午" name="type"></el-checkbox> |
| | | <el-checkbox label="晚上" name="type"></el-checkbox> |
| | | </el-checkbox-group> |
| | | </el-form-item> |
| | | <el-form-item label="上午时间区间" required> |
| | | <el-time-picker |
| | | is-range |
| | | v-model="ruleForm.value2" |
| | | range-separator="至" |
| | | start-placeholder="开始时间" |
| | | end-placeholder="结束时间" |
| | | placeholder="选择时间范围" |
| | | > |
| | | </el-time-picker> |
| | | </el-form-item> |
| | | <el-form-item label="下午时间区间" required> |
| | | <el-time-picker |
| | | is-range |
| | | v-model="ruleForm.value3" |
| | | range-separator="至" |
| | | start-placeholder="开始时间" |
| | | end-placeholder="结束时间" |
| | | placeholder="选择时间范围" |
| | | > |
| | | </el-time-picker> |
| | | </el-form-item> |
| | | <el-form-item label="晚上时间区间" required> |
| | | <el-time-picker |
| | | is-range |
| | | v-model="ruleForm.value4" |
| | | range-separator="至" |
| | | start-placeholder="开始时间" |
| | | end-placeholder="结束时间" |
| | | placeholder="选择时间范围" |
| | | > |
| | | </el-time-picker> |
| | | </el-form-item> |
| | | </el-form> |
| | | |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="modificationVisible = false">取 消</el-button> |
| | | <el-button type="primary" @click="modificationVisible = false" |
| | | >确 定</el-button |
| | | > |
| | | </span> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | |
| | | resetUserPwd, |
| | | changeUserStatus, |
| | | } from "@/api/system/user"; |
| | | import { getTaskservelist } from "@/api/AiCentre/index"; |
| | | import Treeselect from "@riophae/vue-treeselect"; |
| | | import store from "@/store"; |
| | | import "@riophae/vue-treeselect/dist/vue-treeselect.css"; |
| | | |
| | | export default { |
| | | name: "User", |
| | | dicts: ["sys_normal_disable", "sys_user_sex"], |
| | | name: "Discharge", |
| | | dicts: ["sys_normal_disable", "sys_user_sex", "sys_yujing", "sys_suggest"], |
| | | components: { Treeselect }, |
| | | data() { |
| | | return { |
| | |
| | | // 用户表格数据 |
| | | userList: null, |
| | | // 弹出层标题 |
| | | title: "新增门诊随访", |
| | | title: "新增门诊宣教", |
| | | // 是否显示修改、添加弹出层 |
| | | addalteropen: false, |
| | | // 修改发送时间对话框 |
| | | modificationVisible: false, |
| | | // 部门名称 |
| | | deptName: undefined, |
| | | // 默认密码 |
| | |
| | | dateRange: [], |
| | | // 岗位选项 |
| | | postOptions: [], |
| | | // 角色选项 |
| | | roleOptions: [], |
| | | ruleForm: { |
| | | type: [], |
| | | }, |
| | | dynamicTags: ["选项一", "选项二", "选项三"], //选项 |
| | | inputVisible: false, |
| | | inputValue: "", |
| | | previewVisible: false, //门诊随访预览弹框 |
| | | previewVisible: false, //门诊宣教预览弹框 |
| | | radio: "", |
| | | radios: [], |
| | | previewtype: 2, //预览门诊随访类型 |
| | | previewtype: 2, //预览门诊宣教类型 |
| | | total: 0, // 总条数 |
| | | ImportQuantity: 999, //导门诊随访数量 |
| | | //预览门诊随访信息 |
| | | ImportQuantity: 999, //导门诊宣教数量 |
| | | //预览门诊宣教信息 |
| | | previewvalue: { |
| | | username: "这个医生对你怎么样", |
| | | }, |
| | | value: [], |
| | | list: [], |
| | | source: [ |
| | | { |
| | | value: 0, |
| | | label: "所属患者", |
| | | }, |
| | | { |
| | | value: 1, |
| | | label: "科室患者", |
| | | }, |
| | | { |
| | | value: 2, |
| | | label: "病区患者", |
| | | }, |
| | | ], |
| | | loading: false, |
| | | states: [ |
| | | "Alabama", |
| | |
| | | topqueryParams: { |
| | | pageNum: 1, |
| | | pageSize: 10, |
| | | userName: undefined, |
| | | tagid: undefined, |
| | | topic: undefined, |
| | | serviceType: 4, |
| | | searchscope: 2, |
| | | }, |
| | | propss: { multiple: true }, |
| | | options: [], |
| | |
| | | topicoptions: [ |
| | | { |
| | | value: 1, |
| | | label: "待审核", |
| | | label: "表单已领取", |
| | | }, |
| | | { |
| | | value: 2, |
| | | label: "执行中", |
| | | label: "待执行", |
| | | }, |
| | | { |
| | | value: 3, |
| | | label: "执行完成", |
| | | label: "表单已发送", |
| | | }, |
| | | { |
| | | value: 4, |
| | | label: "已停止", |
| | | label: "不执行", |
| | | }, |
| | | { |
| | | value: 5, |
| | | label: "发送失败", |
| | | }, |
| | | { |
| | | value: 6, |
| | | label: "已完成", |
| | | }, |
| | | ], |
| | | topicoptionsyj: [ |
| | | { |
| | | value: 1, |
| | | label: "异常", |
| | | }, |
| | | { |
| | | value: 0, |
| | | label: "正常", |
| | | }, |
| | | ], |
| | | serviceState: [], |
| | | // 表单校验 |
| | | rules: { |
| | | userName: [ |
| | | { required: true, message: "用户名称不能为空", trigger: "blur" }, |
| | | { |
| | | min: 2, |
| | | max: 20, |
| | | message: "用户名称长度必须介于 2 和 20 之间", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | nickName: [ |
| | | { required: true, message: "用户昵称不能为空", trigger: "blur" }, |
| | | ], |
| | | password: [ |
| | | { required: true, message: "用户密码不能为空", trigger: "blur" }, |
| | | { |
| | | min: 5, |
| | | max: 20, |
| | | message: "用户密码长度必须介于 5 和 20 之间", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | email: [ |
| | | { |
| | | type: "email", |
| | | message: "请输入正确的邮箱地址", |
| | | trigger: ["blur", "change"], |
| | | }, |
| | | ], |
| | | phonenumber: [ |
| | | { |
| | | pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/, |
| | | message: "请输入正确的手机号码", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | IDnumber: [ |
| | | { |
| | | pattern: |
| | | /^\d{6}((((((19|20)\d{2})(0[13-9]|1[012])(0[1-9]|[12]\d|30))|(((19|20)\d{2})(0[13578]|1[02])31)|((19|20)\d{2})02(0[1-9]|1\d|2[0-8])|((((19|20)([13579][26]|[2468][048]|0[48]))|(2000))0229))\d{3})|((((\d{2})(0[13-9]|1[012])(0[1-9]|[12]\d|30))|((\d{2})(0[13578]|1[02])31)|((\d{2})02(0[1-9]|1\d|2[0-8]))|(([13579][26]|[2468][048]|0[048])0229))\d{2}))(\d|X|x)$/, |
| | | message: "请输入正确的身份证号码", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | }, |
| | | rules: {}, |
| | | }; |
| | | }, |
| | | watch: {}, |
| | | created() { |
| | | this.serviceState = store.getters.serviceState; |
| | | this.getList(); |
| | | this.getConfigKey("sys.user.initPassword").then((response) => { |
| | | this.initPassword = response.msg; |
| | | }); |
| | | }, |
| | | activated() { |
| | | this.getList(); |
| | | }, |
| | | // 搜索 |
| | | mounted() { |
| | |
| | | }); |
| | | }, |
| | | methods: { |
| | | /** 查询门诊随访列表 */ |
| | | /** 查询门诊宣教服务列表 */ |
| | | getList() { |
| | | if (this.topqueryParams.searchscope == 1) { |
| | | this.topqueryParams.leaveldeptcodes = store.getters.belongDepts.map( |
| | | (obj) => obj.deptCode |
| | | ); |
| | | this.topqueryParams.leavehospitaldistrictcodes = null; |
| | | } else if (this.topqueryParams.searchscope == 2) { |
| | | this.topqueryParams.leavehospitaldistrictcodes = |
| | | store.getters.belongWards.map((obj) => obj.districtCode); |
| | | this.topqueryParams.leaveldeptcodes = null; |
| | | } else { |
| | | this.topqueryParams.leaveldeptcodes = store.getters.belongDepts.map( |
| | | (obj) => obj.deptCode |
| | | ); |
| | | this.topqueryParams.leavehospitaldistrictcodes = |
| | | store.getters.belongWards.map((obj) => obj.districtCode); |
| | | } |
| | | this.loading = true; |
| | | listUser(this.addDateRange(this.topqueryParams, this.dateRange)).then( |
| | | (response) => { |
| | | this.userList = response.rows; |
| | | this.total = response.total; |
| | | this.loading = false; |
| | | } |
| | | ); |
| | | getTaskservelist(this.topqueryParams).then((response) => { |
| | | this.userList = response.rows[0].serviceSubtaskList; |
| | | this.userList.forEach((item) => { |
| | | if (item.endtime) { |
| | | item.endDay = this.daysBetween(item.endtime); |
| | | } |
| | | }); |
| | | this.total = response.total; |
| | | this.loading = false; |
| | | }); |
| | | }, |
| | | // 查看门诊随访详情 |
| | | // 查看门诊宣教详情 |
| | | Referencequestion(row) { |
| | | this.previewVisible = true; |
| | | }, |
| | |
| | | this.options = []; |
| | | } |
| | | }, |
| | | // 门诊随访状态修改 |
| | | // 门诊宣教状态修改 |
| | | handleStatusChange(row) { |
| | | let text = row.status === "0" ? "启用" : "停用"; |
| | | this.$modal |
| | |
| | | }, |
| | | /** 搜索按钮操作 */ |
| | | handleQuery() { |
| | | if (this.topqueryParams.searchscope == 1) { |
| | | this.topqueryParams.leaveldeptcodes = store.getters.belongDepts.map( |
| | | (obj) => obj.deptCode |
| | | ); |
| | | this.topqueryParams.leavehospitaldistrictcodes = null; |
| | | } else if (this.topqueryParams.searchscope == 2) { |
| | | this.topqueryParams.leavehospitaldistrictcodes = |
| | | store.getters.belongWards.map((obj) => obj.districtCode); |
| | | this.topqueryParams.leaveldeptcodes = null; |
| | | } else { |
| | | this.topqueryParams.leaveldeptcodes = store.getters.belongDepts.map( |
| | | (obj) => obj.deptCode |
| | | ); |
| | | this.topqueryParams.leavehospitaldistrictcodes = |
| | | store.getters.belongWards.map((obj) => obj.districtCode); |
| | | } |
| | | this.topqueryParams.pageNum = 1; |
| | | this.topqueryParams.startOutHospTime = this.dateRange[0]; |
| | | this.topqueryParams.endOutHospTime = this.dateRange[1]; |
| | | |
| | | this.getList(); |
| | | }, |
| | | /** 重置按钮操作 */ |
| | | resetQuery() { |
| | | this.dateRange = []; |
| | | this.resetForm("queryForm"); |
| | | this.topqueryParams.deptId = undefined; |
| | | this.$refs.tree.setCurrentKey(null); |
| | | this.topqueryParams = { |
| | | pageNum: 1, |
| | | pageSize: 10, |
| | | serviceType: 4, |
| | | }; |
| | | this.handleQuery(); |
| | | }, |
| | | // 多选框选中数据 |
| | |
| | | }, |
| | | /** 新增按钮操作 */ |
| | | handleAdd() { |
| | | this.reset(); |
| | | this.addalteropen = true; |
| | | // getUser().then((response) => { |
| | | // this.postOptions = response.posts; |
| | | // this.roleOptions = response.roles; |
| | | // this.title = "新增门诊随访"; |
| | | // this.form.password = this.initPassword; |
| | | // }); |
| | | }, |
| | | /** 修改按钮操作 */ |
| | | handleUpdate(row) { |
| | | this.$router.push({ |
| | | path: "/followvisit/particty", |
| | | path: "/followvisit/Missioncreation", |
| | | query: { |
| | | type: 3, |
| | | serviceType: 4, |
| | | }, |
| | | }); |
| | | }, |
| | | /** 重置密码按钮操作 */ |
| | | 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); |
| | | }); |
| | | }) |
| | | .catch(() => {}); |
| | | }, |
| | | |
| | | /** 提交按钮 */ |
| | |
| | | } |
| | | }); |
| | | }, |
| | | /** 删除按钮操作 */ |
| | | handleDelete(row) { |
| | | const userIds = row.userId || this.ids; |
| | | |
| | | // 全部停止 |
| | | AllStop() { |
| | | this.$modal |
| | | .confirm('是否确认删除用户编号为"' + userIds + '"的数据项?') |
| | | .confirm("是否停止全部任务?") |
| | | .then(function () { |
| | | return delUser(userIds); |
| | | return console.log("停止成功"); |
| | | }) |
| | | .then(() => { |
| | | this.getList(); |
| | | this.$modal.msgSuccess("删除成功"); |
| | | this.$modal.msgWarning("停止成功"); |
| | | }) |
| | | .catch(() => {}); |
| | | }, |
| | | // 全部开始 |
| | | AllStarted() { |
| | | this.$modal |
| | | .confirm("是否开启全部任务?") |
| | | .then(function () { |
| | | return console.log("开启成功"); |
| | | }) |
| | | .then(() => { |
| | | this.getList(); |
| | | this.$modal.msgSuccess("开启成功"); |
| | | }) |
| | | .catch(() => {}); |
| | | }, |
| | | |
| | | // 设置发送时间 |
| | | Sendtimesetting() { |
| | | this.modificationVisible = true; |
| | | }, |
| | | |
| | | // 便捷按钮 |
| | | toleadExport(too) { |
| | | if (too == 1) { |
| | | this.topqueryParams.sendstate = 4; |
| | | this.topqueryParams.excep = null; |
| | | } else if (too == 2) { |
| | | this.topqueryParams.excep = 1; |
| | | } |
| | | this.handleQuery(); |
| | | }, |
| | | /** 导出按钮操作 */ |
| | | handleExport() { |
| | |
| | | } |
| | | |
| | | .document { |
| | | width: 100px; |
| | | // width: 100px; |
| | | height: 50px; |
| | | } |
| | | |
| | |
| | | } |
| | | .button-bb { |
| | | font-weight: 500; |
| | | color: #2ba05c; |
| | | background-color: #2ba05c; |
| | | padding: 5px; |
| | | border-radius: 1px; |
| | | color: #ffffff; |
| | | } |
| | | .button-xq { |
| | | font-weight: 500; |
| | | color: #409eff; |
| | | background-color: #409eff; |
| | | padding: 5px; |
| | | border-radius: 1px; |
| | | color: #ffffff; |
| | | } |
| | | .button-sc { |
| | | font-weight: 500; |
| | | color: #dd302a; |
| | | background-color: #dd302a; |
| | | padding: 5px; |
| | | border-radius: 1px; |
| | | color: #ffffff; |
| | | } |
| | | .button-zx { |
| | | background: #4fabe9; |
| | |
| | | } |
| | | } |
| | | |
| | | ::v-deep.el-checkbox-group { |
| | | span { |
| | | font-size: 24px; |
| | | } |
| | | } |
| | | // 选项字体放大 |
| | | // ::v-deep.el-checkbox-group { |
| | | // span { |
| | | // font-size: 24px; |
| | | // } |
| | | // } |
| | | </style> |