Browse Source

患者档案手机号校验代码有误

newMaster
1747191978@qq.com 4 months ago
parent
commit
b21b1c3c2d
  1. 4
      acupuncture-前台/src/views/followFile/index.vue
  2. 270
      acupuncture-前台/src/views/followFile/work.vue
  3. 2
      acupuncture-前台/src/views/medicalFile/index.vue
  4. 26
      acupuncture-前台/src/views/patientFile/index.vue

4
acupuncture-前台/src/views/followFile/index.vue

@ -119,7 +119,7 @@
>
<template slot-scope="scope">
<span v-if="scope.row.status == 0" style="color: #F56C6C">禁用</span>
<span v-else style="color: #67C23A">本院</span>
<span v-else style="color: #67C23A">启用</span>
</template>
</el-table-column>
<el-table-column
@ -130,7 +130,7 @@
>
<template slot-scope="scope">
<span v-if="scope.row.type == 1"> 公共</span>
<span v-if="scope.row.status == 1" style="color: #67C23A">启用</span>
<span v-if="scope.row.status == 1" style="color: #67C23A">本院</span>
</template>
</el-table-column>
<el-table-column

270
acupuncture-前台/src/views/followFile/work.vue

@ -1,110 +1,47 @@
<template>
<div class="app-container">
<el-row :gutter="10" class="mb8">
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-tabs v-model="queryParams.param.status" @tab-click="handleClick">
<el-tab-pane label="待随访" name="0"></el-tab-pane>
<el-tab-pane label="已随访" name="1"></el-tab-pane>
<el-tab-pane label="失访" name="2"></el-tab-pane>
</el-tabs>
<el-table
v-loading="loading"
:data="listDat"
@selection-change="handleSelectionChange"
>
<el-table v-loading="loading" :data="listDat" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column
label="工单id"
fixed
show-overflow-tooltip
align="center"
prop="id"
width="200"
/>
<el-table-column
fixed
label="随访队列"
show-overflow-tooltip
align="center"
prop=""
width="100"
/>
<el-table-column
fixed
label="患者姓名"
align="center"
prop="name"
width="100"
/>
<el-table-column
label="性别"
align="center"
prop="gender"
show-overflow-tooltip
width="100"
>
<el-table-column label="工单id" fixed show-overflow-tooltip align="center" prop="id" width="200" />
<el-table-column fixed label="随访队列" show-overflow-tooltip align="center" prop="queueName" width="150" />
<el-table-column fixed label="患者姓名" align="center" prop="name" width="100" />
<el-table-column label="性别" align="center" prop="gender" show-overflow-tooltip width="60">
<template slot-scope="scope">
<span v-if="scope.row.gender == 0"></span>
<span v-if="scope.row.gender == 1"></span>
</template>
</el-table-column>
<el-table-column
label="年龄"
align="center"
prop="age"
show-overflow-tooltip
width="150"
/>
<el-table-column
label="证件号码"
align="center"
prop="idCard"
show-overflow-tooltip
width="180"
/>
<el-table-column
label="手机号码"
align="center"
prop="phone"
show-overflow-tooltip
width="150"
/>
<el-table-column
label="随访序号"
align="center"
prop="phone"
show-overflow-tooltip
width="150"
/>
<el-table-column
label="开始时间"
align="center"
prop="startTime"
show-overflow-tooltip
width="150"
/>
<el-table-column
label="结束时间"
align="center"
prop="endTime"
show-overflow-tooltip
width="150"
/>
<el-table-column label="年龄" align="center" prop="age" show-overflow-tooltip width="60" />
<el-table-column label="证件号码" align="center" prop="idCard" show-overflow-tooltip width="180" />
<el-table-column label="手机号码" align="center" prop="phone" show-overflow-tooltip width="150" />
<el-table-column label="随访序号" align="center" prop="phone" show-overflow-tooltip width="150" />
<el-table-column label="开始时间" align="center" prop="startTime" show-overflow-tooltip width="150">
<template slot-scope="scope">
<span>{{
parseTime(scope.row.startTime, "{y}-{m}-{d} {h}:{i}")
}}</span>
</template>
</el-table-column>
<el-table-column label="结束时间" align="center" prop="endTime" show-overflow-tooltip width="150">
<template slot-scope="scope">
<span>{{
parseTime(scope.row.endTime, "{y}-{m}-{d} {h}:{i}")
}}</span>
</template>
</el-table-column>
<!--待随访 随访状态待随访/即将超期/超期 -->
<!--已随访 随访状态已随访/超随访期 -->
<!--待随访 随访状态待随访 -->
<el-table-column
label="随访状态"
align="center"
prop="phone"
show-overflow-tooltip
width="150"
>
<el-table-column label="随访状态" align="center" prop="phone" show-overflow-tooltip width="150">
<template slot-scope="scope">
{{ status[scope.row.status] }}
</template>
@ -116,78 +53,37 @@
show-overflow-tooltip
width="150"
/> -->
<el-table-column
label="失访原因"
align="center"
prop="reason"
show-overflow-tooltip
width="150"
/>
<el-table-column label="失访原因" align="center" prop="reason" show-overflow-tooltip width="150" />
<el-table-column fixed="right" label="操作" align="center" width="150">
<template slot-scope="scope">
<!-- :disabled="scope.row.status !== '0'" -->
<el-button
:disabled="scope.row.status !== '0'"
size="mini"
type="text"
icon="el-icon-s-check"
@click="handleFollow(scope.row)"
>
<el-button :disabled="scope.row.status !== '0'" size="mini" type="text" icon="el-icon-s-check"
@click="handleFollow(scope.row)">
随访
</el-button>
<el-button
:disabled="scope.row.status !== '0'"
size="mini"
type="text"
icon="el-icon-s-release"
@click="handleLossFollow(scope.row)"
>
<el-button :disabled="scope.row.status !== '0'" size="mini" type="text" icon="el-icon-s-release"
@click="handleLossFollow(scope.row)">
失访
</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize" @pagination="getList" />
<!-- 失访 -->
<el-dialog
class="popup"
title="失访"
:visible.sync="open"
width="780px"
append-to-body
>
<el-form
class="formStep"
ref="form"
:model="form"
:rules="rules"
label-width="90px"
>
<el-dialog class="popup" title="失访" :visible.sync="open" width="780px" append-to-body>
<el-form class="formStep" ref="form" :model="form" :rules="rules" label-width="90px">
<el-form-item label="随访次数" prop="times">
<el-input v-model="form.times" placeholder="请输入" />
</el-form-item>
<el-form-item label="失访原因" prop="reason">
<el-select v-model="form.reason" placeholder="请选择">
<el-option-group
v-for="group in options"
:key="group.label"
:label="group.label"
>
<el-option
v-for="item in group.options"
:key="item.value"
:label="item.label"
:value="item.value"
>
<el-option-group v-for="group in options" :key="group.label" :label="group.label">
<el-option v-for="item in group.options" :key="item.value" :label="item.label"
:value="item.value">
</el-option>
</el-option-group>
</el-select>
@ -199,31 +95,14 @@
</div>
</el-dialog>
<!-- 随访 -->
<el-dialog
class="popup"
title="随访"
:visible.sync="open1"
width="780px"
append-to-body
>
<el-form
class="formStep"
ref="form1"
:model="form"
:rules="rules"
label-width="90px"
>
<el-dialog class="popup" title="随访" :visible.sync="open1" width="780px" append-to-body>
<el-form class="formStep" ref="form1" :model="form" :rules="rules" label-width="90px">
<el-form-item label="随访人" prop="followuper">
<el-input v-model="form.followuper" placeholder="请输入" />
</el-form-item>
<el-form-item label="随访时间" prop="followupTime">
<el-date-picker
format="yyyy-MM-dd HH:mm:ss"
value-format="yyyy-MM-dd HH:mm:ss"
v-model="form.followupTime"
type="datetime"
placeholder="选择日期"
>
<el-date-picker format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss"
v-model="form.followupTime" type="datetime" placeholder="选择日期">
</el-date-picker>
</el-form-item>
<el-form-item label="随访次数" prop="times">
@ -242,16 +121,18 @@
</template>
<script>
import { queryTask, updStatus, followPatient } from "@/api/followupFile";
import {
queryTask,
updStatus,
followPatient
} from "@/api/followupFile";
export default {
name: "Notice",
data() {
return {
options: [
{
options: [{
label: "患者原因",
options: [
{
options: [{
value: "患者病情加重或死亡,无法参与随访",
},
{
@ -270,8 +151,7 @@ export default {
},
{
label: "医疗机构原因",
options: [
{
options: [{
value: "随访管理不足,未及时安排随访",
},
{
@ -287,8 +167,7 @@ export default {
},
{
label: "不可抗力",
options: [
{
options: [{
value: "社会动荡或自然灾害",
},
{
@ -359,22 +238,32 @@ export default {
form: {},
//
rules: {
followuper: [
{ required: true, message: "随访人不能为空", trigger: "blur" },
],
followupTime: [
{ required: true, message: "随访时间不能为空", trigger: "change" },
],
followupText: [
{ required: true, message: "随访内容不能为空", trigger: "blur" },
],
times: [
{ required: true, message: "随访次数不能为空", trigger: "blur" },
],
followuper: [{
required: true,
message: "随访人不能为空",
trigger: "blur"
}, ],
followupTime: [{
required: true,
message: "随访时间不能为空",
trigger: "change"
}, ],
followupText: [{
required: true,
message: "随访内容不能为空",
trigger: "blur"
}, ],
times: [{
required: true,
message: "随访次数不能为空",
trigger: "blur"
}, ],
reason: [
{ required: true, message: "失访原因不能为空", trigger: "change" },
],
reason: [{
required: true,
message: "失访原因不能为空",
trigger: "change"
}, ],
},
};
},
@ -492,7 +381,9 @@ export default {
this.$modal
.confirm("是否确认删除当前选择的数据?")
.then(function() {
return patientDel({ idList: idList });
return patientDel({
idList: idList
});
})
.then(() => {
this.getList();
@ -503,8 +394,7 @@ export default {
/** 导出按钮操作 */
handleExport() {
this.download(
"system/user/export",
{
"system/user/export", {
...this.queryParams.params,
},
`患者档案.xlsx`
@ -524,9 +414,11 @@ export default {
display: flex;
align-items: center;
}
.form-item-age span {
margin: 0 10px;
}
.form-item-age>>>.el-input {
width: 100px;
}

2
acupuncture-前台/src/views/medicalFile/index.vue

@ -471,7 +471,7 @@
</el-drawer>
<!-- 导入患者信息 -->
<el-dialog title="导入诊疗档案" :visible.sync="importOpen" width="640px" append-to-body>
<el-form ref="form" :model="importform">
<el-form ref="form1" :model="importform">
<el-form-item prop="accessUrl">
<el-upload :limit="1" class="avatar-uploader wj-uploader" :headers="headers"
:action="uploadFileUrl1" accept=".xlsx, .xls" :before-upload="handleBeforePdfUpload1"

26
acupuncture-前台/src/views/patientFile/index.vue

@ -149,7 +149,7 @@
<el-form-item label="证件号码" prop="idCard">
<el-input v-model="form.idCard" placeholder="请输入" :disabled="formDisabled" />
</el-form-item>
<el-form-item label="现病史" prop="currentIllnessHistory">
<el-form-item label="现病史" prop="">
<el-checkbox-group v-model="form.currentIllnessHistory" :disabled="formDisabled">
<el-checkbox v-for="(item, index) in medicalHistory" :label="item">
</el-checkbox>
@ -164,7 +164,7 @@
</el-dialog>
<!-- 导入患者信息 -->
<el-dialog title="导入患者档案" :visible.sync="importOpen" width="640px" append-to-body>
<el-form ref="form" :model="importform">
<el-form ref="importform" :model="importform">
<el-form-item prop="accessUrl">
<el-upload :limit="1" class="avatar-uploader wj-uploader" :headers="headers"
:action="uploadFileUrl1" accept=".xlsx, .xls" :before-upload="handleBeforePdfUpload1"
@ -299,22 +299,7 @@
required: true,
message: "手机号码不能为空",
trigger: "blur"
},{
//
validator: (rule, value, callback) => {
// truefalse
// required: falsetrue
let regs = /^1[3-9]\d{9}$/;
if (!regs.test(this.form.phone)) {
return false
}else{
return true
}
},
message: '手机号码格式不正确',
// blurchange
trigger: ['change','blur'],
}
},{ pattern: /^1[3456789]\d{9}$/, message: '手机号码格式不正确', trigger: 'blur' }
],
ethnicity: [{
required: true,
@ -456,6 +441,9 @@
this.title = "患者档案详情";
this.formDisabled = true;
this.form = JSON.parse(JSON.stringify(row));
//
this.form.currentIllnessHistory =
this.form.currentIllnessHistory?.split(",") || []
},
/** 诊疗档案 */
handleArchives(row) {
@ -465,8 +453,10 @@
},
/** 提交按钮 */
submitForm: function() {
this.$refs["form"].validate((valid) => {
if (valid) {
if (this.form.id != undefined) {
patientUpd(this.form).then((response) => {
this.$modal.msgSuccess("修改成功");

Loading…
Cancel
Save