Browse Source

dj seo

master
pengjun 2 years ago
parent
commit
8e1c5708c1
  1. 24
      src/components/common/LocalConfig.vue
  2. 5
      src/components/doctorCheck/PatientRegisterBase.vue
  3. 1
      src/components/doctorCheck/PatientRegisterList.vue
  4. 2
      src/components/doctorCheck/RegisterCheckEdit.vue
  5. 84
      src/components/patientRegister/PatientRegisterEdit.vue
  6. 15
      src/components/patientRegister/PatientRegisterItem.vue
  7. 452
      src/components/patientRegister/PatientRegisterList.vue
  8. 2
      src/components/patientRegister/patientRegisterQuery.vue

24
src/components/common/LocalConfig.vue

@ -5,18 +5,22 @@
</div>
<el-tabs tab-position="left" :style="`margin-top: 5px;height: ${window.pageHeight - 150}px;`">
<el-tab-pane label="常规设置">
<el-form label-width="120px" size="size">
<el-form label-width="140px" size="size">
<el-row>
<el-col :span="24">
<el-form-item label="显示调试工具">
<el-checkbox v-model="LocalConfig.normal.isDevTool" size="small" />
</el-form-item>
</el-col>
</el-row>
</el-row>
</el-form>
</el-tab-pane>
<el-tab-pane label="人员登记">
<el-form label-width="140px" size="size">
<el-row>
<el-col :span="12">
<el-form-item label="人员登记组件">
<el-select v-model="LocalConfig.normal.PatientRegisterEdit" placeholder="请选择" size="small" filterable>
<el-select v-model="LocalConfig.patientRegister.edit" placeholder="请选择" size="small" filterable>
<el-option label="标准版" value="standard" />
<el-option label="青藏铁路版" value="qztl" />
</el-select>
@ -24,10 +28,17 @@
</el-col>
<el-col :span="12">
<el-form-item label="与标准版高度差">
<el-input type="number" v-model="LocalConfig.normal.PatientRegisterEditHeight" size="small" />
<el-input type="number" v-model="LocalConfig.patientRegister.editHeight" size="small" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="保存即发送收费申请">
<el-checkbox v-model="LocalConfig.patientRegister.immediateToHisCharge" size="small" />
</el-form-item>
</el-col>
</el-row>
</el-form>
</el-tab-pane>
<el-tab-pane label="检验条码">
@ -74,6 +85,11 @@ export default {
PatientRegisterEdit: 'standard', //standard/qztl
PatientRegisterEditHeight: 0, //
},
patientRegister: {
edit: 'standard', //standard/qztl
editHeight: 0, //
immediateToHisCharge: true, //
},
lisLabel: { //
MarginTop: 56, //
},

5
src/components/doctorCheck/PatientRegisterBase.vue

@ -22,6 +22,10 @@
-->
<el-input v-model="prBase.sexName" size="small" style="width: 80px;" disabled />
</div>
<div>
<span class="query">年龄</span>
<el-input v-model="prBase.age" size="small" style="width: 40px;" disabled />
</div>
<div>
<span class="query">体检次数</span>
<el-input v-model="prBase.medicalTimes" size="small" style="width: 40px;" disabled />
@ -110,6 +114,7 @@ export default {
patientName: '', //
sexId: '', //
sexName: '', //
age:'', //
medicalTimes: '', //
maritalStatusId: '', //
maritalStatusName: '', //

1
src/components/doctorCheck/PatientRegisterList.vue

@ -484,7 +484,6 @@ export default {
} else {
this.sumDoctorCheck.sumDoctorCheckDialogVisible = false
}
},
},

2
src/components/doctorCheck/RegisterCheckEdit.vue

@ -10,7 +10,7 @@
</div>
<div>
<span class="query">检查日期</span>
<el-date-picker v-model="doctorCheck.RegisterCheckEdit.checkDate" type="date" style="width: 90px" size="small" />
<el-date-picker v-model="doctorCheck.RegisterCheckEdit.checkDate" type="datetime" style="width: 90px" size="small" />
</div>
<div>
<span class="query">操作者</span>

84
src/components/patientRegister/PatientRegisterEdit.vue

@ -317,7 +317,7 @@
</el-col>
</el-row>
<!--青藏公司 start-->
<el-row v-if="LocalConfig.normal.PatientRegisterEdit == 'qztl'">
<el-row v-if="LocalConfig.patientRegister.edit == 'qztl'">
<el-col :span="4">
<el-form-item label="高原/健康">
<el-select v-model="form.qztlType" placeholder="请选择">
@ -411,8 +411,7 @@
</div>
<!--人员登记组合项目明细 register_check_asbitem-->
<div>
<PatientRegisterItem :prForm="form" :prAsbOpraOpts="prAsbOpraOpts"
:refreshFormId="refreshFormId" />
<PatientRegisterItem :prForm="form" :prAsbOpraOpts="prAsbOpraOpts" :refreshFormId="refreshFormId" />
</div>
</div>
<div style="margin-left: 10px;">
@ -438,7 +437,8 @@
<el-button type="danger" class="commonbutton" @click="reLisRequest">条码补打</el-button>
</div>
<div v-show="checkPagePriv(pagePriv.privs, '指引单打印')" class="btn">
<el-button type="primary" class="commonbutton" @click="guidePrint('0001', false)" :disabled="printing">指引单打印</el-button>
<el-button type="primary" class="commonbutton" @click="guidePrint('0001', false)"
:disabled="printing">指引单打印</el-button>
</div>
<!--
<div v-show="checkPagePriv(pagePriv.privs, '指引单预览')" class="btn">
@ -620,9 +620,10 @@ export default {
privs: [] //
},
LocalConfig: {
normal: {
PatientRegisterEdit: 'standard', //standard/qztl
PatientRegisterEditHeight: 0, //
patientRegister: {
editMode: 'standard', //standard/qztl
editHeight: 0, //
immediateToHisCharge: true, //
},
},
brushTimes: 0,
@ -759,9 +760,10 @@ export default {
try {
let LocalConfig = JSON.parse(window.localStorage.getItem('LocalConfig'))
if (LocalConfig && LocalConfig.normal) {
if (LocalConfig.normal.PatientRegisterEdit) this.LocalConfig.normal.PatientRegisterEdit = LocalConfig.normal.PatientRegisterEdit
if (LocalConfig.normal.PatientRegisterEditHeight) this.LocalConfig.normal.PatientRegisterEditHeight = LocalConfig.normal.PatientRegisterEditHeight
if (LocalConfig && LocalConfig.patientRegister) {
if (LocalConfig.patientRegister.edit) this.LocalConfig.patientRegister.edit = LocalConfig.patientRegister.edit
if (LocalConfig.patientRegister.editHeight) this.LocalConfig.patientRegister.editHeight = LocalConfig.patientRegister.editHeight
if (LocalConfig.patientRegister.immediateToHisCharge) this.LocalConfig.patientRegister.immediateToHisCharge = LocalConfig.patientRegister.immediateToHisCharge
}
} catch (error) {
console.log("window.localStorage.getItem('LocalConfig')", error)
@ -1273,7 +1275,7 @@ export default {
//
Query(param) {
this.patientChoosed = {id:''} //
this.patientChoosed = { id: '' } //
//
if (this.form.id || !param) return;
@ -1310,7 +1312,7 @@ export default {
//
choosePatient() {
if (!this.patientChoosed.id) {
this.$message.warning({showClose:true,message:'请选择人员档案信息'})
this.$message.warning({ showClose: true, message: '请选择人员档案信息' })
return;
}
@ -1375,7 +1377,7 @@ export default {
//
madePrBody() {
//
let body = deepCopy(this.form);
// // console.log('this.form',this.form)
// console.log('body',this.form,body)
@ -1453,7 +1455,7 @@ export default {
this.$message.warning({ showClose: true, message: "身份证号填写不合法!" });
return false
}
let body = this.madePrBody()
let body = this.madePrBody()
// console.log('madePrBody',body)
body.registerCheckAsbitems = deepCopy(this.dataTransOpts.tableM.register_check_asbitem)
@ -1466,27 +1468,24 @@ export default {
}
// // console.log(`/api/patientregister/createreturninfo`, body);
postapi(`/api/PatientRegister/CreatePatientRegister`, body)
.then(res => {
.then(async (res) => {
if (res.code > -1) {
objCopy(res.data, this.form) // ()
objCopy(res.data,this.form) // ()
this.dataTransOpts.tableS.patient_register = deepCopy(res.data)
delete this.dataTransOpts.tableS.patient_register.registerCheckAsbitems
// id
this.dataTransOpts.tableM.register_check_asbitem = deepCopy(res.data.registerCheckAsbitems)
// //
// this.prAsbOpraOpts.formId = res.data.id
// setTimeout(() => {
// this.dataTransOpts.refresh.register_check_asbitem.D++
// }, 10);
//
// this.refreshRegister(Object.assign({}, res.data))
this.dataTransOpts.tableM.register_check_asbitem = res.data.registerCheckAsbitems
//
if (this.peoplePhoto && this.peoplePhoto.indexOf("data:image") > -1) savePeoplePhoto(res.data.id, this.peoplePhoto);
if (this.peoplePhoto && this.peoplePhoto.indexOf("data:image") > -1) await savePeoplePhoto(res.data.id, this.peoplePhoto);
//
if (this.LocalConfig.patientRegister.immediateToHisCharge) {
await this.immediateToHisCharge(this.form.id)
}
//
if (!body.id) {
@ -1517,6 +1516,7 @@ export default {
});
},
//
btnAdd() {
this.dataTransOpts.tableS.patient_register.id = ''
@ -1636,7 +1636,7 @@ export default {
// (isPreview)
async guidePrint(ReportCode, isPreview) {
if (this.form.id.length < 1) {
if (!this.form.id) {
this.$message.info({ showClose: true, message: "人员信息尚未保存,不可执行此操作!" });
return;
}
@ -1659,7 +1659,7 @@ export default {
{ Name: 'pageFooter', Value: 'pic/peisQrCode.jpg' },
],
};
console.log('this.$peisAPI.print',JSON.stringify(toOutShell))
this.printing = true
if (isPreview) {
/*
@ -1976,13 +1976,37 @@ export default {
},
//
async immediateToHisCharge(patientRegisterId) {
try {
let res = await postapi('/api/app/registerasbitem/GetCanChargeAsbitemsByPatientRegisterId', { patientRegisterId })
if (!(res.code > -1 && res.data.length > 0)) return
let body = {
patientRegisterId,
registerCheckAsbitems: []
}
res.data.forEach(e => {
body.registerCheckAsbitems.push({ registerCheckAsbitemId: e.registerCheckAsbitemId })
});
let resCharge = await postapi("/api/app/ChargeRequest/Create", body)
if(resCharge.code > -1){
this.dataTransOpts.refresh.patient_register.S++
}
} catch (error) {
this.$message.error({showClose:true,message:`${error}`})
}
},
//
closeDialogCharge() {
// this.prAsbOpraOpts.prAsbQuery++
this.dataTransOpts.refresh.patient_register.S++
// this.dataTransOpts.refresh.register_check_asbitem.D++
},
// IDform.id
refreshFormId() {
@ -2020,7 +2044,7 @@ export default {
//
let placeholder = input.getAttribute('placeholder')
if(placeholder == '身份证号') this.changeIdNo()
if (placeholder == '身份证号') this.changeIdNo()
//
for (let j = i + 1; j < inputs.length; j++) {

15
src/components/patientRegister/PatientRegisterItem.vue

@ -187,9 +187,10 @@ export default {
privs: [] //
},
LocalConfig: {
normal: {
PatientRegisterEdit: 'standard', //standard/qztl
PatientRegisterEditHeight: 0, //
patientRegister: {
Edit: 'standard', //standard/qztl
editHeight: 0, //
immediateToHisCharge: true, //
},
},
oldFormId: '', //使
@ -237,7 +238,7 @@ export default {
tableHeight() {
let temph = this.window.pageHeight < 700 ? 700 : this.window.pageHeight
return temph - 440 - this.LocalConfig.normal.PatientRegisterEditHeight
return temph - 440 - this.LocalConfig.patientRegister.editHeight
}
},
@ -248,9 +249,9 @@ export default {
try {
let LocalConfig = JSON.parse(window.localStorage.getItem('LocalConfig'))
if (LocalConfig && LocalConfig.normal) {
if (LocalConfig.normal.PatientRegisterEdit) this.LocalConfig.normal.PatientRegisterEdit = LocalConfig.normal.PatientRegisterEdit
if (LocalConfig.normal.PatientRegisterEditHeight) this.LocalConfig.normal.PatientRegisterEditHeight = LocalConfig.normal.PatientRegisterEditHeight
if (LocalConfig && LocalConfig.patientRegister) {
if (LocalConfig.patientRegister.edit) this.LocalConfig.patientRegister.edit = LocalConfig.patientRegister.edit
if (LocalConfig.patientRegister.editHeight) this.LocalConfig.patientRegister.editHeight = LocalConfig.patientRegister.editHeight
}
} catch (error) {
console.log("window.localStorage.getItem('LocalConfig')", error)

452
src/components/patientRegister/PatientRegisterList.vue

@ -4,83 +4,86 @@
<div style="display: flex">
<div :style="'width:' + (window.pageWidth - 200 - 145) + 'px;'" @contextmenu.prevent="onContextmenu">
<div>
<el-table @body-scrolling="load" :data="tableData" border
<el-table :data="tableData" border
:height="window.pageHeight < 600 ? 248 : Math.floor(((window.pageHeight - 250) * 2) / 3)"
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 type="selection" width="40" show-overflow-tooltip/>
:height="window.pageHeight < 600 ? 202 : Math.floor(((window.pageHeight - 302) * 2) / 3)"
-->
<el-table-column v-for="(item, index) in headerCols" :key="`col_${index}`"
:min-width="dropCol[index].minWidth" :align="dropCol[index].align" :label="item.label"
:prop="dropCol[index].prop" :sortable="dropCol[index].prop == 'sn' ? false : true">
<template slot-scope="scope">
<div v-if="dropCol[index].prop == 'sn'">
{{ scope.$index + 1 }}
</div>
<div v-else-if="dropCol[index].prop == 'completeFlag'"
:style="`color: ${setColor(scope.row.isAudit, scope.row.completeFlag)}`">
{{ scope.row.isAudit == 'Y' ? "已审核" : dddw(dict.completeFlag, "id", scope.row.completeFlag,
"displayName") }}
</div>
<div v-else-if="dropCol[index].prop == 'guidePrintTimes'">
<i class="el-icon-printer" v-if="scope.row.guidePrintTimes > 0" style="font-size: 20px; color: green" />
</div>
<div v-else-if="dropCol[index].prop == 'isLock'">
<i class="el-icon-lock" v-if="scope.row.isLock == 'Y'" style="font-size: 20px; color: red" />
</div>
<div v-else-if="dropCol[index].prop == 'isVip'
|| dropCol[index].prop == 'isUpload'
|| dropCol[index].prop == 'qztlIsMain'
|| dropCol[index].prop == 'qztlIsCy'
|| dropCol[index].prop == 'qztlIsCw'
|| dropCol[index].prop == 'qztlIsGt'
|| dropCol[index].prop == 'qztlIsWh'
|| dropCol[index].prop == 'qztlIsFj'
">
{{ scope.row[dropCol[index].prop] == "Y" ? "是" : "否" }}
</div>
<el-table-column type="selection" width="40" align="center"></el-table-column>
<el-table-column v-for="(item, index) in dragCol" :key="index" :type="dragCol[index].type"
:min-width="dragCol[index].minWidth" :align="dragCol[index].align" :label="item.label"
:sortable="dragCol[index].type || dragCol[index].prop == 'sn' ? false : true">
<template slot-scope="scope" v-if="!(dragCol[index].type)">
<div v-if="!dragCol[index].type">
<div v-if="dragCol[index].prop == 'sn'">
{{ scope.$index + 1 }}
</div>
<div v-else-if="dragCol[index].prop == 'completeFlag'"
:style="`color: ${setColor(scope.row.isAudit, scope.row.completeFlag)}`">
{{ scope.row.isAudit == 'Y' ? "已审核" : dddw(dict.completeFlag, "id", scope.row.completeFlag,
"displayName") }}
</div>
<div v-else-if="dragCol[index].prop == 'guidePrintTimes'">
<i class="el-icon-printer" v-if="scope.row.guidePrintTimes > 0"
style="font-size: 20px; color: green" />
</div>
<div v-else-if="dragCol[index].prop == 'isLock'">
<i class="el-icon-lock" v-if="scope.row.isLock == 'Y'" style="font-size: 20px; color: red" />
</div>
<div v-else-if="dragCol[index].prop == 'isVip'
|| dragCol[index].prop == 'isUpload'
|| dragCol[index].prop == 'qztlIsMain'
|| dragCol[index].prop == 'qztlIsCy'
|| dragCol[index].prop == 'qztlIsCw'
|| dragCol[index].prop == 'qztlIsGt'
|| dragCol[index].prop == 'qztlIsWh'
|| dragCol[index].prop == 'qztlIsFj'
">
{{ scope.row[dragCol[index].prop] == "Y" ? "是" : "否" }}
</div>
<div v-else-if="dropCol[index].prop == 'customerOrgParentName'">
{{ scope.row.customerOrgParentName
? scope.row.customerOrgParentName
: scope.row.customerOrgName }}
</div>
<div v-else-if="dropCol[index].prop == 'sexId'">
{{ dddw(dict.sex, "id", scope.row[dropCol[index].prop], "displayName") }}
</div>
<div v-else-if="dropCol[index].prop == 'groupPack'">
<div
v-if="scope.row.medicalPackageId !== dict.personOrgId && scope.row.customerOrgId === dict.personOrgId">
{{ dddw(dict.medicalPackage, "id", scope.row.medicalPackageId, "displayName") }}
<div v-else-if="dragCol[index].prop == 'customerOrgParentName'">
{{ scope.row.customerOrgParentName
? scope.row.customerOrgParentName
: scope.row.customerOrgName }}
</div>
<div
v-if="scope.row.medicalPackageId !== dict.personOrgId && scope.row.customerOrgId !== dict.personOrgId">
{{ dddw(dict.customerOrgGroupAll, "id", scope.row.customerOrgGroupId, "displayName") }}
<div v-else-if="dragCol[index].prop == 'sexId'">
{{ dddw(dict.sex, "id", scope.row[dragCol[index].prop], "displayName") }}
</div>
<div v-else-if="dragCol[index].prop == 'groupPack'">
<div
v-if="scope.row.medicalPackageId !== dict.personOrgId && scope.row.customerOrgId === dict.personOrgId">
{{ dddw(dict.medicalPackage, "id", scope.row.medicalPackageId, "displayName") }}
</div>
<div
v-if="scope.row.medicalPackageId !== dict.personOrgId && scope.row.customerOrgId !== dict.personOrgId">
{{ dddw(dict.customerOrgGroupAll, "id", scope.row.customerOrgGroupId, "displayName") }}
</div>
</div>
<div v-else-if="dragCol[index].prop == 'nationId'">
{{ dddw(dict.nation, "id", scope.row[dragCol[index].prop], "displayName") }}
</div>
<div v-else-if="dragCol[index].prop == 'birthDate'">
{{ scope.row[dragCol[index].prop] ? moment(scope.row[dragCol[index].prop]).format('yyyy-MM-DD') : ''
}}
</div>
<div v-else-if="dragCol[index].prop == 'maritalStatusId'">
{{ dddw(dict.maritalStatus, "id", scope.row[dragCol[index].prop], "displayName") }}
</div>
<div v-else-if="dragCol[index].prop == 'medicalTypeId'">
{{ dddw(dict.medicalType, "id", scope.row[dragCol[index].prop], "displayName") }}
</div>
<div v-else-if="dragCol[index].prop == 'personnelTypeId'">
{{ dddw(dict.personnelType, "id", scope.row[dragCol[index].prop], "displayName") }}
</div>
<div v-else>
{{ scope.row[dragCol[index].prop] }}
</div>
</div>
<div v-else-if="dropCol[index].prop == 'nationId'">
{{ dddw(dict.nation, "id", scope.row[dropCol[index].prop], "displayName") }}
</div>
<div v-else-if="dropCol[index].prop == 'birthDate'">
{{ scope.row[dropCol[index].prop] ? moment(scope.row[dropCol[index].prop]).format('yyyy-MM-DD') : '' }}
</div>
<div v-else-if="dropCol[index].prop == 'maritalStatusId'">
{{ dddw(dict.maritalStatus, "id", scope.row[dropCol[index].prop], "displayName") }}
</div>
<div v-else-if="dropCol[index].prop == 'medicalTypeId'">
{{ dddw(dict.medicalType, "id", scope.row[dropCol[index].prop], "displayName") }}
</div>
<div v-else-if="dropCol[index].prop == 'personnelTypeId'">
{{ dddw(dict.personnelType, "id", scope.row[dropCol[index].prop], "displayName") }}
</div>
<div v-else>
{{ scope.row[dropCol[index].prop] }}
</div>
</template>
</el-table-column>
<!--
"sexHormoneTermId": "00000000-0000-0000-0000-000000000000",
"interposeMeasure": null,
@ -150,7 +153,7 @@
<div class="listBtn">
<el-button type="" class="btnClass commonbutton">健康档案</el-button>
</div>
-->
-->
<div v-show="checkPagePriv(pagePriv.privs, '批量调整分组')" class="listBtn">
<el-button type="" class="commonbutton" @click="btnGroupBatch">批量调整分组</el-button>
</div>
@ -166,6 +169,9 @@
<div v-show="checkPagePriv(pagePriv.privs, '人员信息导出')" class="listBtn">
<el-button type="" class="commonbutton" @click="btnExport('info')">人员信息导出</el-button>
</div>
<div class="listBtn">
<el-button type="" class="commonbutton" @click="btnDragColDesign">设计列排序</el-button>
</div>
<!-- elProgress.display dialogWin.LocalConfig
<div class="listBtn">
<el-button type="" class="commonbutton" @click="dialogWin.LocalConfig = true">本地设置</el-button>
@ -180,13 +186,14 @@
</div>
<!--组件弹窗-->
<div>
<!-- 体检人员登记 :title="patientRegister.patientRegisterRd.id ? '体检人员--编辑' : '体检人员--新增'" -->
<el-dialog :title="dataTransOpts.tableS.patient_register.id ? '体检人员--编辑' : '体检人员--新增'"
:visible.sync="dialogWin.PatientRegisterEdit" :close-on-click-modal="false" fullscreen
@close="close_dialogWin_PatientRegisterEdit">
<!-- :formInitData="patientRegister.patientRegisterRd" -->
<PatientRegisterEdit :isDoctor="'1'" :patientRegisterId="patientRegister.patientRegisterRd.id"
:editTimes="editTimes" :refreshRegister="refreshRegister" :refFuncSetData="refFuncSetData" />
:editTimes="editTimes" :refFuncSetData="refFuncSetData" />
</el-dialog>
<!-- 拍照 -->
@ -195,12 +202,24 @@
<Camera :id="patientRegister.patientRegisterId" />
</el-dialog>
<!-- 列排序 -->
<el-dialog title="列排序" :visible.sync="dialogColSort" width="300px" :append-to-body="true"
:close-on-click-modal="false">
<el-table id="elTable_dragCol" :data="dragColDesign" row-key="prop" border height="600">
<el-table-column type="index" label="序号" width="40" align="center">
</el-table-column>
<el-table-column label="列名" prop="label" min-width="120" align="center"></el-table-column>
</el-table>
<span slot="footer" class="dialog-footer">
<el-button class="commonbutton" @click="dialogColSort = false">取消</el-button>
<el-button class="commonbutton" @click="btnDragColDesignOk">确定</el-button>
</span>
</el-dialog>
<!-- 批量调整分组 -->
<el-dialog title="批量调整分组" :visible.sync="dialogWin.PatientRegisterEditGroupBatch" width="600px" height="800px"
:append-to-body="true" :close-on-click-modal="false">
<PatientRegisterEditGroupBatch :multipleSelection="multipleSelection" />
</el-dialog>
<!-- 批量调整项目 -->
@ -286,10 +305,9 @@ export default {
rClickRow: null, //
rClickColumn: null, //
//
headerCols: [],
dragColDesign: [], //
//
dropCol: [
dragCol: [
{ label: "序号", prop: "sn", minWidth: 40, align: "center" },
{ label: "体检进度", prop: "completeFlag", minWidth: 80, align: "center" },
{ label: "打印", prop: "guidePrintTimes", minWidth: 55, align: "center" },
@ -320,7 +338,8 @@ export default {
{ label: "介绍人", prop: "salesman", minWidth: 80, align: "center" },
{ label: "是否VIP", prop: "isVip", minWidth: 80, align: "center" },
{ label: "登记人", prop: "creatorName", minWidth: 80, align: "center" },
{ label: "登记日期", prop: "creationTime", minWidth: 130, align: "center" },
{ label: "登记日期", prop: "creationTime", minWidth: 140, align: "center" },
{ label: "体检日期", prop: "medicalStartDate", minWidth: 140, align: "center" },
{ label: "是否上传", prop: "isUpload", minWidth: 80, align: "center" },
{ label: "高原/健康", prop: "qztlType", minWidth: 90, align: "center" },
{ label: "行车", prop: "qztlIsMain", minWidth: 50, align: "center" },
@ -330,6 +349,7 @@ export default {
{ label: "职害", prop: "qztlIsWh", minWidth: 50, align: "center" },
{ label: "复检", prop: "qztlIsFj", minWidth: 50, align: "center" },
],
dialogColSort: false,
dom: null, //
lazyLoading: false, //
@ -348,6 +368,7 @@ export default {
if (userPriv) this.pagePriv.privs = deepCopy(getPagePriv(this.pagePriv.routeUrlorPageName))
this.loadOptsInit = Object.assign({}, this.loadOpts)
},
//
@ -356,9 +377,6 @@ export default {
this.peisid = window.sessionStorage.getItem('peisid');
//
this.headerCols = deepCopy(this.dropCol)
this.dropCol = this.columnDrop(this.dropCol);
this.$nextTick(() => {
this.scrollFull()
@ -446,12 +464,12 @@ export default {
let lfind = -1;
//start -------------------------
this.multipleSelection = []
this.tableData.forEach(e => {
if (e.choosed) {
this.multipleSelection.push(deepCopy(e))
}
})
// this.multipleSelection = []
// this.tableData.forEach(e => {
// if (e.choosed) {
// this.multipleSelection.push(deepCopy(e))
// }
// })
// end  -------------------------
if (this.multipleSelection.length < 1) {
@ -505,24 +523,7 @@ export default {
for (let i = 0; i < this.multipleSelection.length; i++) {
try {
/*
resPrintData = await postapi(`/api/app/printreport/getpatientregisterguidereport?PatientRegisterId=${this.multipleSelection[i].id}`)
if (resPrintData.code == -1) continue
toOutShell.ReportTable = resPrintData.data
resPeisAPI = await this.$peisAPI.print(JSON.stringify(toOutShell));
// console.log('', resPeisAPI)
if (JSON.parse(resPeisAPI).code < 0) continue
resPrintTimes = await postapi("/api/app/patientregister/updatepatientregisterguideprinttimesmany", [this.multipleSelection[i].id]);
if (resPrintTimes.code == -1) continue
lfind = arrayExistObj(this.tableData, "id", this.multipleSelection[i].id);
if (lfind > -1) {
if (this.tableData[lfind].guidePrintTimes) {
this.tableData[lfind].guidePrintTimes = Number(this.tableData[lfind].guidePrintTimes) + 1;
} else {
this.tableData[lfind].guidePrintTimes = 1;
}
}
*/
let patientregisterId = this.multipleSelection[i].id
toOutShell.BusinessCode = patientregisterId
let resPeisAPI = await this.$peisAPI.print(JSON.stringify(toOutShell));
@ -547,7 +548,6 @@ export default {
((i + 1) * 100) / this.multipleSelection.length
);
}
this.elProgress.display = false;
}
},
@ -555,17 +555,16 @@ export default {
handleSelectionChange(rows) {
//this.multipleSelection = rows;
//// console.log('this.multipleSelection',this.multipleSelection)
rows.forEach((item) => {
item.highLightBg = "selected";
});
//
if (!rows.length) {
this.tableData.forEach((item) => {
item.highLightBg = "";
});
}
this.multipleSelection = JSON.parse(JSON.stringify(rows));
// rows.forEach((item) => {
// item.highLightBg = "selected";
// });
// //
// if (!rows.length) {
// this.tableData.forEach((item) => {
// item.highLightBg = "";
// });
// }
this.multipleSelection = rows;
},
///form
@ -579,63 +578,63 @@ export default {
//
rowClick(row) {
// shift
if (this.window.shift) {
//
this.tableData.forEach((e, index) => {
e.choosed = false;
e.index = index;
});
if (this.startPoint == -1) {
this.tableData[row.index].choosed = true;
this.startPoint = row.index;
} else {
if (this.startPoint > row.index) {
for (let i = row.index; i <= this.startPoint; i++) {
this.tableData[i].choosed = true;
}
} else if (this.startPoint <= row.index) {
for (let i = this.startPoint; i <= row.index; i++) {
this.tableData[i].choosed = true;
}
}
}
} else if (this.window.ctrl) { // ctrl
this.tableData[row.index].choosed = true;
if (this.startPoint == -1) {
this.startPoint = row.index;
}
} else {
// ctrl shift
//
// console.log("");
this.tableData.forEach((e, index) => {
e.choosed = false;
e.index = index;
});
// console.log(this.tableData, row.index);
// console.log(this.tableData[row.index].choosed);
this.tableData[row.index].choosed = true;
this.startPoint = row.index;
}
// if (this.window.shift) {
// //
// this.tableData.forEach((e, index) => {
// e.choosed = false;
// e.index = index;
// });
// if (this.startPoint == -1) {
// this.tableData[row.index].choosed = true;
// this.startPoint = row.index;
// } else {
// if (this.startPoint > row.index) {
// for (let i = row.index; i <= this.startPoint; i++) {
// this.tableData[i].choosed = true;
// }
// } else if (this.startPoint <= row.index) {
// for (let i = this.startPoint; i <= row.index; i++) {
// this.tableData[i].choosed = true;
// }
// }
// }
// } else if (this.window.ctrl) { // ctrl
// this.tableData[row.index].choosed = true;
// if (this.startPoint == -1) {
// this.startPoint = row.index;
// }
// } else {
// // ctrl shift
// //
// // console.log("");
// this.tableData.forEach((e, index) => {
// e.choosed = false;
// e.index = index;
// });
// // console.log(this.tableData, row.index);
// // console.log(this.tableData[row.index].choosed);
// this.tableData[row.index].choosed = true;
// this.startPoint = row.index;
// }
//
// console.log('row.index <= this.startPoint', row.index, this.startPoint)
let lfind = -1
for (let i = 0; i < this.tableData.length; i++) {
if (this.tableData[i].choosed) {
lfind = i
break
}
}
if (lfind > -1) {
//
this.dataTransOpts.tableS.patient_register = deepCopy(this.tableData[lfind])
this.tableDataCurrentRow = deepCopy(this.tableData[lfind])
this.dataTransOpts.refresh.register_check_asbitem.M++ //
}
// let lfind = -1
// for (let i = 0; i < this.tableData.length; i++) {
// if (this.tableData[i].choosed) {
// lfind = i
// break
// }
// }
// if (lfind > -1) {
//
this.dataTransOpts.tableS.patient_register = deepCopy(row)
this.tableDataCurrentRow = deepCopy(row)
this.dataTransOpts.refresh.register_check_asbitem.M++ //
// }
},
//
@ -668,28 +667,28 @@ export default {
},
//
refreshRegister(patientRegister) {
// console.log('/ form :', patientRegister)
},
//
btnAddBatch() {
let patientRegisterIds = []
// start
this.multipleSelection = [];
this.tableData.forEach((e) => {
if (e.choosed && e.completeFlag == '0') {
this.multipleSelection.push(e);
patientRegisterIds.push(e.id)
}
});
// this.multipleSelection = [];
// this.tableData.forEach((e) => {
// if (e.choosed && e.completeFlag == '0') {
// this.multipleSelection.push(e);
// patientRegisterIds.push(e.id)
// }
// });
// end
if (patientRegisterIds.length < 1) {
if (this.multipleSelection.length < 1) {
this.$message.info({ showClose: true, message: "请选择状态为预登记的记录!" });
return;
}
this.multipleSelection.forEach(e => {
patientRegisterIds.push(e.id)
});
let completeFlag = '1'
let body = { completeFlag, patientRegisterIds }
postapi('/api/app/patientregister/updatepatientregistercompleteflagormedicalstartdate', body)
@ -771,12 +770,12 @@ export default {
btnDel() {
//start -------------------------
this.multipleSelection = []
this.tableData.forEach(e => {
if (e.choosed) {
this.multipleSelection.push(deepCopy(e))
}
})
// this.multipleSelection = []
// this.tableData.forEach(e => {
// if (e.choosed) {
// this.multipleSelection.push(deepCopy(e))
// }
// })
// end -------------------------
if (this.multipleSelection.length < 1) {
@ -1029,10 +1028,10 @@ export default {
return;
}
// start
this.multipleSelection = [];
this.tableData.forEach((e) => {
if (e.choosed) this.multipleSelection.push(e);
});
// this.multipleSelection = [];
// this.tableData.forEach((e) => {
// if (e.choosed) this.multipleSelection.push(e);
// });
// end
if (this.multipleSelection.length < 1) {
@ -1052,10 +1051,10 @@ export default {
return;
}
// start
this.multipleSelection = [];
this.tableData.forEach((e) => {
if (e.choosed) this.multipleSelection.push(e);
});
// this.multipleSelection = [];
// this.tableData.forEach((e) => {
// if (e.choosed) this.multipleSelection.push(e);
// });
// end
if (this.multipleSelection.length < 1) {
@ -1078,7 +1077,7 @@ export default {
}
try {
res = await postapi(`/ api / app / lisrequest / setlisrequest ? PatientRegisterId = ${prId}`);
res = await postapi(`/api/app/lisrequest/setlisrequest?PatientRegisterId=${prId}`);
// console.log(`/ api / app / lisrequest / setlisrequest ? PatientRegisterId = ${ prId }`,res);
} catch (error) {
return;
@ -1328,39 +1327,7 @@ export default {
}
},
columnDrop(dropCol) {
//dom
const wrapperTr = document.querySelector(".el-table__header-wrapper tr");
Sortable.create(wrapperTr, {
animation: 180,
delay: 0,
//
onChoose: function (/**Event*/ evt) {
//// console.log('onChoose',evt,evt.oldIndex)
evt.oldIndex; // element index within parent
},
//
onUnchoose: function (/**Event*/ evt) {
// same properties as onEnd
},
//
onStart: function (/**Event*/ evt) {
//// console.log('onStart',evt,evt.oldIndex)
evt.oldIndex; // element index within parent
},
onEnd: (evt) => {
const oldItem = dropCol[evt.oldIndex]; // dropCol[evt.oldIndex - 1];
if (oldItem) {
dropCol.splice(evt.oldIndex, 1);
dropCol.splice(evt.newIndex, 0, oldItem);
}
//// console.log(this.headerCols, oldItem, dropCol);
},
});
return dropCol;
},
//
btnExport(elId) {
@ -1402,6 +1369,35 @@ export default {
})
},
btnDragColDesign() {
this.dragColDesign = deepCopy(this.dragCol)
this.dialogColSort = true
this.rowDrag()
},
btnDragColDesignOk() {
this.dragCol = deepCopy(this.dragColDesign)
this.dialogColSort = false
},
//
rowDrag() {
this.$nextTick(() => {
const el = document.querySelector("#elTable_dragCol tbody");
// console.log('el0', el)
const that = this;
Sortable.create(el, {
animation: 150, // ms, number ms
//
onEnd({ newIndex, oldIndex }) {
that.isshow = false;
const currRow = that.dragColDesign.splice(oldIndex, 1)[0];
that.dragColDesign.splice(newIndex, 0, currRow);
// console.log('el', el)
},
});
});
},
},
//

2
src/components/patientRegister/patientRegisterQuery.vue

@ -55,7 +55,7 @@
<span class="spanClass">次数</span>
<el-select v-model="patientRegister.query.customerOrgRegister" placeholder="次数"
@change="changeCustomerOrgRegister" style="width: 60px;" size="small" value-key="id">
<el-option v-for="item in customerOrgRegisterList" :key="item.id" :label="item.medicalTimes" :value="item" />
<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">

Loading…
Cancel
Save