罗斌杰 1 year ago
parent
commit
5f09392da1
  1. BIN
      public/files/公交集团预约人员名单导入模板.xlsx
  2. 13
      src/components/doctorCheck/CheckItemList.vue
  3. 16
      src/components/doctorCheck/CheckPicture.vue
  4. 1
      src/components/doctorCheck/CheckSumSug.vue
  5. 215
      src/components/follow/FollowCriticalCheck.vue
  6. 1083
      src/components/follow/FollowList.vue
  7. 116
      src/components/follow/FollowQuery.vue
  8. 488
      src/components/follow/PhoneFollowUp.vue
  9. 253
      src/components/follow/SmsSend.vue
  10. 2
      src/components/patientRegister/PatientRegisterEdit.vue
  11. 113
      src/components/report/BtnReport.vue
  12. 6
      src/router/index.js
  13. 101
      src/store/index.js
  14. 1014
      src/views/customerOrg/BusReservationImport.vue
  15. 2
      src/views/doctorCheck/doctorCheck.vue

BIN
public/files/公交集团预约人员名单导入模板.xlsx

13
src/components/doctorCheck/CheckItemList.vue

@ -27,10 +27,11 @@
<div>{{ dddw(resultStatus, 'id', scope.row.resultStatusId, 'dataInputPrompt') }}</div>
</template>
</el-table-column>
<el-table-column prop="criticalFlag" label="危急" width="40" align="center">
<el-table-column prop="criticalFlag" label="危急" width="50" align="center">
<template slot-scope="scope">
<el-checkbox v-model="scope.row.criticalFlag" size="small" true-label="Y" false-label="N"
@change="dialogWin.FollowCriticalCheck = true" />
<el-button style="min-width:23px;padding:6px 2px;"
@click="btnCritical(scope.row)"
size="small">W</el-button>
</template>
</el-table-column>
</el-table>
@ -365,7 +366,11 @@ export default {
rowResultDisabled(row) {
return row.isCalculationItem == 'Y' || this.doctorCheck.RegisterCheckEdit.completeFlag == '1' || this.doctorCheck.RegisterCheckEdit.completeFlag == '2'
},
btnCritical(row){
this.dialogWin.FollowCriticalCheck=true
this.doctorCheck.combinationCriticalValue=false
this.doctorCheck.singleDetailedProject=row
},
//
computeFun(index) {
//

16
src/components/doctorCheck/CheckPicture.vue

@ -23,6 +23,8 @@
:disabled="doctorBtnDisabled('btnExpPic')">导入图片</el-dropdown-item>
<el-dropdown-item v-show="checkPagePriv(pagePriv.privs, '裁图')" @click.native="btnCutPic"
:disabled="doctorBtnDisabled('btnCutPic')">裁剪图片</el-dropdown-item>
<el-dropdown-item v-show="checkPagePriv(pagePriv.privs, '清理pacs结果')" @click.native="btnClean"
:disabled="doctorBtnDisabled('btnClean')">清理pacs结果</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</div>
@ -496,6 +498,20 @@ export default {
this.uploadSeq++;
this.dialogCheckPictureUpload = true;
},
btnClean(){
if (!this.doctorCheck.RegisterCheckId) {
this.$message.warning({ showClose: true, message: "未选中组合项目!" });
return;
}
postapi("/api/app/PacsBusiness/DeletePacsCheckDicomDataByRegisterCheckId", {
registerCheckId:this.doctorCheck.RegisterCheckId
})
.then((res) => {
if (res.code > -1) {
}
});
},
// //
btnCutPicBak() {

1
src/components/doctorCheck/CheckSumSug.vue

@ -341,6 +341,7 @@ export default {
//
btnCritical() {
this.dialogWin.FollowCriticalCheck = true
this.doctorCheck.combinationCriticalValue=true
},
//

215
src/components/follow/FollowCriticalCheck.vue

@ -3,47 +3,111 @@
<!--组件主体-->
<div>
<div @contextmenu.prevent="onContextmenu">
<el-table :data="tableData" border height="465" width="100%" highlight-current-row @row-click="rowClick"
size="small" row-key="id" @selection-change="handleSelectionChange" @cell-contextmenu="onCellRightClick"
ref="info" id="info" :row-class-name="handleRowClassName">
<el-table-column prop="criticalRangeValue" label="危急值范围" min-width="100">
<template slot-scope="scope">
<el-input v-model="scope.row.criticalValueContent" size="small"/>
</template>
</el-table-column>
<el-table-column prop="isCriticalValue" label="危急值标志" min-width="100" align="center">
<template slot-scope="scope">
<el-checkbox v-model="scope.row.isCriticalValue" size="small" true-label="Y" false-label="N" />
</template>
</el-table-column>
<el-table-column prop="criticalValueContent" label="危急值" min-width="80">
<template slot-scope="scope">
<el-input v-model="scope.row.criticalValueContent" size="small"/>
</template>
</el-table-column>
<el-table-column prop="isCriticalValueAudit" label="审核" min-width="60" align="center">
<template slot-scope="scope">
<el-checkbox v-model="scope.row.isCriticalValueAudit" size="small" true-label="Y" false-label="N" />
</template>
</el-table-column>
<el-table-column prop="isReview" label="复查" min-width="60" align="center">
<template slot-scope="scope">
<el-checkbox v-model="scope.row.isReview" size="small" true-label="Y" false-label="N" />
</template>
</el-table-column>
<el-table-column prop="isCriticalValueSmsComplete" label="短信" min-width="60" align="center">
<template slot-scope="scope">
<el-checkbox v-model="scope.row.isCriticalValueSmsComplete" size="small" true-label="Y" false-label="N" />
</template>
</el-table-column>
<el-table-column prop="isCriticalValuePhoneComplete" label="电话随访" min-width="100" align="center">
<template slot-scope="scope">
<el-checkbox v-model="scope.row.isCriticalValuePhoneComplete" size="small" true-label="Y" false-label="N" />
</template>
</el-table-column>
<el-table-column prop="criticalValueCreatorId" label="登记人" min-width="80" />
<el-table-column prop="criticalValueCreationTime" label="登记时间" min-width="100" />
</el-table>
<el-form ref="form" :model="tableData" label-width="105px">
<el-row>
<el-col :span="11">
<el-form-item label="危急值范围">
<el-input
v-model="tableData.criticalRangeValue"
style="width: 100%"
disabled
size="small"
></el-input>
</el-form-item>
</el-col>
<el-col :span="3">
<el-form-item label="危急值标志">
<el-checkbox
v-model="tableData.isCriticalValue"
true-label="Y"
false-label="N"
></el-checkbox>
</el-form-item>
</el-col>
<el-col :span="3">
<el-form-item label="危急值审核">
<el-checkbox
v-model="tableData.isCriticalValueAudit"
true-label="Y"
false-label="N"
></el-checkbox>
</el-form-item>
</el-col>
<el-col :span="3">
<el-form-item label="复查">
<el-checkbox
v-model="tableData.isReview"
true-label="Y"
false-label="N"
></el-checkbox>
</el-form-item>
</el-col>
<el-col :span="3">
<el-form-item label="随访标志">
<el-checkbox
v-model="tableData.isFollowUp"
true-label="Y"
false-label="N"
></el-checkbox>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="危急值处理内容">
<!-- <el-input
v-model="form.parmValue"
size="small"
></el-input> -->
<el-input
type="textarea"
v-model="tableData.criticalValueContent"
:autosize="{ minRows: 3, maxRows: 23 }"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-divider></el-divider>
<el-col :span="6">
<el-form-item label="危急值创建者">
<el-input
v-model="tableData.criticalValueCreatorName"
disabled
size="small"
></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="危急值创建日期">
<el-input
:value="tableData.criticalValueCreationTime"
disabled
size="small"
></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="随访创建者">
<el-input
v-model="tableData.followUpCreatorName"
disabled
size="small"
></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="随访创建日期">
<el-input
style="width: 85%"
:value="tableData.followUpCreationTime"
disabled
size="small"
></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
<div style="margin-top: 10px; display: flex;justify-content: space-between;">
<div></div>
@ -94,20 +158,18 @@ export default {
peisid: null,
startPoint: -1, // -1
endPoint: -1, // -1
tableData: [
{
tableData: {
criticalRangeValue: "", //
isCriticalValue: "Y", //
criticalValueContent: "", //
criticalValueCreatorId: "", //
criticalValueCreationTime: "", //
isCriticalValueAudit: "N", //
isReview: 'N', //
isCriticalValueSmsComplete: "N", //
isCriticalValuePhoneComplete: "N", // 访
}
], //
criticalValueCreatorName:"",
criticalValueCreationTime:"",
isCriticalValueAudit:"",
isReview:"N",
isFollowUp:"N",
followUpCreatorName:"",
followUpCreationTime:""
},
tableDataCurrentRow: {}, //
multipleSelection: [], //
@ -210,7 +272,16 @@ export default {
this.loadOpts.maxResultCount = Number(this.LocalConfig.normal.maxResultCount || 100)
this.loadOptsInit = Object.assign({}, this.loadOpts)
// this.tableData=this.doctorCheck.RegisterCheck
if(this.doctorCheck.combinationCriticalValue){
// getapi(`/api/app/registercheck/getregistercheck?id=${this.doctorCheck.RegisterCheckId}`)
// .then(res => {
// this.tableData=res.data
// })
this.tableData=this.doctorCheck.RegisterCheckEdit
}else{
this.tableData=this.doctorCheck.singleDetailedProject
}
},
//
@ -220,9 +291,9 @@ export default {
this.peisid = window.sessionStorage.getItem('peisid');
this.$nextTick(() => {
this.scrollFull()
})
// this.$nextTick(() => {
// this.scrollFull()
// })
},
@ -235,6 +306,7 @@ export default {
"elProgress",
"patientRegister",
"customerOrg",
"doctorCheck"
]),
},
methods: {
@ -590,11 +662,32 @@ export default {
// ()
btnImportOrgData() {
//
this.dataTransOpts.plus.ImportOrgData++
this.dialogWin.ImportOrgData = true
if(this.doctorCheck.combinationCriticalValue){
postapi('/api/app/RegisterCheck/UpdateRegisterCheckCritical',{
registerCheckId:this.doctorCheck.RegisterCheckId,
isCriticalValue:this.tableData.isCriticalValue,
isFollowUp:this.tableData.isFollowUp,
criticalValueContent:this.tableData.criticalValueContent,
isCriticalValueAudit:this.tableData.isCriticalValueAudit,
isReview:this.tableData.isReview
}).then(res => {
this.dialogWin.FollowCriticalCheck = false
this.tableData=this.$options.data.tableData
})
}else{
postapi('/api/app/RegisterCheckItem/UpdateRegisterCheckItemCritical',{
registerCheckId:this.tableData.registerCheckId,
isCriticalValue:this.tableData.isCriticalValue,
isFollowUp:this.tableData.isFollowUp,
criticalValueContent:this.tableData.criticalValueContent,
isCriticalValueAudit:this.tableData.isCriticalValueAudit,
isReview:this.tableData.isReview,
itemId:this.tableData.itemId
}).then(res => {
this.dialogWin.FollowCriticalCheck = false
this.tableData=this.$options.data.tableData
})
}
},
//

1083
src/components/follow/FollowList.vue
File diff suppressed because it is too large
View File

116
src/components/follow/FollowQuery.vue

@ -1,34 +1,26 @@
<template>
<div style="display: flex;">
<div
:style="'display: flex;flex-wrap: wrap;height: 80px;background-color: #fff;border-radius: 8px;margin-bottom: 15px;align-items: center;padding: 10px;width:' + (window.pageWidth - 145) + 'px;'">
:style="'display: flex;flex-wrap: wrap;height: 90px;background-color: #fff;border-radius: 8px;margin-bottom: 5px;align-items: center;padding: 10px;width:' + (window.pageWidth - 145) + 'px;'">
<div class="query">
<span class="spanClass">体检单位</span>
<el-cascader v-model="patientRegister.query.customerOrgId" :options="patientRegister.customerOrgTreeAll"
:props="{ checkStrictly: true, expandTrigger: 'hover', ...customerOrg.treeprops, }" placeholder="请选择单位"
:show-all-levels="false" clearable :disabled="orgEnable == 'Y' ? false : true" size="small"
style="width:120px;">
</el-cascader>
</div>
<span>体检单位</span>
<el-input placeholder="请选择体检单位" v-model="patientRegister.query.cusOrgOCX" style="width: 240px" size="small"
disabled>
<el-button slot="append" icon="el-icon-search" @click="report.dialogCusOrgOCX = true"
style="font-size: 20px"></el-button>
</el-input>
</div>
<div class="query">
<el-select v-model="patientRegister.query.dateType" placeholder="请选择" style="width: 80px" size="small">
<el-option label="登记日期" :value="'1'" />
<el-option label="体检日期" :value="'2'" />
<el-option label="登记或体检" :value="'3'" />
</el-select>
<!-- dateType 1 登记2 体检3 体检或登记-->
<el-date-picker v-model="patientRegister.query.startDate" type="date" placeholder="起始日期" size="small"
style="width:90px;" value-format="yyyy-MM-dd" :picker-options="pickerOptions" />
<span class="spanClass"></span>
<el-date-picker v-model="patientRegister.query.endDate" type="date" placeholder="截止日期" size="small"
style="width:90px;" value-format="yyyy-MM-dd" :picker-options="pickerOptions" />
<span class="spanClass">姓名</span>
<el-input placeholder="姓名" v-model="patientRegister.query.patientName" size="small" clearable
style="width: 80px" />
</div>
<div class="query">
<span class="spanClass">条码号</span>
<el-input placeholder="条码号" v-model="patientRegister.query.patientRegisterNo" size="small" clearable
style="width: 120px" />
<div class="query">
<span class="spanClass">性别</span>
<el-select v-model="patientRegister.query.sex" placeholder="性别" style="width: 70px" size="small">
<el-option v-for="item in dict.forSex" :key="item.id" :label="item.displayName" :value="item.id">
</el-option>
</el-select>
</div>
<div class="query">
<span class="spanClass">档案号</span>
@ -36,46 +28,21 @@
style="width: 80px" />
</div>
<div class="query">
<span class="spanClass">姓名</span>
<el-input placeholder="姓名" v-model="patientRegister.query.patientName" size="small" clearable
style="width: 60px" />
</div>
<div class="query">
<span class="spanClass">检查条码</span>
<el-input placeholder="检查条码" v-model="patientRegister.query.pacsNo" size="small" clearable
style="width: 120px" />
</div>
<div class="query">
<span class="spanClass">检验条码</span>
<el-input placeholder="检验条码" v-model="patientRegister.query.lisNo" size="small" clearable
<span class="spanClass">条码号</span>
<el-input placeholder="条码号" v-model="patientRegister.query.patientRegisterNo" size="small" clearable
style="width: 120px" />
</div>
<div class="query">
<span class="spanClass">性别</span>
<el-select v-model="patientRegister.query.sex" placeholder="性别" style="width: 50px" size="small">
<el-option v-for="item in dict.forSex" :key="item.id" :label="item.displayName" :value="item.id">
</el-option>
</el-select>
<span class="spanClass">身份证</span>
<el-input placeholder="身份证" v-model="patientRegister.query.idCardNo" size="small" clearable
style="width: 150px" />
</div>
<div class="query">
<span class="spanClass">手机号</span>
<el-input placeholder="手机号/电话" v-model="patientRegister.query.phone" size="small" clearable
style="width: 100px" />
</div>
<div class="query">
<span class="spanClass">身份证</span>
<el-input placeholder="身份证" v-model="patientRegister.query.idCardNo" size="small" clearable
style="width: 150px" />
</div>
<div class="query">
<span class="spanClass">次数</span>
<el-select v-model="patientRegister.query.customerOrgRegister" placeholder="次数"
@change="changeCustomerOrgRegister" style="width: 50px;" size="small" value-key="id">
<el-option v-for="item in customerOrgRegisterList" :key="item.id" :label="item.medicalTimes" :value="item">{{
item.medicalTimes + '次' }}</el-option>
</el-select>
</div>
<div class="query">
<span class="spanClass">体检类别</span>
<el-select v-model="patientRegister.query.medicalTypeIds" placeholder="请选择" clearable filterable
@ -85,15 +52,7 @@
</div>
<div class="query">
<span class="spanClass">状态</span>
<el-select v-model="patientRegister.query.completeFlags" placeholder="请选择" clearable style="width: 100px"
size="small" multiple collapse-tags>
<el-option v-for="item in dict.completeFlag" :key="item.id" :label="item.displayName" :value="item.id">
</el-option>
</el-select>
</div>
<div class="query">
<span class="spanClass">随访状态</span>
<el-select v-model="patientRegister.query.completeFlags" placeholder="请选择" clearable style="width: 100px"
<el-select v-model="patientRegister.query.completeFlags" placeholder="请选择" clearable style="width: 150px"
size="small" multiple collapse-tags>
<el-option v-for="item in dict.completeFlag" :key="item.id" :label="item.displayName" :value="item.id">
</el-option>
@ -102,23 +61,34 @@
</div>
<!-- 按钮区域 -->
<div style="margin-left: 10px;margin-top: 5px;">
<div v-show="checkPagePriv(pagePriv.privs, '查询')" class="listBtn">
<div style="margin-left: 10px;">
<div class="listBtn">
<el-button class="commonbutton" @click="btnQuery">查询</el-button>
</div>
<div class="listBtn">
<el-button type="danger" class="commonbutton" @click="btnClear">清除条件</el-button>
</div>
<div class="listBtn">
<el-button type="danger" class="commonbutton" @click="exportTable">导出excel</el-button>
</div>
</div>
<!--通用选单位体检次数分组的控件-->
<el-dialog title="体检单位选择" :visible.sync="report.dialogCusOrgOCX" :close-on-click-modal="false" width="880px"
height="600px">
<CusOrgOCX :useCustomerOrg="true" :initDateType="'creationTime'" :isUnit="true" />
</el-dialog>
</div>
</template>
<script>
import { mapState } from "vuex";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
import { getPagePriv, checkPagePriv, parsIcCardtoLocal, deepCopy } from '../../utlis/proFunc'
import CusOrgOCX from "../report/CusOrgOCX.vue"
export default {
components: {},
components: {
CusOrgOCX
},
props: ["orgEnable"],
data() {
return {
@ -174,7 +144,7 @@ export default {
},
computed: {
...mapState(["window", "dict", "dataTransOpts", "patientRegister", "customerOrg"]),
...mapState(["window", "dict", "dataTransOpts", "patientRegister", "customerOrg","report"]),
},
methods: {
checkPagePriv,
@ -189,7 +159,9 @@ export default {
this.patientRegister.query.phone = ''
this.patientRegister.query.idCardNo = ''
},
exportTable(){
this.window.export=true
},
init(customerOrgId) {
if (!customerOrgId || customerOrgId == this.dict.personOrgId) {
this.patientRegister.query.customerOrgRegister = null
@ -232,7 +204,6 @@ export default {
//
btnQuery() {
this.patientRegister.query.times++;
console.log("this.patientRegister.query", this.patientRegister.query);
},
changeCustomerOrgRegister(v) {
@ -381,7 +352,7 @@ export default {
}
.listBtn {
margin-top: 10px;
margin-top: 5px;
text-align: center;
}
@ -397,4 +368,7 @@ export default {
font-size: 14px;
padding: 0 2px 0 0;
}
::v-deep .el-icon-search:before {
color: #00F;
}
</style>

488
src/components/follow/PhoneFollowUp.vue

@ -1,43 +1,279 @@
<template>
<div style="display: flex;">
<div style="display: flex">
<div :style="`width: ${window.pageWidth - 120}px;`">
<el-table :data="phoneFollowUp" border
:height="window.pageHeight < 600 ? 124 : Math.floor((window.pageHeight - 228) / 3)" size="small"
highlight-current-row show-summary ref="phoneFollowUp">
<el-table
:data="phoneFollowUp"
border
:height="
window.pageHeight < 600
? 124
: Math.floor((window.pageHeight - 228) / 3)
"
size="small"
highlight-current-row
ref="phoneFollowUp"
@row-click="rowick"
>
<el-table-column type="index" label="序号" width="50" align="center" />
<el-table-column prop="followUpContent" label="随访内容" min-width="250" />
<el-table-column prop="replyContent" label="客户回复" min-width="200" align="center" />
<el-table-column prop="isComplete" label="完成" min-width="40" align="center">
<el-table-column
prop="followUpContent"
label="随访内容"
min-width="250"
/>
<el-table-column
prop="replyContent"
label="回复内容"
min-width="200"
align="center"
/>
<el-table-column
prop="isComplete"
label="完成"
min-width="40"
align="center"
>
<template slot-scope="scope">
<el-checkbox v-model="scope.row.isComplete" true-label="Y" false-label="N" disabled />
<el-checkbox
v-model="scope.row.isComplete"
true-label="Y"
false-label="N"
disabled
/>
</template>
</el-table-column>
<el-table-column prop="lastModifierName" label="修改人" min-width="80" align="center" />
<el-table-column prop="lastModificationTime" label="修改日期" min-width="100" align="center">
<el-table-column
prop="planFollowDate"
label="随访日期"
min-width="100"
align="center"
>
<template slot-scope="scope">
<div>
{{ moment(scope.row.planFollowDate).format("yyyy-MM-DD") }}
</div>
</template>
</el-table-column>
<el-table-column
prop="lastModifierName"
label="修改人"
min-width="80"
align="center"
/>
<el-table-column
prop="lastModificationTime"
label="修改日期"
min-width="100"
align="center"
>
<template slot-scope="scope">
<div>{{ moment(scope.row.creationTime).format("yyyy-MM-DD") }}</div>
</template>
</el-table-column>
<el-table-column prop="creatorName" label="登记人" min-width="80" align="center" />
<el-table-column prop="creationTime" label="登记日期" min-width="100" align="center">
<el-table-column
prop="creatorName"
label="登记人"
min-width="80"
align="center"
/>
<el-table-column
prop="creationTime"
label="登记日期"
min-width="100"
align="center"
>
<template slot-scope="scope">
<div>{{ moment(scope.row.creationTime).format("yyyy-MM-DD") }}</div>
</template>
</el-table-column>
</el-table>
</div>
<div style="width: 120px;margin-top: 50px">
<div style="width: 120px; margin-top: 50px">
<div style="margin-left: 10px">
<el-button class="commonbutton" type="primary" @click="btnAdd" >新增随访</el-button>
<el-button class="commonbutton" type="primary" @click="btnAdd"
>新增随访</el-button
>
</div>
<div style="margin: 10px;">
<el-button class="commonbutton" type="primary" @click="btnEdit">编辑随访</el-button>
<div style="margin: 10px">
<el-button class="commonbutton" type="primary" @click="btnEdit"
>编辑随访</el-button
>
</div>
<div style="margin-left: 10px">
<el-button class="commonbutton" type="primary" @click="btnDel" >删除随访</el-button>
</div>
<el-button class="commonbutton" type="primary" @click="btnDel"
>删除随访</el-button
>
</div>
</div>
<el-dialog
:title="title == 1 ? '新增' : '修改'"
:visible.sync="dialogVisible"
width="75%"
:close-on-click-modal="false"
>
<el-form ref="form" :model="form" label-width="80px">
<el-row>
<el-col :span="6">
<el-form-item label="编号">
<el-input
v-model="form.id"
style="width: 65%"
disabled
size="small"
></el-input>
</el-form-item>
</el-col>
<el-col :span="4" v-if="title != 1">
<el-form-item label="是否完成">
<el-checkbox
v-model="form.isComplete"
true-label="Y"
false-label="N"
/>
</el-form-item>
</el-col>
<el-col :span="6" v-if="title == 1">
<el-form-item label="生成模式">
<el-select v-model="mode" placeholder="生成模式" size="small">
<el-option
v-for="item in modes"
:key="item.id"
:label="item.displayName"
:value="item.id"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6" v-if="title == 1 && mode == 1">
<el-form-item label="随访模式">
<el-select
v-model="form.followUpMode"
placeholder="请选择"
size="small"
>
<el-option
v-for="item in followUpMode"
:key="item.id"
:label="item.displayName"
:value="item.id"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4" v-if="mode == 1 && form.followUpMode == 0">
<el-form-item label="截止时间">
<el-date-picker
type="datetime"
placeholder="选择日期时间"
size="small"
v-model="form.endDate"
value-format="yyyy-MM-dd HH:mm:ss"
editable
style="width: 177px"
>
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="4" v-if="mode == 0">
<el-form-item label="随访日期">
<el-date-picker
type="datetime"
placeholder="选择日期时间"
size="small"
v-model="form.planFollowDate"
value-format="yyyy-MM-dd HH:mm:ss"
format="yyyy-MM-dd HH:mm:ss"
editable
style="width: 177px"
>
</el-date-picker>
</el-form-item>
</el-col>
</el-row>
<el-row v-if="mode == 1">
<el-col :span="24">
<el-form-item
:label="form.followUpMode == 0 ? 'corn表达式' : '生成天数'"
>
<!-- <el-input
v-model="form.parmValue"
size="small"
></el-input> -->
<el-input v-model="form.modeValue"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="随访内容">
<!-- <el-input
v-model="form.parmValue"
size="small"
></el-input> -->
<el-input v-model="form.followUpContent"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="回复内容">
<!-- <el-input
v-model="form.parmValue"
size="small"
></el-input> -->
<el-input v-model="form.replyContent"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-divider></el-divider>
<el-col :span="4" style="margin-left: 15px">
<el-form-item label="创建者">
<el-input
v-model="form.creatorName"
disabled
size="small"
></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="创建时间">
<el-input
:value="form.creationTime | dateFormat"
disabled
size="small"
></el-input>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="修改者">
<el-input
v-model="form.lastModifierName"
disabled
size="small"
></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="修改时间">
<el-input
style="width: 85%"
:value="form.lastModificationTime | dateFormat"
disabled
size="small"
></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="dialogVisible = false" class="difference"
> </el-button
>
<el-button type="primary" @click="addoredit" class="commonbutton"
> </el-button
>
</span>
</el-dialog>
</div>
</template>
<script>
@ -51,73 +287,218 @@ export default {
data() {
return {
phoneFollowUp: [], // 访
dialogVisible: false,
curRow: {},
form: {
followUpMode: "",
modeValue: "",
endDate: "",
followUpContent: "",
replyContent: "",
planFollowDate: "",
isComplete:""
},
mode: "0",
modes: [
{
id: "0",
displayName: "生成单条",
},
{
id: "1",
displayName: "生成多条",
},
],
followUpMode: [
{
id: "0",
displayName: "corn表达式",
},
{
id: "1",
displayName: "按天",
},
{
id: "2",
displayName: "按周",
},
{
id: "3",
displayName: "按月",
},
{
id: "4",
displayName: "按年",
},
],
title: "",
};
},
created() {
},
created() {},
updated() {
this.$nextTick(() => {
this.$refs['phoneFollowUp'].doLayout()
})
this.$refs["phoneFollowUp"].doLayout();
});
},
//
mounted() {
this.dictInit()
this.dictInit();
},
computed: {
...mapState(["window", "dataTransOpts", "dict", "patientRegister"]),
},
methods: {
dddw, moment,
dddw,
moment,
//
dictInit() {
//
postapi('/api/app/Asbitem/GetSimpleAsbitemWithDetails')
.then(res => {
if (res.code > -1) this.asbItems = res.data
})
postapi("/api/app/Asbitem/GetSimpleAsbitemWithDetails").then((res) => {
if (res.code > -1) this.asbItems = res.data;
});
},
//
getLists() {
postapi("/api/app/PhoneFollowUp/GetList", {
followUpId: this.dataTransOpts.tableS.patient_register.followUpId,
}).then((res) => {
if (res.code > -1) this.phoneFollowUp = res.data;
});
},
addoredit() {
if (this.title == 1) {
if (this.mode == 1) {
if (this.form.followUpMode == "") {
this.$message.warning("请选择随访模式");
} else if (this.form.followUpMode == 0 && this.form.modeValue == "") {
this.$message.warning("请输入corn表达式");
} else if (this.form.followUpMode == 0 && this.form.endDate == "") {
this.$message.warning("请选择截止时间");
} else if (this.form.followUpMode != 0 && this.form.modeValue == "") {
this.$message.warning("请输入生成天数");
} else {
postapi("/api/app/PhoneFollowUp/AutoCreate", {
followUpId: this.dataTransOpts.tableS.patient_register.followUpId,
followUpMode: this.form.followUpMode,
modeValue: this.form.modeValue,
endDate: this.form.endDate,
followUpContent: this.form.followUpContent,
replyContent: this.form.replyContent,
}).then((res) => {
if (res.code > -1) {
this.getLists();
this.dialogVisible = false;
this.mode="0"
}
});
}
} else {
if (this.form.planFollowDate == "") {
this.$message.warning("请选择随访日期");
} else {
postapi("/api/app/PhoneFollowUp/Create", {
followUpId: this.dataTransOpts.tableS.patient_register.followUpId,
planFollowDate: this.form.planFollowDate,
followUpContent: this.form.followUpContent,
replyContent: this.form.replyContent,
}).then((res) => {
if (res.code > -1) {
this.getLists();
this.dialogVisible = false;
this.mode="0"
}
});
}
}
}else{
postapi("/api/app/PhoneFollowUp/Update", {
phoneFollowUpId: this.form.id,
planFollowDate: this.form.planFollowDate,
followUpContent: this.form.followUpContent,
replyContent: this.form.replyContent,
isComplete:this.form.isComplete
}).then((res) => {
if (res.code > -1) {
this.getLists();
this.dialogVisible = false;
this.mode="0"
}
});
}
},
rowick(row) {
this.curRow = { ...row };
},
//
setColor(checkCompleteFlag) {
let color = "#52555F"
let color = "#52555F";
switch (checkCompleteFlag) {
case '0':
color = "#FF5054"
case "0":
color = "#FF5054";
break;
case '2':
color = "#396FFA"
case "2":
color = "#396FFA";
break;
default:
break;
}
return color
return color;
},
//
btnAdd(){
btnAdd() {
this.dialogVisible = true;
this.title = 1;
this.form = this.$options.data().form;
},
//
btnEdit(){
btnEdit() {
if (this.curRow.id == undefined) {
this.$message.warning("请选择操作的数据");
} else {
this.title = 2;
this.dialogVisible = true;
postapi("/api/app/PhoneFollowUp/Get", {
phoneFollowUpId: this.curRow.id,
}).then((res) => {
if (res.code != -1) {
this.form = res.data;
}
});
}
},
//
btnDel(){
btnDel() {
if (this.curRow.id == undefined) {
this.$message.warning("请选择删除的数据");
} else {
this.$confirm("是否确认删除,是否继续", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
cancelButtonClass: "difference",
confirmButtonClass: "commonbutton",
})
.then(() => {
postapi("/api/app/PhoneFollowUp/Delete",{
phoneFollowUpId:this.curRow.id
}).then((res) => {
if (res.code != -1) {
this.curRow=this.$options.data().curRow
this.getLists();
//this.$message.success("");
}
});
})
.catch(() => {});
}
},
},
//
@ -126,11 +507,14 @@ export default {
"dataTransOpts.refresh.register_check_asbitem.M": {
// immediate:true,
handler(newVal, oldVal) {
console.log(`watch 人员登记 newVal:${newVal} oldVal:${oldVal} registerCheckId: ${this.dataTransOpts.tableS.patient_register.id}`);
// if (newVal != oldVal)
}
console.log(
`watch 人员登记 newVal:${newVal} oldVal:${oldVal} registerCheckId: ${this.dataTransOpts.tableS.patient_register.id}`
);
// if (newVal != oldVal)
this.getLists();
},
},
}
},
};
</script>
<style scoped>

253
src/components/follow/SmsSend.vue

@ -3,21 +3,19 @@
<div :style="`width: ${window.pageWidth - 120}px;`">
<el-table :data="phoneFollowUp" border
:height="window.pageHeight < 600 ? 124 : Math.floor((window.pageHeight - 228) / 3)" size="small"
highlight-current-row show-summary ref="phoneFollowUp">
highlight-current-row ref="phoneFollowUp" @row-click="rowick">
<el-table-column type="index" label="序号" width="50" align="center" />
<el-table-column prop="patientName" label="姓名" min-width="80" />
<el-table-column prop="mobileTelephone" label="手机号" min-width="130" align="center" />
<el-table-column prop="smsTypeId" label="短信类别" min-width="80" align="center">
<template slot-scope="scope">
{{ scope.row.smsTypeId }}
</template>
</el-table-column>
<el-table-column prop="content" label="手机号" min-width="300" />
<!-- <el-table-column prop="SmsTypeName" label="短信类别" min-width="80" align="center">
</el-table-column> -->
<el-table-column prop="content" label="短信内容" min-width="300" />
<el-table-column prop="isComplete" label="完成" min-width="40" align="center">
<template slot-scope="scope">
<el-checkbox v-model="scope.row.isComplete" true-label="Y" false-label="N" disabled />
</template>
</el-table-column>
<el-table-column prop="planSendDate" label="推送时间" min-width="300" />
<el-table-column prop="lastModifierName" label="修改人" min-width="80" align="center" />
<el-table-column prop="lastModificationTime" label="修改日期" min-width="100" align="center">
<template slot-scope="scope">
@ -36,13 +34,136 @@
<div style="margin-left: 10px">
<el-button class="commonbutton" type="primary" @click="btnAdd" >新增随访</el-button>
</div>
<div style="margin: 10px;">
<!-- <div style="margin: 10px;">
<el-button class="commonbutton" type="primary" @click="btnEdit">编辑随访</el-button>
</div>
<div style="margin-left: 10px">
</div> -->
<div style="margin: 10px;">
<el-button class="commonbutton" type="primary" @click="btnDel" >删除随访</el-button>
</div>
</div>
<el-dialog
:title="title == 1 ? '新增' : '修改'"
:visible.sync="dialogVisible"
width="75%"
:close-on-click-modal="false"
>
<el-form ref="form" :model="form" label-width="80px">
<el-row>
<el-col :span="6">
<el-form-item label="编号">
<el-input
v-model="form.id"
style="width: 65%"
disabled
size="small"
></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="随访模式">
<el-select
v-model="form.followUpMode"
placeholder="请选择"
size="small"
>
<el-option
v-for="item in followUpMode"
:key="item.id"
:label="item.displayName"
:value="item.id"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="截止时间" v-if="form.followUpMode == 0">
<el-date-picker
type="datetime"
placeholder="选择日期时间"
size="small"
v-model="form.endDate"
value-format="yyyy-MM-dd HH:mm:ss"
editable
style="width: 177px"
>
</el-date-picker>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item
:label="form.followUpMode == 0 ? 'corn表达式' : '生成天数'"
>
<!-- <el-input
v-model="form.parmValue"
size="small"
></el-input> -->
<el-input v-model="form.modeValue"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="短信内容">
<!-- <el-input
v-model="form.parmValue"
size="small"
></el-input> -->
<el-input v-model="form.content"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-divider></el-divider>
<el-col :span="4" style="margin-left: 15px">
<el-form-item label="创建者">
<el-input
v-model="form.creatorName"
disabled
size="small"
></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="创建时间">
<el-input
:value="form.creationTime | dateFormat"
disabled
size="small"
></el-input>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="修改者">
<el-input
v-model="form.lastModifierName"
disabled
size="small"
></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="修改时间">
<el-input
style="width: 85%"
:value="form.lastModificationTime | dateFormat"
disabled
size="small"
></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="dialogVisible = false" class="difference"
> </el-button
>
<el-button type="primary" @click="addoredit" class="commonbutton"
> </el-button
>
</span>
</el-dialog>
</div>
</template>
<script>
@ -56,6 +177,37 @@ export default {
data() {
return {
phoneFollowUp: [], // 访
curRow: {},
dialogVisible:false,
form: {
followUpMode:"",
modeValue:"",
content:"",
endDate:""
},
followUpMode: [
{
id: "0",
displayName: "corn表达式",
},
{
id: "1",
displayName: "按天",
},
{
id: "2",
displayName: "按周",
},
{
id: "3",
displayName: "按月",
},
{
id: "4",
displayName: "按年",
},
],
title: "",
};
},
@ -89,7 +241,57 @@ export default {
if (res.code > -1) this.asbItems = res.data
})
},
getLists() {
postapi("/api/app/SmsSend/GetList", {
followUpId: this.dataTransOpts.tableS.patient_register.followUpId,
}).then((res) => {
if (res.code > -1) this.phoneFollowUp = res.data;
});
},
rowick(row) {
this.curRow = { ...row };
},
addoredit() {
if (this.title == 1) {
if (this.form.followUpMode == "") {
this.$message.warning("请选择随访模式");
} else if (this.form.followUpMode == 0 && this.form.modeValue == "") {
this.$message.warning("请输入corn表达式");
} else if (this.form.followUpMode == 0 && this.form.endDate == "") {
this.$message.warning("请选择截止时间");
} else if (this.form.followUpMode != 0 && this.form.modeValue == "") {
this.$message.warning("请输入生成天数");
}else if (this.form.content== "") {
this.$message.warning("请输入短信内容");
} else {
postapi("/api/app/SmsSend/AutoCreate", {
followUpId: this.dataTransOpts.tableS.patient_register.followUpId,
followUpMode: this.form.followUpMode,
modeValue: this.form.modeValue,
endDate: this.form.endDate,
content: this.form.content
}).then((res) => {
if (res.code > -1) {
this.getLists();
this.dialogVisible = false;
}
});
}
}else{
postapi("/api/app/PhoneFollowUp/Update", {
phoneFollowUpId: this.form.id,
planFollowDate: this.form.planFollowDate,
followUpContent: this.form.followUpContent,
replyContent: this.form.replyContent,
isComplete:this.form.isComplete
}).then((res) => {
if (res.code > -1) {
this.getLists();
this.dialogVisible = false;
}
});
}
},
//
setColor(checkCompleteFlag) {
let color = "#52555F"
@ -108,7 +310,9 @@ export default {
//
btnAdd(){
this.dialogVisible = true;
this.title = 1;
this.form = this.$options.data().form;
},
//
@ -118,7 +322,29 @@ export default {
//
btnDel(){
if (this.curRow.id == undefined) {
this.$message.warning("请选择删除的数据");
} else {
this.$confirm("是否确认删除,是否继续", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
cancelButtonClass: "difference",
confirmButtonClass: "commonbutton",
})
.then(() => {
postapi("/api/app/SmsSend/Delete",{
smsSendId:this.curRow.id
}).then((res) => {
if (res.code != -1) {
this.curRow=this.$options.data().curRow
this.getLists();
//this.$message.success("");
}
});
})
.catch(() => {});
}
},
@ -133,6 +359,7 @@ export default {
handler(newVal, oldVal) {
console.log(`watch 人员登记 newVal:${newVal} oldVal:${oldVal} registerCheckId: ${this.dataTransOpts.tableS.patient_register.id}`);
// if (newVal != oldVal)
this.getLists();
}
},
}

2
src/components/patientRegister/PatientRegisterEdit.vue

@ -2824,7 +2824,7 @@ export default {
// console.log('this.dataTransOpts.tableM.appoint_register_asbitem',this.dataTransOpts.tableM.appoint_register_asbitem)
//
let appoint_patient_register = this.dataTransOpts.tableS.appoint_patient_register
if (!appoint_patient_register.appointPatientRegisterId) return
if (!appoint_patient_register.thirdBookingId) return
this.dataTransOpts.tableS.patient_register.id = ''
// this.preCustomerOrgId = this.dict.personOrgId

113
src/components/report/BtnReport.vue

@ -25,6 +25,12 @@
<div class="listBtn">
<el-button type="primary" class="commonbutton" @click="btnUpReport">上传Web</el-button>
</div>
<div class="listBtn">
<el-button type="primary" class="commonbutton" @click="exportZip">导出Zip</el-button>
</div>
<div class="listBtn">
<el-button type="primary" class="commonbutton" @click="exportJpg">导出Jpg</el-button>
</div>
</div>
<div>
<!-- 通用进度条 -->
@ -70,7 +76,114 @@ export default {
btnQuery() {
this.patientRegister.query.times++
},
exportJpg(){
if (!this.$peisAPI) {
this.$message.info({ showClose: true, message: "此功能,需要在壳客户端才可运行!" })
return
}
if (!(this.dataTransOpts.tableM.patient_register && this.dataTransOpts.tableM.patient_register.length > 0)) {
this.$message.warning({ showClose: true, message: "请勾选择记录!" })
return
}
this.$peisAPI.openDirectoryDialog()
.then(res => {
let lres = JSON.parse(res)
if (lres.code > -1 && lres.data) {
this.report2Jpg(JSON.parse(lres.data).directory)
}
console.log('lres', lres)
})
.catch(err => {
this.$message.error(err)
})
},
async report2Jpg(path){
this.elProgress.display = true;
this.elProgress.percentage = 0;
let token = window.sessionStorage.getItem('token');
let toOutShell = {
localPath:path,
token,
patientRegisterId:""
};
for (let i = 0; i < this.dataTransOpts.tableM.patient_register.length; i++) {
let e = this.dataTransOpts.tableM.patient_register[i];
this.elProgress.percentage = Math.floor(((i + 1) * 100) / this.dataTransOpts.tableM.patient_register.length);
// pdf
try {
toOutShell.patientRegisterId = e.patientRegisterId
let jsonToOutShell = JSON.stringify(toOutShell)
console.log('toOutShell', jsonToOutShell)
let res = await this.$peisAPI.exportDcmjpg(jsonToOutShell)
if (JSON.parse(res).code < 0) {
console.log('this.$peisAPI.exportDcmjpg err', res)
}
} catch (error) {
console.log('error', error)
this.$message.warning({ showClose: true, message: error });
}
}
this.elProgress.display = false;
},
exportZip(){
if (!this.$peisAPI) {
this.$message.info({ showClose: true, message: "此功能,需要在壳客户端才可运行!" })
return
}
if (!(this.dataTransOpts.tableM.patient_register && this.dataTransOpts.tableM.patient_register.length > 0)) {
this.$message.warning({ showClose: true, message: "请勾选择记录!" })
return
}
this.$peisAPI.openDirectoryDialog()
.then(res => {
let lres = JSON.parse(res)
if (lres.code > -1 && lres.data) {
this.report2Zip(JSON.parse(lres.data).directory)
}
console.log('lres', lres)
})
.catch(err => {
this.$message.error(err)
})
},
async report2Zip(path){
this.elProgress.display = true;
this.elProgress.percentage = 0;
let token = window.sessionStorage.getItem('token');
let toOutShell = {
localPath:path,
token,
patientRegisterId:""
};
for (let i = 0; i < this.dataTransOpts.tableM.patient_register.length; i++) {
let e = this.dataTransOpts.tableM.patient_register[i];
this.elProgress.percentage = Math.floor(((i + 1) * 100) / this.dataTransOpts.tableM.patient_register.length);
// pdf
try {
toOutShell.patientRegisterId = e.patientRegisterId
let jsonToOutShell = JSON.stringify(toOutShell)
console.log('toOutShell', jsonToOutShell)
let res = await this.$peisAPI.exportDcmZip(jsonToOutShell)
if (JSON.parse(res).code < 0) {
console.log('this.$peisAPI.exportDcmZip err', res)
}
} catch (error) {
console.log('error', error)
this.$message.warning({ showClose: true, message: error });
}
}
this.elProgress.display = false;
},
//
btnImportResult(checkType) {
if (!this.dataTransOpts.tableS.patient_register.id) {

6
src/router/index.js

@ -445,6 +445,12 @@ const routes = [{
component: () =>
import ("../views/customerOrg/patientRegisterImport.vue"), //../views/doctorCheck/personnelBatch.vue
},
{
path: "/busReservationImport",
name: "公交预约导入",
component: () =>
import ("../views/customerOrg/BusReservationImport.vue"), //../views/doctorCheck/personnelBatch.vue
},
{
path: "/patientRegisterRecover",
name: "体检表回收",

101
src/store/index.js

@ -93,6 +93,7 @@ export default new Vuex.Store({
shift: false, //是否按下 shift键
ctrl: false, //是否按下 ctrl键
export: false //是否导出excel
},
elProgress: { //通用进度条相关参数
display: false, //是否显示
@ -245,6 +246,8 @@ export default new Vuex.Store({
preResult: {}, // 上次结果
checkSummaryList: [], //小结
checkSuggestionList: [], //建议
singleDetailedProject: {}, //单明细项目记录
combinationCriticalValue: true //是否组合项目危急弹窗
},
//总检医生
@ -449,9 +452,9 @@ export default new Vuex.Store({
charge: { id: '' }, // 收费
menu_info: { id: '' }, // 菜单与页面
lis_request: { id: '' }, // 检验申请(条码)
patient_register: { id: '', patientRegisterNo: '' }, // 体检人员记录
register_check_asbitem: { id: '' }, // 体检人员登记的项目(合并前)
register_check: { id: '' }, // 体检人员登记的项目(合并后)
patient_register: { id: '', patientRegisterNo: '' }, // 体检人员记录
register_check_asbitem: { id: '' }, // 体检人员登记的项目(合并前)
register_check: { id: '' }, // 体检人员登记的项目(合并后)
register_check_item: { id: '' }, // 体检人员登记的明细项目
role_menu_info: { id: '' }, // 角色对应的菜单
sum_diagnosis: { id: '' }, // 总检诊断
@ -459,15 +462,15 @@ export default new Vuex.Store({
patient_occupational_disease: { id: '', patientRegisterId: '' }, // 职业病基本信息
occModifiable: { //虚拟职业病允许修改表
isPatientOccupationalDiseaseUpdate: "N", //基本信息
isPatientPoisonsUpdate: "N", //接害因素
isPatientOccupationalDiseaseUpdate: "N", //基本信息
isPatientPoisonsUpdate: "N", //接害因素
isPatientPastMedicalHistorysUpdate: "N", // 既往病史
isPatientOccupationalMedicalHistorysUpdate: "N", // 职业病史
isPatientOccupationalHistorysUpdate: "N", // 职业史
isPatientSymptomsUpdate: "N", // 症状
isOccSummary: 'N', // 修改总检结论
},
appoint_patient_register: {}, // 预约登记数据
appoint_patient_register: {}, // 预约登记数据
room: { id: '' }, // 房间
room_detail: { id: '' }, // 房间关联组合项目
common_table: { id: '' }, // 公共表
@ -490,16 +493,16 @@ export default new Vuex.Store({
customer_org_group_detail: [], // 单位分组包含的组合项目明细
charge: [], // 收费
menu_info: [], // 菜单与页面
lis_request: [], // 检验申请(条码)
patient_register: [], // 体检人员记录
register_check_asbitem: [], // 体检人员登记的项目(合并前)
register_check: [], // 体检人员登记的项目(合并后)
lis_request: [], // 检验申请(条码)
patient_register: [], // 体检人员记录
register_check_asbitem: [], // 体检人员登记的项目(合并前)
register_check: [], // 体检人员登记的项目(合并后)
register_check_item: [], // 体检人员登记的明细项目
role_menu_info: [], // 角色对应的菜单
sum_diagnosis: [], // 总检诊断
patient_poison: [], // 病人毒害因素
patient_occupational_history: [],// 病人职业史
patient_occupational_history: [], // 病人职业史
patient_symptom: [], // 病人症状
patient_past_medical_history: [], // 既往病史
patient_occupational_medical_history: [], // 职业病史
@ -509,15 +512,15 @@ export default new Vuex.Store({
common_table: [], // 公共表
},
plus: {
PatientRegisterEditQuery: 0, // 更新查询条件
clearPatientRegisterQuery: 0, // 清空人员登记界面查询条件(重新赋值体检单位)
PatientRegisterEditGroupBatch: 0, // 刷新批量调整分组窗口
PatientRegisterEditItemBatch: 0, // 刷新批量调整项目窗口
PatientRegisterEditDoctorBatch: 0, // 刷新批量调整项目检查医生窗口
PatientRegisterForChoose: 0, // 体检人员查询窗口
OccDisease: 0, // 职业病
WebBooking: 0, // 网上预约
WebBookingMzak: 0, // 人寿预约
PatientRegisterEditQuery: 0, // 更新查询条件
clearPatientRegisterQuery: 0, // 清空人员登记界面查询条件(重新赋值体检单位)
PatientRegisterEditGroupBatch: 0, // 刷新批量调整分组窗口
PatientRegisterEditItemBatch: 0, // 刷新批量调整项目窗口
PatientRegisterEditDoctorBatch: 0, // 刷新批量调整项目检查医生窗口
PatientRegisterForChoose: 0, // 体检人员查询窗口
OccDisease: 0, // 职业病
WebBooking: 0, // 网上预约
WebBookingMzak: 0, // 人寿预约
ImportOrgData: 0, // 导入企业(青藏公司)数据
queue: 0, // 排队信息
}
@ -529,9 +532,9 @@ export default new Vuex.Store({
ContactPersonEdit: false, // 联系人
CustomerOrgGroupEdit: false, // 单位分组 新增/编辑
charge: false, // 收费窗口
PatientList: false, // 体检人员档案列表
PatientList: false, // 体检人员档案列表
PatientRegisterEdit: false, // 体检人员登记 新增/编辑
PatientRegisterForChoose: false, // 体检人员登记列表
PatientRegisterForChoose: false, // 体检人员登记列表
PatientRegisterEditItemBatch: false, //批量调整项目
PatientRegisterEditGroupBatch: false, //批量调整分组
PatientRegisterEditDoctorBatch: false, // 批量调整检查项目医生
@ -546,8 +549,8 @@ export default new Vuex.Store({
RoomEdit: false, //房间
queue: false, // 排队信息
FollowCriticalCheck: false, // 危急值
CommonTableTypeEdit: false, //公共表类别
CommonTableEdit: false, //公共表
CommonTableTypeEdit: false, //公共表类别
CommonTableEdit: false, //公共表
PacsTemplate: false, // pacs结果模版
ThirdMedicalCenterEdit: false,
BigtextResultTypeEdit: false,
@ -582,35 +585,35 @@ export default new Vuex.Store({
doctorCheckPrBaseInit(state) {
state.doctorCheck.prBase = {
id: '', //体检登记ID
patientRegisterNo: '', //条码号
patientNo: '', //档案号
patientName: '', //姓名
sexId: '', //性别
medicalTimes: '', //体检次数
maritalStatusId: '', //婚姻
creationTime: '', //体检日期
customerOrgParentName: '', //单位
customerOrgName: '', //部门
medicalTypeId: '', //体检类别
personnelTypeId: '', //人员类别
nationId: '', //民族
mobileTelephone: '', //手机
} //人员体检登记显示基本信息
id: '', //体检登记ID
patientRegisterNo: '', //条码号
patientNo: '', //档案号
patientName: '', //姓名
sexId: '', //性别
medicalTimes: '', //体检次数
maritalStatusId: '', //婚姻
creationTime: '', //体检日期
customerOrgParentName: '', //单位
customerOrgName: '', //部门
medicalTypeId: '', //体检类别
personnelTypeId: '', //人员类别
nationId: '', //民族
mobileTelephone: '', //手机
} //人员体检登记显示基本信息
},
sumPREditInit(state) {
state.dataTransOpts.tableS.patient_register = {
id: '', //体检登记ID
completeFlag: '', //完成状态
summaryDoctor: '', //总检医生
summaryDate: '', //总检日期
isAudit: '', //审核状态
auditDoctor: '', //审核医生
auditDate: '', //审核日期
isLock: '', //锁定状态
patientId: '', //人员档案ID
} //人员体检登记显示基本信息
id: '', //体检登记ID
completeFlag: '', //完成状态
summaryDoctor: '', //总检医生
summaryDate: '', //总检日期
isAudit: '', //审核状态
auditDoctor: '', //审核医生
auditDate: '', //审核日期
isLock: '', //锁定状态
patientId: '', //人员档案ID
} //人员体检登记显示基本信息
},
},

1014
src/views/customerOrg/BusReservationImport.vue
File diff suppressed because it is too large
View File

2
src/views/doctorCheck/doctorCheck.vue

@ -60,7 +60,7 @@
</div>
</div>
<!--组件弹窗-->
<div>
<div v-if="dialogWin.FollowCriticalCheck">
<!-- 危急值 -->
<el-dialog title="危急值" :visible.sync="dialogWin.FollowCriticalCheck" width="800px"
:show-close="false" :close-on-click-modal="false" :append-to-body="true">

Loading…
Cancel
Save