| | |
| | | component: () => import('@/views/error/401'), |
| | | hidden: true |
| | | }, |
| | | { |
| | | path: '', |
| | | component: Layout, |
| | | redirect: 'index', |
| | | children: [ |
| | | { |
| | | path: 'index', |
| | | component: () => import('@/views/index'), |
| | | name: 'Index', |
| | | meta: { title: '首页', icon: 'dashboard', affix: true } |
| | | } |
| | | ] |
| | | }, |
| | | // { |
| | | // path: '', |
| | | // component: Layout, |
| | | // redirect: 'index', |
| | | // children: [ |
| | | // { |
| | | // path: 'index', |
| | | // component: () => import('@/views/index'), |
| | | // name: 'Index', |
| | | // meta: { title: '首页', icon: 'dashboard', affix: true } |
| | | // } |
| | | // ] |
| | | // }, |
| | | { |
| | | path: '/user', |
| | | component: Layout, |
| | |
| | | filterable |
| | | placeholder="请选择科室" |
| | | > |
| | | <el-option |
| | | <el-option |
| | | class="ruleFormaa" |
| | | v-for="item in flatArray" |
| | | :key="item.deptCode" |
| | |
| | | filterable |
| | | placeholder="请选择病区" |
| | | > |
| | | <el-option |
| | | <el-option |
| | | class="ruleFormaa" |
| | | v-for="item in flatArray" |
| | | :key="item.deptCode" |
| | |
| | | <el-col :span="12"> |
| | | <el-form-item |
| | | label="问题分值" |
| | | v-if="topicobj.scoretype == 1" |
| | | v-if="ruleForm.scoreType == 1" |
| | | > |
| | | <el-input |
| | | v-model="topicobj.score" |
| | |
| | | v-for="item in topicobj.svyLibTemplateTargetoptions" |
| | | > |
| | | <el-row :gutter="5"> |
| | | <el-col :span="16" |
| | | <el-col :span="12" |
| | | ><el-form-item label="选项名称"> |
| | | <el-input |
| | | type="text" |
| | |
| | | > |
| | | </el-input> </el-form-item |
| | | ></el-col> |
| | | <el-col :span="8"> |
| | | <el-col :span="12"> |
| | | <el-form-item |
| | | v-if="topicobj.scoretype == 1" |
| | | v-if="ruleForm.scoreType == 1" |
| | | label="选项分值" |
| | | > |
| | | <el-input |
| | |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item |
| | | v-else-if="topicobj.scoretype == 2" |
| | | v-else-if="ruleForm.scoreType == 2" |
| | | label="ABC等级" |
| | | > |
| | | <el-radio-group v-model="item.score"> |
| | |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item |
| | | v-else-if="topicobj.scoretype == 3" |
| | | v-else-if="ruleForm.scoreType == 3" |
| | | label="优良等级" |
| | | > |
| | | <el-radio-group v-model="item.score"> |
| | |
| | | <el-col :span="12"> |
| | | <el-form-item label="评价类型"> |
| | | <el-select |
| | | v-model="indexform.scoretype" |
| | | v-model="indexform.scoreType" |
| | | placeholder="请选择分类" |
| | | > |
| | | <el-option |
| | |
| | | ></el-col> |
| | | <el-col :span="11"> |
| | | <el-form-item |
| | | v-if="indexform.scoretype == 1" |
| | | v-if="indexform.scoreType == 1" |
| | | label="分值" |
| | | > |
| | | <el-input |
| | |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item |
| | | v-else-if="indexform.scoretype == 2" |
| | | v-else-if="indexform.scoreType == 2" |
| | | label="ABC等级" |
| | | > |
| | | <el-radio-group v-model="item.score"> |
| | |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item |
| | | v-else-if="indexform.scoretype == 3" |
| | | v-else-if="indexform.scoreType == 3" |
| | | label="优良等级" |
| | | > |
| | | <el-radio-group v-model="item.score"> |
| | |
| | | |
| | | <el-col |
| | | :span="2" |
| | | :offsset="indexform.scoretype == 4 ? 11 : 0" |
| | | :offsset="indexform.scoreType == 4 ? 11 : 0" |
| | | > |
| | | <el-button |
| | | type="danger" |
| | |
| | | import OptionalForm from "@/components/OptionalForm"; //正则组件 |
| | | import { getToken } from "@/utils/auth"; |
| | | import { deptTreeSelect } from "@/api/system/user"; |
| | | |
| | | |
| | | export default { |
| | | name: "Questionnaireinfo", |
| | |
| | | illnessVisible: false, //指标疾病弹框 |
| | | Operateit: true, |
| | | deptOptions: [], |
| | | flatArray:[], |
| | | flatArray: [], |
| | | optionsillness: [], |
| | | delScriptVOList: [], |
| | | illnesslistapi: [], |
| | |
| | | this.ruleForm.categoryid = -1; |
| | | } |
| | | // 题目保存处理 |
| | | // 提交 |
| | | this.ruleForm.svyTemplateLibScripts.forEach((res) => { |
| | | // 提交 |
| | | this.ruleForm.svyTemplateLibScripts.forEach((res) => { |
| | | if (!res.isoperation) { |
| | | res.isoperation = 2; |
| | | } |
| | | res.ivrLibaScriptTargetoptionList = |
| | | res.svyLibTemplateTargetoptions.map((item) => { |
| | | res.ivrLibaScriptTargetoptionList = res.svyLibTemplateTargetoptions.map( |
| | | (item) => { |
| | | if (!item.isoperation) { |
| | | item.isoperation = 2; |
| | | item.templateID = this.ruleForm.id; |
| | | } |
| | | return item; |
| | | }); |
| | | } |
| | | ); |
| | | }); |
| | | this.delScriptVOList.forEach((item)=>{ |
| | | this.ruleForm.svyTemplateLibScripts.push(item) |
| | | }) |
| | | this.delScriptVOList.forEach((item) => { |
| | | this.ruleForm.svyTemplateLibScripts.push(item); |
| | | }); |
| | | if (this.id) { |
| | | this.ruleForm.isoperation = 2; |
| | | this.ruleForm.tempDetpRelevances = null; |
| | |
| | | // 获取问题列表 |
| | | getaddtopiclist() { |
| | | this.drawer = true; |
| | | this.queryParams.scoretype = this.ruleForm.scoreType; |
| | | this.queryParams.scoreType = this.ruleForm.scoreType; |
| | | getissuelist(this.queryParams).then((res) => { |
| | | this.loading = false; |
| | | this.userList = res.rows; |
| | |
| | | }, |
| | | // 保存科室/病区 |
| | | putbelongDepts(id) { |
| | | this.tempDetpRelevanceslistform.forEach(item=>{ |
| | | if (!item.tempid) item.tempid=id; |
| | | }) |
| | | this.tempbelongWardsform.forEach(item=>{ |
| | | if (!item.tempid) item.tempid=id; |
| | | }) |
| | | this.tempDetpRelevanceslistform.forEach((item) => { |
| | | if (!item.tempid) item.tempid = id; |
| | | }); |
| | | this.tempbelongWardsform.forEach((item) => { |
| | | if (!item.tempid) item.tempid = id; |
| | | }); |
| | | if (this.tempDetpRelevanceslistform.length > 0) { |
| | | depthospgetson(this.tempDetpRelevanceslistform).then((res) => { |
| | | if (res.code == 200) { |
| | |
| | | </el-input> |
| | | </el-form-item> |
| | | <!-- 丽===================水 --> |
| | | <!-- <el-form-item prop="guid"> |
| | | <el-form-item prop="guid"> |
| | | <el-select style="width: 100%;" v-model="loginForm.guid" placeholder="请选择院区"> |
| | | <el-option |
| | | v-for="item in options" |
| | |
| | | </el-option> |
| | | <i slot="prefix" class="el-icon-mobile"></i> |
| | | </el-select> |
| | | </el-form-item> --> |
| | | </el-form-item> |
| | | <!-- <el-form-item prop="code" v-if="captchaEnabled"> |
| | | <el-input |
| | | v-model="loginForm.code" |
| | |
| | | password: [ |
| | | { required: true, trigger: "blur", message: "请输入您的密码" }, |
| | | ], |
| | | // guid: [{ required: true, trigger: "blur", message: "请选择院区" }], |
| | | guid: [{ required: true, trigger: "blur", message: "请选择院区" }], |
| | | }, |
| | | loading: false, |
| | | // 验证码开关 |
| | |
| | | this.$store |
| | | .dispatch("Login", this.loginForm) |
| | | .then(() => { |
| | | this.$router.push({ path: this.redirect || "/" }).catch(() => {}); |
| | | // this.$router.push({ path: this.redirect || "/" }).catch(() => {}); |
| | | this.$router.push({ path:"/patient/patient" }).catch(() => {}); |
| | | }) |
| | | .catch(() => { |
| | | this.loading = false; |
| | |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="患者范围" prop="tagId"> |
| | | <el-select |
| | | v-model="queryParams.searchscope" |
| | | placeholder="请选择患者范围" |
| | | > |
| | | <el-option |
| | | v-for="item in source" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | <el-select |
| | | v-model="queryParams.searchscope" |
| | | placeholder="请选择患者范围" |
| | | > |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <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="telcode"> |
| | | <el-input |
| | | v-model="queryParams.telcode" |
| | |
| | | <el-table |
| | | v-loading="loading" |
| | | :data="userList" |
| | | height="660" |
| | | height="660" |
| | | @selection-change="handleSelectionChange" |
| | | > |
| | | <el-table-column type="selection" width="50" align="center" /> |
| | |
| | | </span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | <el-table-column |
| | | label="证件号码" |
| | | align="center" |
| | | key="idcardno" |
| | |
| | | prop="createTime" |
| | | width="160" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <template slot-scope="scope"> |
| | | <span>{{ formatTime(scope.row.createTime) }}</span> |
| | | </template> |
| | | </el-table-column> |
| | |
| | | ><i class="el-icon-edit"></i>患者过滤</span |
| | | ></el-button |
| | | > |
| | | <el-button |
| | | <!-- <el-button |
| | | size="medium" |
| | | type="text" |
| | | @click="Distributionservice(scope.row)" |
| | | ><span class="button-textxg" |
| | | ><i class="el-icon-menu"></i>服务</span |
| | | ></el-button |
| | | > --> |
| | | <el-button |
| | | size="medium" |
| | | type="text" |
| | | @click="RiskMarker(scope.row)" |
| | | ><span class="button-textxg" |
| | | ><i class="el-icon-menu"></i>风险标记</span |
| | | ></el-button |
| | | > |
| | | </template> |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row v-if="!amendtag"> |
| | | <el-row v-if="!amendtag"> |
| | | <el-col :span="8"> |
| | | <el-form-item label="民族" prop="name"> |
| | | <el-input |
| | |
| | | </el-row> |
| | | |
| | | <el-row> |
| | | <el-col :span="amendtag?12:24"v-if="!amendtag" > |
| | | <el-col :span="amendtag ? 12 : 24" v-if="!amendtag"> |
| | | <el-form-item label="患者类型"> |
| | | <el-select v-model="form.pattype" placeholder="请选择类型"> |
| | | <el-option |
| | |
| | | <el-button type="primary" @click="CreateService">创建服务</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | <!-- 风险类型 --> |
| | | <el-dialog title="选择风险类型" :visible.sync="RiskVisible"> |
| | | <el-card class="box-card"> |
| | | <el-form> |
| | | <el-form-item label="风险类型"> |
| | | <el-radio-group v-model="Riskradio"> |
| | | <el-radio :label="1">正常</el-radio> |
| | | <el-radio :label="2">轻微</el-radio> |
| | | <el-radio :label="3">高危</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item label="活动性质"> |
| | | <el-checkbox-group v-model="Risklist"> |
| | | <el-checkbox label="情况1" name="type"></el-checkbox> |
| | | <el-checkbox label="情况2" name="type"></el-checkbox> |
| | | <el-checkbox label="情况3" name="type"></el-checkbox> |
| | | <el-checkbox label="情况4" name="type"></el-checkbox> |
| | | </el-checkbox-group> |
| | | </el-form-item> |
| | | </el-form> |
| | | </el-card> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button @click="RiskVisible = false">取 消</el-button> |
| | | <el-button type="primary" @click="RiskService">确认修改</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | | |
| | |
| | | |
| | | export default { |
| | | name: "Patient", |
| | | dicts: ["sys_normal_disable", "task_status", "sys_user_sex",'futter_patient'], |
| | | dicts: [ |
| | | "sys_normal_disable", |
| | | "task_status", |
| | | "sys_user_sex", |
| | | "futter_patient", |
| | | ], |
| | | components: { Treeselect }, |
| | | data() { |
| | | return { |
| | |
| | | // 总条数 |
| | | total: 0, |
| | | tasktotal: 0, |
| | | Risklist: [], |
| | | // 用户表格数据 |
| | | userList: null, |
| | | taskuserList: null, |
| | |
| | | serviceVisible: false, |
| | | serviceradio: 1, |
| | | distributeVisible: false, |
| | | RiskVisible: false, |
| | | tasktopic: "5", //新增类型 |
| | | Riskradio: 1, |
| | | RiskObj: {}, |
| | | // 查询参数 |
| | | topqueryParams: { |
| | | pageNum: 1, |
| | |
| | | value: 2, |
| | | label: "女", |
| | | }, |
| | | |
| | | ], |
| | | |
| | | cardlist: [ |
| | |
| | | pageNum: 1, |
| | | allhosp: "1", |
| | | pageSize: 10, |
| | | searchscope:2, |
| | | searchscope: 2, |
| | | idcardno: undefined, |
| | | name: undefined, |
| | | status: undefined, |
| | |
| | | this.queryParams.leaveldeptcodes = store.getters.belongDepts.map( |
| | | (obj) => obj.deptCode |
| | | ); |
| | | this.queryParams.leavehospitaldistrictcodes=null; |
| | | this.queryParams.leavehospitaldistrictcodes = null; |
| | | } else if (this.queryParams.searchscope == 2) { |
| | | this.queryParams.leavehospitaldistrictcodes = |
| | | store.getters.belongWards.map((obj) => obj.districtCode); |
| | | this.queryParams.leaveldeptcodes=null; |
| | | this.queryParams.leaveldeptcodes = null; |
| | | } else { |
| | | this.queryParams.leaveldeptcodes = store.getters.belongDepts.map( |
| | | (obj) => obj.deptCode |
| | |
| | | Distributionservice(row) { |
| | | this.serviceVisible = true; |
| | | }, |
| | | RiskMarker(row) { |
| | | this.RiskVisible = true; |
| | | this.RiskObj=row; |
| | | }, |
| | | |
| | | // 取消按钮 |
| | | cancel() { |
| | |
| | | }, |
| | | /** 搜索按钮操作 */ |
| | | handleQuery() { |
| | | |
| | | this.queryParams.pageNum = 1; |
| | | this.getList(); |
| | | }, |
| | |
| | | query: { type: this.serviceradio }, |
| | | }); |
| | | }, |
| | | RiskService() { |
| | | |
| | | this.RiskObj.visitFlag = this.Risklist.join(", "); |
| | | this.RiskObj.visitType = this.Riskradio; |
| | | alterpatient(this.RiskObj).then((res) => { |
| | | if (res.code==200) { |
| | | this.getList(); |
| | | this.Risklist=[]; |
| | | this.Riskradio=1; |
| | | this.$modal.msgSuccess("异常记录成功"); |
| | | } |
| | | }); |
| | | }, |
| | | distribute() { |
| | | this.distributeVisible = true; |
| | | if (this.tasktopic == 1) { |
| | |
| | | <template> |
| | | <div class="app-container"> |
| | | <div class="leftvlue" style="margin-bottom: 20px"> |
| | | <el-row :gutter="10"> |
| | | <el-col :span="2.5" v-for="(item, index) in cardlist" :key="index"> |
| | | <el-card |
| | | shadow="hover" |
| | | :body-style="item.router ? ' cursor: pointer' : 'cursor: default'" |
| | | > |
| | | <div style="padding: 8px" @click="$router.push(item.router)"> |
| | | <span>{{ item.name }}</span> |
| | | <div |
| | | style=" |
| | | text-align: center; |
| | | font-size: 18px; |
| | | margin-top: 10px; |
| | | font-weight: 600; |
| | | " |
| | | > |
| | | {{ item.value }} |
| | | </div> |
| | | </div> |
| | | </el-card> |
| | | </el-col> |
| | | <el-col :span="2.5"> |
| | | <div class="ysfleftvlue"> |
| | | <el-card shadow="hover"> |
| | | <div style="padding: 8px"> |
| | | <span>已发送未领取</span> |
| | | <div |
| | | style=" |
| | | text-align: center; |
| | | font-size: 18px; |
| | | margin-top: 10px; |
| | | font-weight: 600; |
| | | " |
| | | > |
| | | {{ yfsvalue }} |
| | | </div> |
| | | </div> |
| | | </el-card> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="2.5"> |
| | | <div class="errleftvlue"> |
| | | <el-card shadow="hover"> |
| | | <div style="padding: 8px"> |
| | | <span>异常</span> |
| | | <div |
| | | style=" |
| | | text-align: center; |
| | | font-size: 18px; |
| | | margin-top: 10px; |
| | | font-weight: 600; |
| | | " |
| | | > |
| | | {{ ycvalue }} |
| | | </div> |
| | | </div> |
| | | </el-card> |
| | | </div> |
| | | </el-col> |
| | | </el-row> |
| | | </div> |
| | | <el-row :gutter="20"> |
| | | <!--用户数据--> |
| | | |
| | | <el-form |
| | | :model="topqueryParams" |
| | | ref="queryForm" |
| | |
| | | v-show="showSearch" |
| | | label-width="98px" |
| | | > |
| | | <el-form-item label="体检人姓名"> |
| | | <el-input v-model="topqueryParams.name"></el-input> |
| | | <el-form-item label="任务名称"> |
| | | <el-input |
| | | v-model="topqueryParams.taskName" |
| | | placeholder="请选择任务名称" |
| | | ></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-form-item label="患者姓名" prop="sendname"> |
| | | <el-input |
| | | v-model="topqueryParams.sendname" |
| | | placeholder="请输入患者姓名" |
| | | ></el-input> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="患者范围" prop="status"> |
| | | <el-cascader |
| | | v-model="topqueryParams.scopetype" |
| | | placeholder="默认全部" |
| | | :options="sourcetype" |
| | | :props="{ expandTrigger: 'hover' }" |
| | | @change="handleChange" |
| | | ></el-cascader> |
| | | </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-option |
| | | v-for="item in topicoptions" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | > |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="体检状态" prop="status"> |
| | | <el-select v-model="topqueryParams.topic" placeholder="请选择"> |
| | | <el-option |
| | | v-for="item in topicoptions" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | > |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | |
| | | <el-form-item> |
| | | <el-button |
| | | type="primary" |
| | | icon="el-icon-search" |
| | | size="medium" |
| | | @click="handleQuery" |
| | | @click="handleQuery(1)" |
| | | >搜索</el-button |
| | | > |
| | | <el-button icon="el-icon-refresh" size="medium" @click="resetQuery" |
| | |
| | | icon="el-icon-plus" |
| | | size="medium" |
| | | @click="handleAdd" |
| | | v-hasPermi="['system:user:add']" |
| | | >新增</el-button |
| | | > |
| | | </el-col> |
| | |
| | | <div class="documentf"> |
| | | <div class="document"> |
| | | <el-button |
| | | type="info" |
| | | icon="el-icon-refresh" |
| | | size="medium" |
| | | @click="TaskReset" |
| | | v-hasPermi="['system:user:export']" |
| | | >任务重置</el-button |
| | | > |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="1.5"> |
| | | <div class="documentf"> |
| | | <div class="document"> |
| | | <el-button |
| | | type="success" |
| | | icon="el-icon-position" |
| | | size="medium" |
| | | @click="AllStarted" |
| | | v-hasPermi="['system:user:export']" |
| | | >全部开始</el-button |
| | | > |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="1.5"> |
| | | <div class="documentf"> |
| | | <div class="document"> |
| | | <el-button |
| | | type="warning" |
| | | icon="el-icon-remove" |
| | | plain |
| | | icon="el-icon-warning-outline" |
| | | size="medium" |
| | | @click="AllStop" |
| | | v-hasPermi="['system:user:export']" |
| | | >全部停止</el-button |
| | | @click="toleadExport(1)" |
| | | >执行失败</el-button |
| | | > |
| | | </div> |
| | | </div> |
| | |
| | | <div class="documentf"> |
| | | <div class="document"> |
| | | <el-button |
| | | type="primary" |
| | | icon="el-icon-remove" |
| | | type="danger" |
| | | plain |
| | | icon="el-icon-warning" |
| | | size="medium" |
| | | @click="Sendtimesetting" |
| | | v-hasPermi="['system:user:export']" |
| | | >发送时间设置</el-button |
| | | @click="toleadExport(2)" |
| | | >结果异常</el-button |
| | | > |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | |
| | | <!-- <el-col :span="1.5"> </el-col> --> |
| | | </el-row> |
| | | <el-table |
| | | v-loading="loading" |
| | | :data="userList" |
| | | height="660" |
| | | :row-class-name="tableRowClassName" |
| | | @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="patientname" |
| | | prop="patientname" |
| | | key="sendname" |
| | | prop="sendname" |
| | | /> |
| | | |
| | | <el-table-column |
| | | label="就诊编号" |
| | | label="任务状态" |
| | | align="center" |
| | | sortable |
| | | key="hospno" |
| | | prop="hospno" |
| | | key="sendstate" |
| | | prop="sendstate" |
| | | width="120" |
| | | /> |
| | | <el-table-column label="年龄" align="center" key="age" prop="age" /> |
| | | <el-table-column |
| | | label="体检单位" |
| | | align="center" |
| | | key="depname" |
| | | prop="depname" |
| | | width="120" |
| | | > |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | label="体检套餐" |
| | | align="center" |
| | | key="topicnumber" |
| | | prop="topicnumber" |
| | | width="120" |
| | | :show-overflow-tooltip="true" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <div>入职体检A</div> |
| | | <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="任务异常说明" |
| | | width="120" |
| | | align="center" |
| | | key="remark" |
| | | prop="remark" --> |
| | | /> |
| | | |
| | | <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="体检方式" |
| | | label="随访人员" |
| | | align="center" |
| | | key="topicnumber" |
| | | prop="topicnumber" |
| | | width="120" |
| | | :show-overflow-tooltip="true" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <div>团检</div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="通知内容" |
| | | align="center" |
| | | key="topicnumberaa" |
| | | prop="topicnumberaa" |
| | | key="createBy" |
| | | prop="createBy" |
| | | width="120" |
| | | /> |
| | | <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="体检时间" |
| | | label="随访时间" |
| | | sortable |
| | | align="center" |
| | | prop="createTime" |
| | | prop="finishtime" |
| | | width="160" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <span>{{ formatTime(scope.row.createTime) }}</span> |
| | | <span>{{ parseTime(scope.row.finishtime) }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="报告时间" |
| | | sortable |
| | | label="出院日期" |
| | | width="200" |
| | | align="center" |
| | | prop="createTime" |
| | | width="160" |
| | | key="endtime" |
| | | prop="endtime" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <span>{{ formatTime(scope.row.createTime) }}</span> |
| | | <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="回复时间" |
| | | sortable |
| | | label="身份证号码" |
| | | width="200" |
| | | align="center" |
| | | prop="createTime" |
| | | width="160" |
| | | key="sfzh" |
| | | prop="sfzh" |
| | | /> |
| | | <el-table-column |
| | | label="联系电话" |
| | | width="200" |
| | | align="center" |
| | | key="phone" |
| | | prop="phone" |
| | | /> |
| | | <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="medicalRecordNo" |
| | | prop="medicalRecordNo" |
| | | width="120" |
| | | /> --> |
| | | |
| | | <!-- <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="科室" |
| | | align="center" |
| | | key="deptname" |
| | | prop="deptname" |
| | | width="120" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <span>{{ formatTime(scope.row.createTime) }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="病区" |
| | | align="center" |
| | | key="leavehospitaldistrictname" |
| | | prop="leavehospitaldistrictname" |
| | | width="120" |
| | | > |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | label="通知状态" |
| | | fixed="right" |
| | | <!-- <el-table-column |
| | | label="疾病名称" |
| | | align="center" |
| | | key="topicnumber" |
| | | prop="topicnumber" |
| | | key="icdName" |
| | | prop="icdName" |
| | | width="120" |
| | | :show-overflow-tooltip="true" |
| | | > |
| | | </el-table-column> --> |
| | | |
| | | <el-table-column |
| | | label="出院随访模板名称" |
| | | align="center" |
| | | key="templatename" |
| | | prop="templatename" |
| | | width="200" |
| | | /> |
| | | <el-table-column |
| | | label="任务执行方式" |
| | | align="center" |
| | | key="preachform" |
| | | prop="preachform" |
| | | width="160" |
| | | :show-overflow-tooltip="true" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <div>未完成</div> |
| | | <span v-for="item in scope.row.preachform">{{ item }}、 </span> |
| | | </template> |
| | | </el-table-column> |
| | | <!-- <el-table-column |
| | | label="任务发送流程" |
| | | align="center" |
| | | key="serviceSubtaskRecordList" |
| | | prop="serviceSubtaskRecordList" |
| | | width="160" |
| | | :show-overflow-tooltip="true" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <span v-for="item in scope.row.serviceSubtaskRecordList" |
| | | >{{ item.remark }}、 |
| | | </span> |
| | | </template> |
| | | </el-table-column> --> |
| | | <el-table-column |
| | | label="任务结果说明" |
| | | width="200" |
| | | align="center" |
| | | key="remark" |
| | | prop="remark" |
| | | > |
| | | <template slot-scope="scope" v-if="scope.row.remark"> |
| | | <el-tag |
| | | type="warning" |
| | | v-if="scope.row.sendstate != 5 && scope.row.sendstate != 4" |
| | | >{{ scope.row.remark }}</el-tag |
| | | > |
| | | <el-tag type="warning" v-else>{{ scope.row.remark }}</el-tag> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="操作" |
| | | fixed="right" |
| | | align="center" |
| | | fixed="right" |
| | | width="200" |
| | | class-name="small-padding fixed-width" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <!-- <el-button |
| | | size="medium" |
| | | type="text" |
| | | @click="followupvisit(scope.row)" |
| | | v-hasPermi="['system:user:edit']" |
| | | ><span class="button-bb" |
| | | ><i class="el-icon-s-promotion"></i>重新通知</span |
| | | ></el-button |
| | | <!-- <el-tooltip |
| | | class="item" |
| | | effect="dark" |
| | | content="重新随访" |
| | | placement="top" |
| | | > |
| | | <el-button |
| | | size="medium" |
| | | type="text" |
| | | @click="handlestop(scope.row)" |
| | | v-hasPermi="['system:user:edit']" |
| | | ><span class="button-sc" |
| | | ><i class="el-icon-delete"></i>停止</span |
| | | ></el-button |
| | | > --> |
| | | <el-button |
| | | size="medium" |
| | | type="text" |
| | | @click="Seedetails(scope.row)" |
| | | v-hasPermi="['system:user:edit']" |
| | | <el-button |
| | | size="medium" |
| | | type="text" |
| | | @click="followupvisit(scope.row)" |
| | | v-hasPermi="['system:user:edit']" |
| | | ><span class="button-bb" |
| | | ><i class="el-icon-s-promotion"></i></span |
| | | ></el-button> |
| | | </el-tooltip> --> |
| | | <!-- <el-tooltip |
| | | class="item" |
| | | effect="dark" |
| | | content="停止" |
| | | placement="top" |
| | | > |
| | | <el-button |
| | | size="medium" |
| | | type="text" |
| | | @click="handlestop(scope.row)" |
| | | v-hasPermi="['system:user:edit']" |
| | | ><span class="button-sc"><i class="el-icon-delete"></i></span |
| | | ></el-button> |
| | | </el-tooltip> --> |
| | | <el-button size="medium" type="text" @click="Seedetails(scope.row)" |
| | | ><span class="button-zx" |
| | | ><i class="el-icon-s-order"></i>查看详情</span |
| | | ></el-button |
| | |
| | | resetUserPwd, |
| | | changeUserStatus, |
| | | } from "@/api/system/user"; |
| | | import { |
| | | getTaskservelist |
| | | } from "@/api/AiCentre/index"; |
| | | 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 { |
| | |
| | | }, |
| | | dynamicTags: ["选项一", "选项二", "选项三"], //选项 |
| | | inputVisible: false, |
| | | ycvalue: "", |
| | | yfsvalue: "", |
| | | inputValue: "", |
| | | preachform: "", |
| | | previewVisible: false, //门诊随访预览弹框 |
| | | radio: "", |
| | | radios: [], |
| | |
| | | }, |
| | | value: [], |
| | | list: [], |
| | | loading: false, |
| | | states: [ |
| | | "Alabama", |
| | | "Nebraska", |
| | | "Nevada", |
| | | "New Hampshire", |
| | | "New Jersey", |
| | | "New Mexico", |
| | | "New York", |
| | | "North Carolina", |
| | | "North Dakota", |
| | | "Ohio", |
| | | "Oklahoma", |
| | | "Oregon", |
| | | "Pennsylvania", |
| | | "Rhode Island", |
| | | "South Carolina", |
| | | "South Dakota", |
| | | "Tennessee", |
| | | "Texas", |
| | | "Utah", |
| | | "Vermont", |
| | | "Virginia", |
| | | "Washington", |
| | | "West Virginia", |
| | | "Wisconsin", |
| | | "Wyoming", |
| | | ], |
| | | pickerOptions: { |
| | | disabledDate(time) { |
| | | return time.getTime() > Date.now(); |
| | | |
| | | sourcetype: [ |
| | | { |
| | | value: 1, |
| | | label: "科室", |
| | | children: [], |
| | | }, |
| | | shortcuts: [ |
| | | { |
| | | text: "今天", |
| | | onClick(picker) { |
| | | picker.$emit("pick", new Date()); |
| | | }, |
| | | }, |
| | | { |
| | | text: "昨天", |
| | | onClick(picker) { |
| | | const date = new Date(); |
| | | date.setTime(date.getTime() - 3600 * 1000 * 24); |
| | | picker.$emit("pick", date); |
| | | }, |
| | | }, |
| | | { |
| | | text: "一周前", |
| | | onClick(picker) { |
| | | const date = new Date(); |
| | | date.setTime(date.getTime() - 3600 * 1000 * 24 * 7); |
| | | picker.$emit("pick", date); |
| | | }, |
| | | }, |
| | | ], |
| | | }, |
| | | { |
| | | value: 2, |
| | | label: "病区", |
| | | children: [], |
| | | }, |
| | | { |
| | | value: 3, |
| | | label: "全部", |
| | | }, |
| | | ], |
| | | loading: false, |
| | | cardlist: [ |
| | | { |
| | | name: "出院服务总量", |
| | | value: 0, |
| | | }, |
| | | { |
| | | name: "患者过滤", |
| | | value: 0, |
| | | }, |
| | | { |
| | | name: "应随访", |
| | | value: 0, |
| | | }, |
| | | |
| | | // { |
| | | // name: "异常", |
| | | // value: 0, |
| | | // }, |
| | | { |
| | | name: "发送失败", |
| | | value: 0, |
| | | }, |
| | | { |
| | | name: "待发送", |
| | | value: 0, |
| | | }, |
| | | { |
| | | name: "已发送", |
| | | value: 0, |
| | | }, |
| | | |
| | | // { |
| | | // name: "已发送未领取", |
| | | // value: 0, |
| | | // }, |
| | | ], |
| | | |
| | | // 表单参数 |
| | | form: { |
| | | phonenumber: "", |
| | |
| | | topqueryParams: { |
| | | pageNum: 1, |
| | | pageSize: 10, |
| | | serviceType:1, |
| | | serviceType: 1, |
| | | searchscope: 3, |
| | | scopetype: [], |
| | | leaveldeptcodes: [], |
| | | leavehospitaldistrictcodes: [], |
| | | }, |
| | | 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: "正常", |
| | | }, |
| | | ], |
| | | errtype: "", |
| | | leavehospitaldistrictcode: "", |
| | | serviceState: [], |
| | | checkboxlist: [], |
| | | // 表单校验 |
| | | 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.getList(); |
| | | this.serviceState = store.getters.serviceState; |
| | | this.checkboxlist = store.getters.checkboxlist; |
| | | this.errtype = this.$route.query.errtype; |
| | | this.leavehospitaldistrictcode = |
| | | this.$route.query.leavehospitaldistrictcode; |
| | | this.sourcetype[0].children = store.getters.belongDepts.map((dept) => { |
| | | return { |
| | | label: dept.deptName, |
| | | value: dept.deptCode, |
| | | }; |
| | | }); |
| | | this.sourcetype[1].children = store.getters.belongWards.map((dept) => { |
| | | return { |
| | | label: dept.districtName, |
| | | value: dept.districtCode, |
| | | }; |
| | | }); |
| | | if (this.errtype) { |
| | | this.toleadExport(2); |
| | | } else { |
| | | this.getList(1); |
| | | } |
| | | this.getConfigKey("sys.user.initPassword").then((response) => { |
| | | this.initPassword = response.msg; |
| | | }); |
| | | }, |
| | | // 搜索 |
| | | mounted() { |
| | | this.list = this.states.map((item) => { |
| | | return { value: `value:${item}`, label: `label:${item}` }; |
| | | }); |
| | | activated() { |
| | | this.getList(1); |
| | | }, |
| | | methods: { |
| | | /** 查询门诊随访列表 */ |
| | | getList() { |
| | | /** 查询门诊随访服务列表 */ |
| | | getList(refresh) { |
| | | // 默认全部 |
| | | if (this.topqueryParams.searchscope == 3) { |
| | | this.topqueryParams.leaveldeptcodes = store.getters.belongDepts.map( |
| | | (obj) => obj.deptCode |
| | | ); |
| | | this.topqueryParams.leavehospitaldistrictcodes = |
| | | store.getters.belongWards.map((obj) => obj.districtCode); |
| | | } |
| | | // 接受异常跳转 |
| | | if (this.errtype) { |
| | | this.topqueryParams.leavehospitaldistrictcodes.push( |
| | | this.leavehospitaldistrictcode |
| | | ); |
| | | console.log(this.topqueryParams.leavehospitaldistrictcodes, "11"); |
| | | } |
| | | this.loading = true; |
| | | getTaskservelist(this.topqueryParams).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.total = response.total; |
| | | if (refresh) { |
| | | this.cardlist[0].value = |
| | | Number(response.rows[0].wzx) + Number(response.rows[0].ysf); |
| | | this.cardlist[1].value = response.rows[0].wzx; |
| | | this.cardlist[2].value = response.rows[0].ysf; |
| | | this.ycvalue = response.rows[0].yc; |
| | | this.cardlist[3].value = response.rows[0].fssb; |
| | | this.cardlist[4].value = response.rows[0].dfs; |
| | | this.cardlist[5].value = response.rows[0].yfs2; |
| | | this.yfsvalue = response.rows[0].yfs; |
| | | } |
| | | ); |
| | | this.loading = false; |
| | | this.userList.forEach((item) => { |
| | | let idArray = null; |
| | | if (item.endtime) { |
| | | item.endDay = this.daysBetween(item.endtime); |
| | | } |
| | | |
| | | if (item.preachform) { |
| | | if (item.endtime) { |
| | | item.preachformson = item.preachform; |
| | | idArray = item.preachform.split(","); |
| | | } |
| | | |
| | | item.preachform = idArray.map((value) => { |
| | | // 查找id对应的对象 |
| | | const item = this.checkboxlist.find( |
| | | (item) => item.value == value |
| | | ); |
| | | // 如果找到对应的id,返回label值,否则返回null |
| | | return item ? item.label : null; |
| | | }); |
| | | } |
| | | }); |
| | | this.total = response.total; |
| | | }); |
| | | }, |
| | | // 查看门诊随访详情 |
| | | Referencequestion(row) { |
| | |
| | | this.resetForm("form"); |
| | | }, |
| | | /** 搜索按钮操作 */ |
| | | handleQuery() { |
| | | handleQuery(refresh) { |
| | | if (this.topqueryParams.searchscope == 3) { |
| | | 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.getList(); |
| | | this.topqueryParams.startOutHospTime = this.dateRange[0]; |
| | | this.topqueryParams.endOutHospTime = this.dateRange[1]; |
| | | |
| | | this.getList(refresh); |
| | | }, |
| | | // 患者范围处理 |
| | | handleChange(value) { |
| | | let type = value[0]; |
| | | let code = value.slice(-1)[0]; |
| | | this.topqueryParams.leavehospitaldistrictcodes = []; |
| | | this.topqueryParams.leaveldeptcodes = []; |
| | | |
| | | if (type == 1) { |
| | | this.topqueryParams.leaveldeptcodes.push(code); |
| | | this.topqueryParams.leavehospitaldistrictcodes = []; |
| | | this.topqueryParams.searchscope = 1; |
| | | } else if (type == 2) { |
| | | this.topqueryParams.leavehospitaldistrictcodes.push(code); |
| | | this.topqueryParams.leaveldeptcodes = []; |
| | | this.topqueryParams.searchscope = 2; |
| | | } else { |
| | | this.topqueryParams.searchscope = 3; |
| | | } |
| | | }, |
| | | /** 重置按钮操作 */ |
| | | resetQuery() { |
| | | this.dateRange = []; |
| | | this.resetForm("queryForm"); |
| | | this.topqueryParams.deptId = undefined; |
| | | this.$refs.tree.setCurrentKey(null); |
| | | this.handleQuery(); |
| | | this.topqueryParams = { |
| | | pageNum: 1, |
| | | pageSize: 10, |
| | | serviceType: 1, |
| | | searchscope: 2, |
| | | }; |
| | | this.handleQuery(1); |
| | | }, |
| | | // 多选框选中数据 |
| | | handleSelectionChange(selection) { |
| | |
| | | updateUser(this.form).then((response) => { |
| | | this.$modal.msgSuccess("修改成功"); |
| | | this.open = false; |
| | | this.getList(); |
| | | this.getList(1); |
| | | }); |
| | | } else { |
| | | addUser(this.form).then((response) => { |
| | | this.$modal.msgSuccess("新增成功"); |
| | | this.open = false; |
| | | this.getList(); |
| | | this.getList(1); |
| | | }); |
| | | } |
| | | } |
| | |
| | | return delUser(userIds); |
| | | }) |
| | | .then(() => { |
| | | this.getList(); |
| | | this.getList(1); |
| | | this.$modal.msgSuccess("删除成功"); |
| | | }) |
| | | .catch(() => {}); |
| | |
| | | return console.log("停止成功"); |
| | | }) |
| | | .then(() => { |
| | | this.getList(); |
| | | this.getList(1); |
| | | this.$modal.msgWarning("停止成功"); |
| | | }) |
| | | .catch(() => {}); |
| | |
| | | return console.log("开启成功"); |
| | | }) |
| | | .then(() => { |
| | | this.getList(); |
| | | this.getList(1); |
| | | this.$modal.msgSuccess("开启成功"); |
| | | }) |
| | | .catch(() => {}); |
| | |
| | | return console.log("选中成功"); |
| | | }) |
| | | .then(() => { |
| | | this.getList(); |
| | | this.getList(1); |
| | | this.$modal.msgSuccess("重置成功"); |
| | | }) |
| | | .catch(() => {}); |
| | |
| | | }, |
| | | // 跳转详情页 |
| | | Seedetails(row) { |
| | | let type = ""; |
| | | console.log(row, "rwo"); |
| | | if (row.preachformson) { |
| | | if (row.preachformson.includes("3")) { |
| | | type = 1; |
| | | console.log(type, "rwo"); |
| | | } |
| | | } |
| | | this.$router.push({ |
| | | path: "/followvisit/record/detailpage/", |
| | | query: { taskid: row.taskid, patid: row.patid }, |
| | | query: { |
| | | taskid: row.taskid, |
| | | patid: row.patid, |
| | | id: row.id, |
| | | Voicetype: type, |
| | | }, |
| | | }); |
| | | }, |
| | | // 导入按钮 |
| | | toleadExport() {}, |
| | | // 便捷按钮 |
| | | toleadExport(too) { |
| | | if (too == 1) { |
| | | this.topqueryParams.sendstate = 4; |
| | | this.topqueryParams.excep = null; |
| | | } else if (too == 2) { |
| | | this.topqueryParams.excep = 1; |
| | | } |
| | | this.handleQuery(); |
| | | }, |
| | | /** 导出按钮操作 */ |
| | | handleExport() { |
| | | this.topqueryParams.pageNum = null; |
| | | this.topqueryParams.pageSize = null; |
| | | this.download( |
| | | "system/user/export", |
| | | "smartor/serviceSubtask/export", |
| | | { |
| | | ...this.topqueryParams, |
| | | }, |
| | | `user_${new Date().getTime()}.xlsx` |
| | | ); |
| | | }, |
| | | // 异常列渲染 |
| | | tableRowClassName({ row, rowIndex }) { |
| | | if (row.excep == 1) { |
| | | return "warning-row"; |
| | | } |
| | | return ""; |
| | | }, |
| | | }, |
| | | }; |
| | |
| | | .document { |
| | | // width: 100px; |
| | | height: 50px; |
| | | } |
| | | ::v-deep.el-table .warning-row { |
| | | background: #eec4c4; |
| | | } |
| | | |
| | | .documentf { |
| | |
| | | } |
| | | } |
| | | } |
| | | ::v-deep.leftvlue .el-card__body { |
| | | background: #d0e9fd; |
| | | } |
| | | ::v-deep.leftvlue .el-card__body:hover { |
| | | background: #8dc8f8; |
| | | cursor: pointer; /* 鼠标悬浮时变为手形 */ |
| | | } |
| | | ::v-deep.errleftvlue .el-card__body { |
| | | background: #fdd0d7; |
| | | } |
| | | ::v-deep.errleftvlue .el-card__body:hover { |
| | | background: #f88d96; |
| | | cursor: pointer; /* 鼠标悬浮时变为手形 */ |
| | | } |
| | | |
| | | ::v-deep.ysfleftvlue .el-card__body { |
| | | background: #d0fdd8; |
| | | } |
| | | ::v-deep.ysfleftvlue .el-card__body:hover { |
| | | background: #8df8a4; |
| | | cursor: pointer; /* 鼠标悬浮时变为手形 */ |
| | | } |
| | | .button-bb { |
| | | font-weight: 500; |
| | | background-color: #2ba05c; |
| | |
| | | value: "5", |
| | | label: "微信公众号", |
| | | }, |
| | | { label: "微信小程序", value: 6 }, |
| | | |
| | | { label: "微信小程序", value: 6 }, |
| | | ]; |
| | | } else if (this.form.serviceType == 6) { |
| | | this.checkboxlist = [ |
| | |
| | | xh: 1, |
| | | }, |
| | | ]; |
| | | |
| | | if (this.checkList[0]) { |
| | | this.form.preachform = this.checkList.join(","); |
| | | } else { |
| | |
| | | this.form.leavehospitaldistrictcodes = store.getters.belongWards.map( |
| | | (obj) => obj.districtCode |
| | | ); |
| | | console.log(this.form.longTask); |
| | | console.log(this.form.preachform); |
| | | |
| | | if (this.form.longTask && this.form.preachform == 6) { |
| | | this.form.patCycle = 1; |
| | | } |
| | | Editsingletask(this.form).then((res) => { |
| | | if (res.code == 200) { |
| | | if (this.form.taskid) { |
| | |
| | | if (res.code == 200) { |
| | | this.objyl = res.data; |
| | | if (this.objyl.taskid == data.taskId) { |
| | | this.objyl.isoperation = 2; |
| | | }else{ |
| | | this.objyl.isoperation = 1; |
| | | this.objyl.isoperation = 2; |
| | | } else { |
| | | this.objyl.isoperation = 1; |
| | | } |
| | | this.objyl.taskid = data.taskId; |
| | | this.objyl.sendDay='5', |
| | | TaskQuestioncomit(this.objyl).then((response) => { |
| | | this.previewtf = false; |
| | | this.form.libtemplateid = this.objyl.svyid; |
| | |
| | | this.overallCase.forEach((item) => { |
| | | this.allpids.push(item.patid); |
| | | }); |
| | | if (this.patientqueryParams.allhosp == 1||(this.patientqueryParams.allhosp == 1&&this.patientqueryParams.cry == 1)) { |
| | | if ( |
| | | this.patientqueryParams.allhosp == 1 || |
| | | (this.patientqueryParams.allhosp == 1 && |
| | | this.patientqueryParams.cry == 1) |
| | | ) { |
| | | this.tableLabelhz = [ |
| | | // { label: "入院日期", width: "170", prop: "starttime" }, |
| | | { label: "出院日期", width: "150", prop: "endtime" }, |
| | |
| | | ]; |
| | | } else if (this.patientqueryParams.allhosp == 4) { |
| | | this.tableLabelhz = [ |
| | | { label: "入院日期", width: "150", prop: "starttime" }, |
| | | { label: "入院日期", width: "150", prop: "starttime" }, |
| | | { label: "患者", width: "", prop: "name" }, |
| | | { label: "身份证", width: "200", prop: "idcardno" }, |
| | | { label: "性别", width: "", prop: "sex" }, |
| | |
| | | this.patientqueryParams.cry = 1; |
| | | } else if (this.patientqueryParams.allhosp == 4) { |
| | | this.patientqueryParams.cry = 0; |
| | | this.patientqueryParams.allhosp = '1'; |
| | | this.patientqueryParams.allhosp = "1"; |
| | | } |
| | | // 来源判断 |
| | | |
| | |
| | | this.$modal.msgError(res.code); |
| | | } |
| | | |
| | | if (this.newadd) { |
| | | this.neWaddfn(); |
| | | } |
| | | if (this.newadd) { |
| | | this.neWaddfn(); |
| | | } |
| | | }); |
| | | } |
| | | }, |
| | | // 依照新增时处理 |
| | | neWaddfn(){ |
| | | this.id=null; |
| | | this.form.taskName=''; |
| | | neWaddfn() { |
| | | this.id = null; |
| | | this.form.taskName = ""; |
| | | this.form.taskid = null; |
| | | this.overallCase=[]; |
| | | this.form.patTaskRelevances=[]; |
| | | this.daytime=[]; //日期 |
| | | this.applydaytime=[]; //计算日期 |
| | | this.time1=""; //上午时间段 |
| | | this.time2=""; //下午时间段 |
| | | this.time3=""; //晚上时间段 |
| | | this.time4=""; //晚上时间段 |
| | | this.overallCase = []; |
| | | this.form.patTaskRelevances = []; |
| | | this.daytime = []; //日期 |
| | | this.applydaytime = []; //计算日期 |
| | | this.time1 = ""; //上午时间段 |
| | | this.time2 = ""; //下午时间段 |
| | | this.time3 = ""; //晚上时间段 |
| | | this.time4 = ""; //晚上时间段 |
| | | }, |
| | | // 获取科室列表 |
| | | listDept() { |
| | |
| | | |
| | | this.objyl.isoperation = 1; |
| | | console.log(this.objyl.id); |
| | | this.objyl.sendDay='5'; |
| | | |
| | | if (this.objyl.id) { |
| | | deleteTaskQuestioncomit(this.objyl.id).then((res) => { |
| | |
| | | </el-col> |
| | | |
| | | <el-col :span="1.5"> |
| | | <div v-if="form.longTask"> |
| | | <el-tooltip |
| | | class="item" |
| | | effect="dark" |
| | | content="长期任务不支持手动添加患者!" |
| | | placement="top-start" |
| | | > |
| | | <el-button |
| | | type="primary" |
| | | plain |
| | | disabled |
| | | icon="el-icon-plus" |
| | | size="medium" |
| | | @click="handleQuery" |
| | | >新增</el-button |
| | | > |
| | | </el-tooltip> |
| | | </div> |
| | | <div v-else> |
| | | |
| | | |
| | | <el-button |
| | | type="primary" |
| | | plain |
| | |
| | | @click="handleQuery" |
| | | >新增</el-button |
| | | > |
| | | </div> |
| | | |
| | | </el-col> |
| | | |
| | | <!-- <el-col :span="1.5"> |
| | |
| | | ], |
| | | // 科室/病区 |
| | | belongWards: [], |
| | | belongWards: [], |
| | | deptlist: [], |
| | | hosplist: [], |
| | | tempDetpRelevanceslist: [], //科室数据 |
| | |
| | | tempid: "", |
| | | type: 2, |
| | | }, |
| | | belongDepts:[], |
| | | quote: false, |
| | | serviceType: null, |
| | | }; |
| | |
| | | this.objyl = res.data; |
| | | this.objyl.isoperation = 2; |
| | | this.objyl.taskid = data.taskId; |
| | | this.objyl.sendDay='5', |
| | | console.log(this.objyl.sendDay,'this.objyl.sendDay'); |
| | | |
| | | Taskparticty(this.objyl).then((response) => { |
| | | this.previewtf = false; |
| | | this.form.libtemplateid = this.objyl.id; |
| | |
| | | if (res.code == 200) { |
| | | this.objyl = res.data; |
| | | if (this.form.longTask) { |
| | | this.objyl.longTemp = 5; |
| | | this.objyl.sendDay = 5; |
| | | } |
| | | this.queryParamsdept.type = 2; |
| | | this.queryParamsdept.tempid = row.id; |
| | |
| | | if (this.form.id) { |
| | | this.objyl.taskid = this.form.id; |
| | | } |
| | | this.objyl.sendDay='5'; |
| | | if (this.form.templateid) { |
| | | deleteTaskparticty(this.form.templateid).then((res) => { |
| | | if (res.code == 200) { |
| | |
| | | }; |
| | | // 发起ws请求 |
| | | sendWebsocket( |
| | | "ws://192.168.2.10:8095/chat?userId="+this.userid, |
| | | "ws://9.208.2.190:8095/chat?userId="+this.userid, |
| | | obj, |
| | | this.wsMessage, |
| | | this.wsError |
| | |
| | | console.log(obj, "入参"); |
| | | // 发起ws请求 |
| | | sendWebsocket( |
| | | "ws://192.168.2.10:8095/chat?userId="+this.userid, |
| | | "ws://9.208.2.190:8095/chat?userId="+this.userid, |
| | | obj, |
| | | this.wsMessage, |
| | | this.wsError |
| | |
| | | [process.env.VUE_APP_BASE_API]: { |
| | | // target: `http://192.168.168.60:8095`, |
| | | // target: `http://10.202.20.185:8095`, |
| | | target: `http://192.168.2.10:8095`, |
| | | // target:`http://localhost:8095`, |
| | | // target: `http://192.168.100.184:8095`, |
| | | target:`http://localhost:8095`, |
| | | // target: `http://192.168.101.135:8095`, |
| | | // target: `http://192.168.101.166:8093`, |
| | | // target: `http://192.168.191.181:8095`, |