@@ -150,6 +149,7 @@ export default {
UTable,
UTableColumn,
},
+ props: ["refQueryCondition"],
data() {
return {
tableData: [], //列表数据
@@ -167,6 +167,9 @@ export default {
patientRegisterNo: '',
+ patient_register_query_idno: 'Y', // 身份证排他
+ patient_register_query_name: 'N', // 姓名排他
+ patient_register_read_idno_upPhoto: 'N', // 读身份证查询 是否更新照片
LocalConfig: {
normal: {
@@ -234,7 +237,34 @@ export default {
this.LocalConfig.normal.maxResultCount || 100
);
- this.loadOptsInit = Object.assign({}, this.loadOpts);
+ this.loadOptsInit = Object.assign({}, this.loadOpts);
+
+ // 获取系统参数 -- 身份证排他
+ postapi("/api/app/SysParmValue/GetSysParmValueBySysParmId",
+ { sysParmId: "patient_register_query_idno" }
+ ).then((res) => {
+ if (res.code > -1) {
+ this.patient_register_query_idno = res.data || "Y";
+ }
+ });
+
+ // 获取系统参数 -- 姓名排他
+ postapi("/api/app/SysParmValue/GetSysParmValueBySysParmId",
+ { sysParmId: "patient_register_query_name" }
+ ).then((res) => {
+ if (res.code > -1) {
+ this.patient_register_query_name = res.data || "N";
+ }
+ });
+
+ // 获取系统参数 -- 读身份证 是否更新照片
+ postapi("/api/app/SysParmValue/GetSysParmValueBySysParmId",
+ { sysParmId: "patient_register_read_idno_upPhoto" }
+ ).then((res) => {
+ if (res.code > -1) {
+ this.patient_register_read_idno_upPhoto = res.data || "N";
+ }
+ });
},
//挂载完成
@@ -387,8 +417,8 @@ export default {
await this.getPrList();
this.lazyLoading = false
},
-
- // 获取列表数据
+
+ // 查询获取人员列表数据
async getPrList() {
if (
this.loadOpts.skipCount != 0 &&
@@ -398,194 +428,198 @@ export default {
return;
// console.log('getPrList', this.loadOpts)
- let body = {
- skipCount: this.loadOpts.skipCount,
- maxResultCount: this.loadOpts.maxResultCount,
- };
-
- // console.log(`this.patientRegister.query`, this.patientRegister.query);
- if (this.patientRegister.query.customerOrgFlag) {
- // if (this.patientRegister.query.CustomerOrgParentId) {
- // body.customerOrgId = this.patientRegister.query.CustomerOrgParentId;
- // } else {
- // if (this.patientRegister.query.customerOrgId)
- // body.customerOrgId = this.patientRegister.query.customerOrgId;
- // }
- if (this.patientRegister.query.customerOrgId)
- body.customerOrgId = this.patientRegister.query.customerOrgId;
-
- // 获取单位体检次数与分组
- try {
- if (
- this.patientRegister.query.customerOrgId &&
- this.patientRegister.query.customerOrgId != this.dict.personOrgId &&
- this.patientRegister.query.customerOrgRegister.id
- ) {
- body.customerOrgRegisterId =
- this.patientRegister.query.customerOrgRegister.id;
- body.customerOrgGroupIds =
- this.patientRegister.query.customerOrgGroupIds;
+ let body = Object.assign({}, this.loadOpts)
+ let queryType = this.refQueryCondition.queryType
+
+ console.log('getPrList.this.refQueryCondition', this.refQueryCondition)
+ // 非排他查询条件 ===================== Start ==========================
+ if (!queryType) {
+
+ // 查询条件--日期
+ if (this.refQueryCondition.startDate && this.refQueryCondition.endDate) {
+ body.dateType = this.refQueryCondition.dateType;
+ body.startDate = this.refQueryCondition.startDate
+ body.endDate = this.refQueryCondition.endDate
+ if (body.startDate > body.endDate) {
+ this.$message.warning({
+ showClose: true,
+ message: "起始日期不能大于截止日期,数据校验不通过!",
+ });
+ return;
}
- } catch (error) {
- console.error(error)
}
- }
-
- if (this.patientRegister.query.sex)
- body.sexId = this.patientRegister.query.sex;
-
- if (this.patientRegister.query.patientName)
- body.patientName = this.patientRegister.query.patientName;
-
- if (
- this.patientRegister.query.medicalTypeIds &&
- this.patientRegister.query.medicalTypeIds.length > 0
- )
- body.medicalTypeIds = this.patientRegister.query.medicalTypeIds;
-
- if (
- this.patientRegister.query.completeFlags &&
- this.patientRegister.query.completeFlags.length > 0
- )
- body.completeFlags = this.patientRegister.query.completeFlags;
-
- if (
- this.patientRegister.query.personnelTypeIds &&
- this.patientRegister.query.personnelTypeIds.length > 0
- )
- body.personnelTypeIds = this.patientRegister.query.personnelTypeIds;
-
- if (this.patientRegister.query.isRecoverGuide)
- body.isRecoverGuide = this.patientRegister.query.isRecoverGuide;
- //StartDate EndDate
- if (
- this.patientRegister.query.startDate &&
- this.patientRegister.query.endDate
- ) {
- body.dateType = this.patientRegister.query.dateType;
- body.startDate = moment(this.patientRegister.query.startDate).format(
- "yyyy-MM-DD"
- );
- body.endDate = moment(this.patientRegister.query.endDate).format(
- "yyyy-MM-DD"
- );
- if (body.startDate > body.endDate) {
- this.$message.warning({
- showClose: true,
- message: "起始日期不能大于截止日期,数据校验不通过!",
- });
- return;
+ // 查询条件--单位、次数、分组
+ if (this.refQueryCondition.customerOrgFlag) {
+ if (this.refQueryCondition.customerOrgId) body.customerOrgId = this.refQueryCondition.customerOrgId
+ // 获取单位体检次数与分组
+ try {
+ if (
+ this.refQueryCondition.customerOrgId &&
+ this.refQueryCondition.customerOrgId != this.dict.personOrgId &&
+ this.refQueryCondition.customerOrgRegister.id
+ ) {
+ body.customerOrgRegisterId = this.refQueryCondition.customerOrgRegister.id;
+ if (this.refQueryCondition.customerOrgGroupIds) body.customerOrgGroupIds = this.refQueryCondition.customerOrgGroupIds
+ }
+ } catch (error) {
+ console.error(error);
+ }
}
- }
- if (this.patientRegister.query.phone)
- body.phone = this.patientRegister.query.phone;
-
- if (this.patientRegister.query.idCardNo) {
- body.idNo = this.patientRegister.query.idCardNo;
+ // 电话
+ if (this.refQueryCondition.phone) body.phone = this.refQueryCondition.phone
+ // 性别
+ if (this.refQueryCondition.sexId) body.sexId = this.refQueryCondition.sexId
+ // 体检类别
+ if (this.refQueryCondition.medicalTypeIds) body.medicalTypeIds = this.refQueryCondition.medicalTypeIds
+ // 人员状态
+ if (this.refQueryCondition.completeFlags) body.completeFlags = this.refQueryCondition.completeFlags
+ // 人员类别
+ if (this.refQueryCondition.personnelTypeIds) body.personnelTypeIds = this.refQueryCondition.personnelTypeIds
+ // 表格回收状态
+ if (this.refQueryCondition.isRecoverGuide) body.isRecoverGuide = this.refQueryCondition.isRecoverGuide
+
+ // 排他条件有值时
+ if (this.refQueryCondition.patientRegisterNo) {
+ queryType = "patientRegisterNo"
+ } else if (this.refQueryCondition.pacsNo) {
+ queryType = "pacsNo"
+ } else if (this.refQueryCondition.lisNo) {
+ queryType = "lisNo"
+ } else if (this.refQueryCondition.patientNo) {
+ queryType = "patientNo"
+ } else if (this.refQueryCondition.idCardNo) {
+ queryType = "idCardNo"
+ } else if (this.refQueryCondition.patientName) {
+ queryType = "patientName"
+ }
- try {
- let sysParmId = "patient_register_query_idno";
- let sysParam = await postapi(
- "/api/app/SysParmValue/GetSysParmValueBySysParmId",
- { sysParmId }
- );
- // console.log('sysParam', sysParam)
- if (sysParam.data != "N") {
+ }
+ // 非排他查询条件 ===================== End ==========================
+
+ // 排他查询条件
+ let photo = ''
+ switch (queryType) {
+ case 'patientName': // 姓名排他判断
+ if (this.refQueryCondition.patientName) {
+ body.patientName = this.refQueryCondition.patientName;
+ if (this.patient_register_query_name == 'Y') {
+ body = {
+ patientName: this.refQueryCondition.patientName,
+ skipCount: this.loadOpts.skipCount,
+ maxResultCount: this.loadOpts.maxResultCount,
+ };
+ }
+ }
+ break;
+ case 'idCardNo': // 身份证排他判断
+ if (this.refQueryCondition.idCardNo) {
+ body.idNo = this.refQueryCondition.idCardNo;
+ if (this.patient_register_query_idno == 'Y') {
+ body = {
+ idNo: this.refQueryCondition.idCardNo,
+ skipCount: this.loadOpts.skipCount,
+ maxResultCount: this.loadOpts.maxResultCount,
+ };
+ }
+ }
+ if (this.refQueryCondition.photo) photo = this.refQueryCondition.photo;
+ break;
+ case 'patientNo': // 档案号排他判断
+ if (this.refQueryCondition.patientNo)
body = {
- idNo: this.patientRegister.query.idCardNo,
+ patientNo: this.refQueryCondition.patientNo,
skipCount: this.loadOpts.skipCount,
maxResultCount: this.loadOpts.maxResultCount,
};
- }
- } catch (error) {
- console.log(error);
- }
+ break;
+ case 'patientRegisterNo': // 条码号排他判断
+ if (this.refQueryCondition.patientRegisterNo)
+ body = {
+ patientRegisterNo: this.refQueryCondition.patientRegisterNo,
+ skipCount: this.loadOpts.skipCount,
+ maxResultCount: this.loadOpts.maxResultCount,
+ };
+ break;
+ case 'pacsNo': // 检查条码排他判断
+ if (this.refQueryCondition.pacsNo)
+ body = {
+ pacsNo: this.refQueryCondition.pacsNo,
+ skipCount: this.loadOpts.skipCount,
+ maxResultCount: this.loadOpts.maxResultCount,
+ };
+ break;
+ case 'lisNo': // 检验条码排他判断
+ if (this.refQueryCondition.lisNo)
+ body = {
+ lisNo: this.refQueryCondition.lisNo,
+ skipCount: this.loadOpts.skipCount,
+ maxResultCount: this.loadOpts.maxResultCount,
+ };
+ break;
+ default: //
+ break;
}
- if (this.patientRegister.query.patientNo)
- body = {
- patientNo: this.patientRegister.query.patientNo,
- skipCount: this.loadOpts.skipCount,
- maxResultCount: this.loadOpts.maxResultCount,
- };
-
- if (this.patientRegister.query.patientRegisterNo)
- body = {
- patientRegisterNo: this.patientRegister.query.patientRegisterNo,
- skipCount: this.loadOpts.skipCount,
- maxResultCount: this.loadOpts.maxResultCount,
- };
-
- // console.log("/api/app/patientregister/getlistinfilter", body);
- let upPhoto = "patient_register_read_idno_upPhoto"; // 是否读身份证查询更新照片
- let upPhotoParam = await postapi(
- "/api/app/SysParmValue/GetSysParmValueBySysParmId",
- { sysParmId: upPhoto }
- );
- let photo = this.patientRegister.photo;
- this.patientRegister.photo = "";
-
- postapi("/api/app/patientregister/getlistinfilter", body).then(
- async (res) => {
- if (res.code > -1) {
- // 刷新最大记录数
- this.loadOpts.totalCount = res.data.totalCount;
- let curLoad = res.data.items;
-
- // let oldCount = 0
- // 处理:
+ // 带费且合计 /api/app/PatientRegister/GetPatientRegisterWithCharge
+ // 不带费且合计 /api/app/patientregister/getlistinfilter
+ postapi(
+ "/api/app/patientregister/getlistinfilter",
+ body
+ ).then(async (res) => {
+ if (res.code > -1) {
+ // 刷新最大记录数
+ this.loadOpts.totalCount = res.data.totalCount;
+ let curLoad = res.data.items;
+
+ // let oldCount = 0
+ // 处理:
+ // 1、分组/套餐 排序混乱的问题
+ // 2、扫身份证查询时,无照片自动更新照片(参数控制)
+ curLoad.forEach((e) => {
// 1、分组/套餐 排序混乱的问题
- // 2、扫身份证查询时,无照片自动更新照片(参数控制)
- curLoad.forEach((e) => {
- // 1、分组/套餐 排序混乱的问题
- if (e.customerOrgId == this.dict.personOrgId) {
- e.groupPack = e.medicalPackageId;
- } else {
- e.groupPack = e.customerOrgGroupId;
- }
-
- // 2、扫身份证查询时,无照片自动更新照片(参数控制)
- if (upPhotoParam == "Y" && photo) {
- if (!e.photo) {
- savePeoplePhoto(e.id, photo);
- }
- }
- });
+ if (e.customerOrgId == this.dict.personOrgId) {
+ e.groupPack = e.medicalPackageId;
+ } else {
+ e.groupPack = e.customerOrgGroupId;
+ }
- // 不是连续扫码时,需要判断是否分页查询(连续扫码不清原来的数据)
- console.log(
- "this.patientRegister.query",
- this.patientRegister.query.isSeries,
- this.patientRegister.query.patientRegisterNo
- );
- if (
- !(
- this.patientRegister.query.isSeries == "Y" &&
- this.patientRegister.query.patientRegisterNo
- )
- ) {
- if (body.skipCount == 0) {
- //查询
- this.tableData = [];
+ // 2、扫身份证查询时,无照片自动更新照片(参数控制)
+ if (this.patient_register_read_idno_upPhoto == "Y" && photo) {
+ if (!e.photo) {
+ savePeoplePhoto(e.id, photo);
}
}
+ });
- this.tableData = this.tableData.concat(curLoad);
- // else {
- // // 懒加载 ,原数据集不用清空
- // oldCount = this.tableData.length
- // }
- // curLoad.forEach((e, index) => {
- // this.tableData.push(Object.assign({ index: Number(oldCount) + Number(index), choosed: false }, e))
- // })
-
+ // 不是连续扫码时,需要判断是否分页查询(连续扫码不清原来的数据)
+ // console.log("this.refQueryCondition", this.refQueryCondition.isSeries, this.refQueryCondition.patientRegisterNo);
+ if (this.refQueryCondition.isSeries == "Y" && this.refQueryCondition.patientRegisterNo) {
+ // 如果已经存在列表中,则不在添加
+ for (let index = curLoad.length - 1; index > -1; index--) {
+ const e = curLoad[index];
+ if (arrayExistObj(this.tableData, 'id', e.id) > -1) curLoad.splice(index, 1)
+ }
+ } else {
+ if (body.skipCount == 0) {
+ //查询
+ this.tableData = [];
+ }
}
+
+ this.tableData = this.tableData.concat(curLoad);
+ // else {
+ // // 懒加载 ,原数据集不用清空
+ // oldCount = this.tableData.length
+ // }
+ // curLoad.forEach((e, index) => {
+ // this.tableData.push(Object.assign({ index: Number(oldCount) + Number(index), choosed: false }, e))
+ // })
}
- );
+ });
},
-
+
//滚动加载数据
async scrollFull(scroll, event) {
@@ -625,6 +659,7 @@ export default {
// }
// })
},
+
btnExport(elId) {
let tableDatas = deepCopy(this.tableData)
tableDatas.forEach((e, index) => {
@@ -647,9 +682,9 @@ export default {
//监听事件
watch: {
//触发查询事件
- "patientRegister.query.times"(newVal, oldVal) {
+ "refQueryCondition.queryConditionTimes"(newVal, oldVal) {
if (newVal != oldVal) {
- //alert('触发查询事件')
+ console.log('表格回收--触发查询 refQueryCondition.queryConditionTimes', oldVal, newVal)
this.Query();
}
},
diff --git a/src/components/patientRegister/PatientRegisterRefuseList.vue b/src/components/patientRegister/PatientRegisterRefuseList.vue
index ef6de28..7c9c6e8 100644
--- a/src/components/patientRegister/PatientRegisterRefuseList.vue
+++ b/src/components/patientRegister/PatientRegisterRefuseList.vue
@@ -3,48 +3,48 @@
-
-
-
+
+
+
{{ dddw(dict.completeFlag,"id",scope.row.completeFlag,"displayName")}}
-
-
+
+
{{ scope.row.isLock == "Y" ? "是" : "否" }}
-
-
+
+
{{ scope.row.customerOrgParentName ? scope.row.customerOrgParentName : scope.row.customerOrgName }}
-
-
+
+
{{ scope.row.customerOrgParentName ? scope.row.customerOrgName : "" }}
-
-
-
+
+
+
{{ dddw(dict.sex, "id", scope.row.sexId, "displayName") }}
-
-
-
-
-
-
+
+
+
+
+
+
-
-
+
+
{{ dddw(dict.nation, "id", scope.row.nationId, "displayName") }}
-
-
-
+
+
+
{{ lmoment(scope.row.birthDate, "yyyy-MM-DD") }}
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
{{ dddw( dict.maritalStatus, "id", scope.row.maritalStatusId, "displayName" ) }}
-
-
+
+
{{ dddw( dict.medicalType, "id", scope.row.medicalTypeId, "displayName" ) }}
-
-
+
+
{{ dddw( dict.personnelType, "id", scope.row.personnelTypeId, "displayName" ) }}
-
-
-
-
-
+
+
+
+
+
{{ scope.row.isVip == "Y" ? "是" : "否" }}
-
-
-
+
+
+
{{ lmoment(scope.row.creationTime, "yyyy-MM-DD") }}
-
-
+
+
{{ scope.row.isUpload == "Y" ? "是" : "否" }}
-
-
+
+
-
-
-
-
+
+
+
{{ dddw(dict.checkCompleteFlag,
'id', scope.row.completeFlag, 'displayName') }}
-
-
-
+
+
+
{{
@@ -160,8 +160,8 @@
}}
-
-
+
+
@@ -183,15 +183,16 @@ import { dddw, objCopy, arrayReduce, setCheckStatusColor, setPrStatusColor} from
import PatientRegisterEdit from "../../components/patientRegister/PatientRegisterEdit.vue";
import Camera from "../../components/patientRegister/Camera.vue";
-
+import { UTable, UTableColumn } from "umy-ui";
export default {
components: {
PatientRegisterEdit,
- Camera,
+ Camera,UTable, UTableColumn
},
+ props: ["refQueryCondition"],
data() {
return {
- dataList: [], //列表数据
+ tableData: [], //列表数据
multipleSelection: [], //选中的数据列表
quick: {
id: "",
@@ -199,14 +200,74 @@ export default {
patientNo: "",
patientName: "",
},
+
+ patient_register_query_idno: 'Y', // 身份证排他
+ patient_register_query_name: 'N', // 姓名排他
+ patient_register_read_idno_upPhoto: 'N', // 读身份证查询 是否更新照片
+
+ LocalConfig: {
+ normal: {
+ maxResultCount: 100, //分页时单页记录数
+ },
+ },
+ loadOpts: {
+ totalCount: 0,
+ skipCount: 0,
+ maxResultCount: 100,
+ },
+ loadOptsInit: {},
};
},
- created() { },
+ created() {
+ try {
+ let LocalConfig = JSON.parse(window.localStorage.getItem("LocalConfig") || null)
+ if (LocalConfig?.normal?.maxResultCount){
+ this.LocalConfig.normal.maxResultCount = LocalConfig.normal.maxResultCount
+ }
+
+ } catch (error) {
+ console.log('window.localStorage.getItem("LocalConfig")', error);
+ }
+
+ // console.log('this.LocalConfig',this.LocalConfig)
+ this.loadOpts.maxResultCount = Number(
+ this.LocalConfig.normal.maxResultCount || 100
+ );
+
+ this.loadOptsInit = Object.assign({}, this.loadOpts);
+
+ // 获取系统参数 -- 身份证排他
+ postapi("/api/app/SysParmValue/GetSysParmValueBySysParmId",
+ { sysParmId: "patient_register_query_idno" }
+ ).then((res) => {
+ if (res.code > -1) {
+ this.patient_register_query_idno = res.data || "Y";
+ }
+ });
+
+ // 获取系统参数 -- 姓名排他
+ postapi("/api/app/SysParmValue/GetSysParmValueBySysParmId",
+ { sysParmId: "patient_register_query_name" }
+ ).then((res) => {
+ if (res.code > -1) {
+ this.patient_register_query_name = res.data || "N";
+ }
+ });
+
+ // 获取系统参数 -- 读身份证 是否更新照片
+ postapi("/api/app/SysParmValue/GetSysParmValueBySysParmId",
+ { sysParmId: "patient_register_read_idno_upPhoto" }
+ ).then((res) => {
+ if (res.code > -1) {
+ this.patient_register_read_idno_upPhoto = res.data || "N";
+ }
+ });
+ },
//挂载完成
mounted() {
- this.dataList = []
+ this.tableData = []
this.doctorCheck.RegisterCheckList = []
},
computed: {
@@ -394,75 +455,280 @@ export default {
},
//查询
- query() {
- let body = {};
-
- console.log(`this.patientRegister.query`, this.patientRegister.query);
- if (this.patientRegister.query.customerOrgFlag) {
- if (this.patientRegister.query.CustomerOrgParentId) {
- body.customerOrgId = this.patientRegister.query.CustomerOrgParentId;
- } else {
- if (this.patientRegister.query.customerOrgId)
- body.customerOrgId = this.patientRegister.query.customerOrgId[0];
- }
+ async Query() {
+ // 查询时,清掉明细数据 (滚动时不清)
+ this.tableDataCurrentRow = {}; // 清除选择
+ if (
+ !(
+ this.patientRegister.query.isSeries == "Y" &&
+ this.patientRegister.query.patientRegisterNo
+ )
+ ) {
+ this.tableData = [];
}
+
- if (this.patientRegister.query.sex)
- body.sexId = this.patientRegister.query.sex;
+ this.loadOpts = Object.assign(this.loadOpts, this.loadOptsInit);
+ await this.getPrList();
+ },
- if (this.patientRegister.query.patientName)
- body.patientName = this.patientRegister.query.patientName;
+ //数据量多时,滚动加载
+ async load() {
+ this.loadOpts.skipCount++;
+ await this.getPrList();
+ this.lazyLoading = false
+ },
+
+ // 查询获取人员列表数据
+ async getPrList() {
+ if (
+ this.loadOpts.skipCount != 0 &&
+ this.loadOpts.skipCount * this.loadOpts.maxResultCount >=
+ this.loadOpts.totalCount
+ )
+ return;
+ // console.log('getPrList', this.loadOpts)
+
+ let body = Object.assign({}, this.loadOpts)
+ let queryType = this.refQueryCondition.queryType
+
+ console.log('getPrList.this.refQueryCondition', this.refQueryCondition)
+ // 非排他查询条件 ===================== Start ==========================
+ if (!queryType) {
+
+ // 查询条件--日期
+ if (this.refQueryCondition.startDate && this.refQueryCondition.endDate) {
+ body.dateType = this.refQueryCondition.dateType;
+ body.startDate = this.refQueryCondition.startDate
+ body.endDate = this.refQueryCondition.endDate
+ if (body.startDate > body.endDate) {
+ this.$message.warning({
+ showClose: true,
+ message: "起始日期不能大于截止日期,数据校验不通过!",
+ });
+ return;
+ }
+ }
- if (this.patientRegister.query.completeFlag)
- body.completeFlag = this.patientRegister.query.completeFlag;
+ // 查询条件--单位、次数、分组
+ if (this.refQueryCondition.customerOrgFlag) {
+ if (this.refQueryCondition.customerOrgId) body.customerOrgId = this.refQueryCondition.customerOrgId
+ // 获取单位体检次数与分组
+ try {
+ if (
+ this.refQueryCondition.customerOrgId &&
+ this.refQueryCondition.customerOrgId != this.dict.personOrgId &&
+ this.refQueryCondition.customerOrgRegister.id
+ ) {
+ body.customerOrgRegisterId = this.refQueryCondition.customerOrgRegister.id;
+ if (this.refQueryCondition.customerOrgGroupIds) body.customerOrgGroupIds = this.refQueryCondition.customerOrgGroupIds
+ }
+ } catch (error) {
+ console.error(error);
+ }
+ }
- //StartDate EndDate
- if (
- this.patientRegister.query.startDate &&
- this.patientRegister.query.endDate
- ) {
- body.startDate = moment(this.patientRegister.query.startDate).format(
- "yyyy-MM-DD"
- );
- body.endDate = moment(this.patientRegister.query.endDate).format(
- "yyyy-MM-DD"
- );
- if (body.startDate > body.endDate) {
- this.$message.warning({ showClose: true, message: "起始日期不能大于截止日期,数据校验不通过!" });
- return;
+ // 电话
+ if (this.refQueryCondition.phone) body.phone = this.refQueryCondition.phone
+ // 性别
+ if (this.refQueryCondition.sexId) body.sexId = this.refQueryCondition.sexId
+ // 体检类别
+ if (this.refQueryCondition.medicalTypeIds) body.medicalTypeIds = this.refQueryCondition.medicalTypeIds
+ // 人员状态
+ if (this.refQueryCondition.completeFlags) body.completeFlags = this.refQueryCondition.completeFlags
+ // 人员类别
+ if (this.refQueryCondition.personnelTypeIds) body.personnelTypeIds = this.refQueryCondition.personnelTypeIds
+ // 表格回收状态
+ if (this.refQueryCondition.isRecoverGuide) body.isRecoverGuide = this.refQueryCondition.isRecoverGuide
+
+ // 排他条件有值时
+ if (this.refQueryCondition.patientRegisterNo) {
+ queryType = "patientRegisterNo"
+ } else if (this.refQueryCondition.pacsNo) {
+ queryType = "pacsNo"
+ } else if (this.refQueryCondition.lisNo) {
+ queryType = "lisNo"
+ } else if (this.refQueryCondition.patientNo) {
+ queryType = "patientNo"
+ } else if (this.refQueryCondition.idCardNo) {
+ queryType = "idCardNo"
+ } else if (this.refQueryCondition.patientName) {
+ queryType = "patientName"
}
+
+ }
+ // 非排他查询条件 ===================== End ==========================
+
+ // 排他查询条件
+ let photo = ''
+ switch (queryType) {
+ case 'patientName': // 姓名排他判断
+ if (this.refQueryCondition.patientName) {
+ body.patientName = this.refQueryCondition.patientName;
+ if (this.patient_register_query_name == 'Y') {
+ body = {
+ patientName: this.refQueryCondition.patientName,
+ skipCount: this.loadOpts.skipCount,
+ maxResultCount: this.loadOpts.maxResultCount,
+ };
+ }
+ }
+ break;
+ case 'idCardNo': // 身份证排他判断
+ if (this.refQueryCondition.idCardNo) {
+ body.idNo = this.refQueryCondition.idCardNo;
+ if (this.patient_register_query_idno == 'Y') {
+ body = {
+ idNo: this.refQueryCondition.idCardNo,
+ skipCount: this.loadOpts.skipCount,
+ maxResultCount: this.loadOpts.maxResultCount,
+ };
+ }
+ }
+ if (this.refQueryCondition.photo) photo = this.refQueryCondition.photo;
+ break;
+ case 'patientNo': // 档案号排他判断
+ if (this.refQueryCondition.patientNo)
+ body = {
+ patientNo: this.refQueryCondition.patientNo,
+ skipCount: this.loadOpts.skipCount,
+ maxResultCount: this.loadOpts.maxResultCount,
+ };
+ break;
+ case 'patientRegisterNo': // 条码号排他判断
+ if (this.refQueryCondition.patientRegisterNo)
+ body = {
+ patientRegisterNo: this.refQueryCondition.patientRegisterNo,
+ skipCount: this.loadOpts.skipCount,
+ maxResultCount: this.loadOpts.maxResultCount,
+ };
+ break;
+ case 'pacsNo': // 检查条码排他判断
+ if (this.refQueryCondition.pacsNo)
+ body = {
+ pacsNo: this.refQueryCondition.pacsNo,
+ skipCount: this.loadOpts.skipCount,
+ maxResultCount: this.loadOpts.maxResultCount,
+ };
+ break;
+ case 'lisNo': // 检验条码排他判断
+ if (this.refQueryCondition.lisNo)
+ body = {
+ lisNo: this.refQueryCondition.lisNo,
+ skipCount: this.loadOpts.skipCount,
+ maxResultCount: this.loadOpts.maxResultCount,
+ };
+ break;
+ default: //
+ break;
}
- if (this.patientRegister.query.idCardNo)
- body = { idNo: this.patientRegister.query.idCardNo };
+ // 带费且合计 /api/app/PatientRegister/GetPatientRegisterWithCharge
+ // 不带费且合计 /api/app/patientregister/getlistinfilter
+ postapi(
+ "/api/app/patientregister/getlistinfilter",
+ body
+ ).then(async (res) => {
+ if (res.code > -1) {
+ // 刷新最大记录数
+ this.loadOpts.totalCount = res.data.totalCount;
+ let curLoad = res.data.items;
+
+ // let oldCount = 0
+ // 处理:
+ // 1、分组/套餐 排序混乱的问题
+ // 2、扫身份证查询时,无照片自动更新照片(参数控制)
+ curLoad.forEach((e) => {
+ // 1、分组/套餐 排序混乱的问题
+ if (e.customerOrgId == this.dict.personOrgId) {
+ e.groupPack = e.medicalPackageId;
+ } else {
+ e.groupPack = e.customerOrgGroupId;
+ }
+
+ // 2、扫身份证查询时,无照片自动更新照片(参数控制)
+ if (this.patient_register_read_idno_upPhoto == "Y" && photo) {
+ if (!e.photo) {
+ savePeoplePhoto(e.id, photo);
+ }
+ }
+ });
+
+ // 不是连续扫码时,需要判断是否分页查询(连续扫码不清原来的数据)
+ // console.log("this.refQueryCondition", this.refQueryCondition.isSeries, this.refQueryCondition.patientRegisterNo);
+ if (this.refQueryCondition.isSeries == "Y" && this.refQueryCondition.patientRegisterNo) {
+ // 如果已经存在列表中,则不在添加
+ for (let index = curLoad.length - 1; index > -1; index--) {
+ const e = curLoad[index];
+ if (arrayExistObj(this.tableData, 'id', e.id) > -1) curLoad.splice(index, 1)
+ }
+ } else {
+ if (body.skipCount == 0) {
+ //查询
+ this.tableData = [];
+ }
+ }
+
+ this.tableData = this.tableData.concat(curLoad);
+ // else {
+ // // 懒加载 ,原数据集不用清空
+ // oldCount = this.tableData.length
+ // }
+ // curLoad.forEach((e, index) => {
+ // this.tableData.push(Object.assign({ index: Number(oldCount) + Number(index), choosed: false }, e))
+ // })
+ }
+ });
+ },
+
- if (this.patientRegister.query.patientNo)
- body = { patientNo: this.patientRegister.query.patientNo };
+ //滚动加载数据
+ async scrollFull(scroll, event) {
+ if (!scroll.judgeFlse) return;
- if (this.patientRegister.query.patientRegisterNo)
- body = {
- patientRegisterNo: this.patientRegister.query.patientRegisterNo,
- };
+ // 正在加载时阻止重复触发
+ if (this.lazyLoading) return;
+ if (
+ (Number(this.loadOpts.skipCount) + 1) *
+ Number(this.loadOpts.maxResultCount) >=
+ Number(this.loadOpts.totalCount)
+ ) {
+ return;
+ }
- console.log("/api/app/patientregister/getlistinfilter", body);
- this.dataList = []
- this.doctorCheck.RegisterCheckList = []
- postapi("/api/app/patientregister/getlistinfilter", body)
- .then((res) => {
- if (res.code > -1) {
- this.dataList = res.data.items;
- }
- })
+ this.lazyLoading = true;
+ try {
+ await this.load();
+ } catch (e) {
+ console.error('scrollFull load error', e);
+ }
+ // this.dom = this.$refs['tableData'].bodyWrapper
+ // console.log('obj', this.dom)
+
+ // this.dom.addEventListener('scroll', async () => {
+ // // console.log('scrollTop',this.dom.scrollTop,'clientHeight',this.dom.clientHeight,'scrollHeight',this.dom.scrollHeight);
+ // if (this.dom.scrollTop + this.dom.clientHeight + 20 > this.dom.scrollHeight && !this.lazyLoading) {
+ // // 获取到的不是全部数据 当滚动到底部
+ // //console.log('scrollTop', obj.scrollTop, 'clientHeight', obj.clientHeight, 'scrollHeight', obj.scrollHeight);
+ // if (Number(this.loadOpts.skipCount) * Number(this.loadOpts.maxResultCount) >= Number(this.loadOpts.totalCount)) {
+ // this.lazyLoading = false
+ // } else {
+ // this.lazyLoading = true
+ // this.load()
+ // // this.dom.scrollTop = this.dom.scrollTop - 100
+ // }
+ // }
+ // })
},
},
//监听事件
watch: {
//触发查询事件
- "patientRegister.query.times"(newVal, oldVal) {
+ "refQueryCondition.queryConditionTimes"(newVal, oldVal) {
if (newVal != oldVal) {
- //alert('触发查询事件')
- this.query();
+ console.log('弃检--触发查询 refQueryCondition.queryConditionTimes', oldVal, newVal)
+ this.Query();
}
},
},
diff --git a/src/components/patientRegister/PatientRegisterSignList.vue b/src/components/patientRegister/PatientRegisterSignList.vue
index 4ba2726..6fe2bf8 100644
--- a/src/components/patientRegister/PatientRegisterSignList.vue
+++ b/src/components/patientRegister/PatientRegisterSignList.vue
@@ -1,126 +1,122 @@
-
-
-
-
-
+
+
+
+
-
-
+
+
{{ lmoment(scope.row.medicalStartDate, "yyyy-MM-DD") }}
-
-
+
+
{{ ldddw(dict.completeFlag, "id", scope.row.completeFlag, "displayName") }}
-
-
+
+
{{ scope.row.isLock == "Y" ? "是" : "否" }}
-
-
+
+
{{ scope.row.customerOrgParentName ? scope.row.customerOrgParentName : scope.row.customerOrgName }}
-
-
+
+
{{ scope.row.customerOrgParentName ? scope.row.customerOrgName : "" }}
-
-
-
+
+
+
{{ ldddw(dict.sex, "id", scope.row.sexId, "displayName") }}
-
-
-
-
-
-
-
+
+
+
+
+
+
+
- {{ ldddw(dict.medicalPackage, "id", scope.row.medicalPackageId, "displayName") }}
+ {{ scope.row.medicalPackageName }}
-
- {{ ldddw(dict.customerOrgGroupAll, "id", scope.row.customerOrgGroupId, "displayName") }}
+
+ {{ scope.row.customerOrgGroupName }}
-
-
-
-
- {{ ldddw(dict.nation, "id", scope.row.nationId, "displayName") }}
-
-
-
-
-
+
+
+
+
+
+
{{ lmoment(scope.row.birthDate, "yyyy-MM-DD") }}
-
-
-
-
-
-
-
-
-
-
- {{ ldddw(dict.maritalStatus, "id", scope.row.maritalStatusId, "displayName") }}
-
-
-
-
+
+
+
+
+
+
+
+
+
+
{{ ldddw(dict.medicalType, "id", scope.row.medicalTypeId, "displayName") }}
-
-
+
+
{{ ldddw(dict.personnelType, "id", scope.row.personnelTypeId, "displayName") }}
-
-
-
-
-
+
+
+
+
+
{{ scope.row.isVip == "Y" ? "是" : "否" }}
-
-
-
+
+
+
{{ lmoment(scope.row.creationTime, "yyyy-MM-DD") }}
-
-
+
+
{{ scope.row.isUpload == "Y" ? "是" : "否" }}
-
-
-
+
+
+
+
+
+ 共:{{ loadOpts.totalCount }} 条记录,当前显示:{{
+ tableData.length
+ }}
+ 条。
+
+
@@ -151,24 +147,85 @@ import { dddw, objCopy, arrayReduce } from "@/utlis/proFunc";
import PatientRegisterEdit from "../../components/patientRegister/PatientRegisterEdit.vue";
import Camera from "../../components/patientRegister/Camera.vue";
-
+import { UTable, UTableColumn } from "umy-ui";
export default {
components: {
PatientRegisterEdit,
- Camera,
+ Camera,UTable, UTableColumn
},
+ props: ["refQueryCondition"],
data() {
return {
- dataList: [], //列表数据
+ tableData: [], //列表数据
multipleSelection: [], //选中的数据列表
dialogVisible: false,
form:{
patientRegisterNo:''
- }
+ },
+ patient_register_query_idno: 'Y', // 身份证排他
+ patient_register_query_name: 'N', // 姓名排他
+ patient_register_read_idno_upPhoto: 'N', // 读身份证查询 是否更新照片
+
+ LocalConfig: {
+ normal: {
+ maxResultCount: 100, //分页时单页记录数
+ },
+ },
+ loadOpts: {
+ totalCount: 0,
+ skipCount: 0,
+ maxResultCount: 100,
+ },
+ loadOptsInit: {},
+ lazyLoading:false,
};
},
- created() { },
+ created() {
+ try {
+ let LocalConfig = JSON.parse(window.localStorage.getItem("LocalConfig") || null)
+ if (LocalConfig?.normal?.maxResultCount){
+ this.LocalConfig.normal.maxResultCount = LocalConfig.normal.maxResultCount
+ }
+
+ } catch (error) {
+ console.log('window.localStorage.getItem("LocalConfig")', error);
+ }
+
+ // console.log('this.LocalConfig',this.LocalConfig)
+ this.loadOpts.maxResultCount = Number(
+ this.LocalConfig.normal.maxResultCount || 100
+ );
+
+ this.loadOptsInit = Object.assign({}, this.loadOpts);
+
+ // 获取系统参数 -- 身份证排他
+ postapi("/api/app/SysParmValue/GetSysParmValueBySysParmId",
+ { sysParmId: "patient_register_query_idno" }
+ ).then((res) => {
+ if (res.code > -1) {
+ this.patient_register_query_idno = res.data || "Y";
+ }
+ });
+
+ // 获取系统参数 -- 姓名排他
+ postapi("/api/app/SysParmValue/GetSysParmValueBySysParmId",
+ { sysParmId: "patient_register_query_name" }
+ ).then((res) => {
+ if (res.code > -1) {
+ this.patient_register_query_name = res.data || "N";
+ }
+ });
+
+ // 获取系统参数 -- 读身份证 是否更新照片
+ postapi("/api/app/SysParmValue/GetSysParmValueBySysParmId",
+ { sysParmId: "patient_register_read_idno_upPhoto" }
+ ).then((res) => {
+ if (res.code > -1) {
+ this.patient_register_read_idno_upPhoto = res.data || "N";
+ }
+ });
+ },
//挂载完成
mounted() { },
@@ -238,61 +295,281 @@ export default {
},
//查询
- query() {
- let body = {}
-
- console.log(`this.patientRegister.query`, this.patientRegister.query)
- if (this.patientRegister.query.customerOrgFlag) {
- if (this.patientRegister.query.CustomerOrgParentId) {
- body.customerOrgId = this.patientRegister.query.CustomerOrgParentId
- } else{
- if (this.patientRegister.query.customerOrgId) body.customerOrgId = this.patientRegister.query.customerOrgId
- }
+ async Query() {
+ // 查询时,清掉明细数据 (滚动时不清)
+ this.tableDataCurrentRow = {}; // 清除选择
+ if (
+ !(
+ this.patientRegister.query.isSeries == "Y" &&
+ this.patientRegister.query.patientRegisterNo
+ )
+ ) {
+ this.tableData = [];
}
+
+
+ this.loadOpts = Object.assign(this.loadOpts, this.loadOptsInit);
+ await this.getPrList();
+ },
- if (this.patientRegister.query.sex) body.sexId = this.patientRegister.query.sex
+ //数据量多时,滚动加载
+ async load() {
+ this.loadOpts.skipCount++;
+ await this.getPrList();
+ this.lazyLoading = false
+ },
+
+ // 查询获取人员列表数据
+ async getPrList() {
+ if (
+ this.loadOpts.skipCount != 0 &&
+ this.loadOpts.skipCount * this.loadOpts.maxResultCount >=
+ this.loadOpts.totalCount
+ )
+ return;
+ // console.log('getPrList', this.loadOpts)
- if (this.patientRegister.query.patientName) body.patientName = this.patientRegister.query.patientName
+ let body = Object.assign({}, this.loadOpts)
+ let queryType = this.refQueryCondition.queryType
- if (this.patientRegister.query.completeFlag) body.completeFlag = this.patientRegister.query.completeFlag
+ console.log('getPrList.this.refQueryCondition', this.refQueryCondition)
+ // 非排他查询条件 ===================== Start ==========================
+ if (!queryType) {
- //StartDate EndDate
- if (this.patientRegister.query.startDate && this.patientRegister.query.endDate) {
- body.startDate = moment(this.patientRegister.query.startDate).format("yyyy-MM-DD")
- body.endDate = moment(this.patientRegister.query.endDate).format("yyyy-MM-DD")
- if(body.startDate > body.endDate){
- this.$message.warning({ showClose: true, message: "起始日期不能大于截止日期,数据校验不通过!"})
- return
+ // 查询条件--日期
+ if (this.refQueryCondition.startDate && this.refQueryCondition.endDate) {
+ body.dateType = this.refQueryCondition.dateType;
+ body.startDate = this.refQueryCondition.startDate
+ body.endDate = this.refQueryCondition.endDate
+ if (body.startDate > body.endDate) {
+ this.$message.warning({
+ showClose: true,
+ message: "起始日期不能大于截止日期,数据校验不通过!",
+ });
+ return;
+ }
+ }
+
+ // 查询条件--单位、次数、分组
+ if (this.refQueryCondition.customerOrgFlag) {
+ if (this.refQueryCondition.customerOrgId) body.customerOrgId = this.refQueryCondition.customerOrgId
+ // 获取单位体检次数与分组
+ try {
+ if (
+ this.refQueryCondition.customerOrgId &&
+ this.refQueryCondition.customerOrgId != this.dict.personOrgId &&
+ this.refQueryCondition.customerOrgRegister.id
+ ) {
+ body.customerOrgRegisterId = this.refQueryCondition.customerOrgRegister.id;
+ if (this.refQueryCondition.customerOrgGroupIds) body.customerOrgGroupIds = this.refQueryCondition.customerOrgGroupIds
+ }
+ } catch (error) {
+ console.error(error);
+ }
+ }
+
+ // 电话
+ if (this.refQueryCondition.phone) body.phone = this.refQueryCondition.phone
+ // 性别
+ if (this.refQueryCondition.sexId) body.sexId = this.refQueryCondition.sexId
+ // 体检类别
+ if (this.refQueryCondition.medicalTypeIds) body.medicalTypeIds = this.refQueryCondition.medicalTypeIds
+ // 人员状态
+ if (this.refQueryCondition.completeFlags) body.completeFlags = this.refQueryCondition.completeFlags
+ // 人员类别
+ if (this.refQueryCondition.personnelTypeIds) body.personnelTypeIds = this.refQueryCondition.personnelTypeIds
+ // 表格回收状态
+ if (this.refQueryCondition.isRecoverGuide) body.isRecoverGuide = this.refQueryCondition.isRecoverGuide
+
+ // 排他条件有值时
+ if (this.refQueryCondition.patientRegisterNo) {
+ queryType = "patientRegisterNo"
+ } else if (this.refQueryCondition.pacsNo) {
+ queryType = "pacsNo"
+ } else if (this.refQueryCondition.lisNo) {
+ queryType = "lisNo"
+ } else if (this.refQueryCondition.patientNo) {
+ queryType = "patientNo"
+ } else if (this.refQueryCondition.idCardNo) {
+ queryType = "idCardNo"
+ } else if (this.refQueryCondition.patientName) {
+ queryType = "patientName"
}
- }
+ }
+ // 非排他查询条件 ===================== End ==========================
- if (this.patientRegister.query.idCardNo) body = { idNo: this.patientRegister.query.idCardNo }
+ // 排他查询条件
+ let photo = ''
+ switch (queryType) {
+ case 'patientName': // 姓名排他判断
+ if (this.refQueryCondition.patientName) {
+ body.patientName = this.refQueryCondition.patientName;
+ if (this.patient_register_query_name == 'Y') {
+ body = {
+ patientName: this.refQueryCondition.patientName,
+ skipCount: this.loadOpts.skipCount,
+ maxResultCount: this.loadOpts.maxResultCount,
+ };
+ }
+ }
+ break;
+ case 'idCardNo': // 身份证排他判断
+ if (this.refQueryCondition.idCardNo) {
+ body.idNo = this.refQueryCondition.idCardNo;
+ if (this.patient_register_query_idno == 'Y') {
+ body = {
+ idNo: this.refQueryCondition.idCardNo,
+ skipCount: this.loadOpts.skipCount,
+ maxResultCount: this.loadOpts.maxResultCount,
+ };
+ }
+ }
+ if (this.refQueryCondition.photo) photo = this.refQueryCondition.photo;
+ break;
+ case 'patientNo': // 档案号排他判断
+ if (this.refQueryCondition.patientNo)
+ body = {
+ patientNo: this.refQueryCondition.patientNo,
+ skipCount: this.loadOpts.skipCount,
+ maxResultCount: this.loadOpts.maxResultCount,
+ };
+ break;
+ case 'patientRegisterNo': // 条码号排他判断
+ if (this.refQueryCondition.patientRegisterNo)
+ body = {
+ patientRegisterNo: this.refQueryCondition.patientRegisterNo,
+ skipCount: this.loadOpts.skipCount,
+ maxResultCount: this.loadOpts.maxResultCount,
+ };
+ break;
+ case 'pacsNo': // 检查条码排他判断
+ if (this.refQueryCondition.pacsNo)
+ body = {
+ pacsNo: this.refQueryCondition.pacsNo,
+ skipCount: this.loadOpts.skipCount,
+ maxResultCount: this.loadOpts.maxResultCount,
+ };
+ break;
+ case 'lisNo': // 检验条码排他判断
+ if (this.refQueryCondition.lisNo)
+ body = {
+ lisNo: this.refQueryCondition.lisNo,
+ skipCount: this.loadOpts.skipCount,
+ maxResultCount: this.loadOpts.maxResultCount,
+ };
+ break;
+ default: //
+ break;
+ }
- if (this.patientRegister.query.patientNo) body = { patientNo: this.patientRegister.query.patientNo }
+ // 带费且合计 /api/app/PatientRegister/GetPatientRegisterWithCharge
+ // 不带费且合计 /api/app/patientregister/getlistinfilter
+ postapi(
+ "/api/app/patientregister/getlistinfilter",
+ body
+ ).then(async (res) => {
+ if (res.code > -1) {
+ // 刷新最大记录数
+ this.loadOpts.totalCount = res.data.totalCount;
+ let curLoad = res.data.items;
- if (this.patientRegister.query.patientRegisterNo) body = { patientRegisterNo: this.patientRegister.query.patientRegisterNo }
+ // let oldCount = 0
+ // 处理:
+ // 1、分组/套餐 排序混乱的问题
+ // 2、扫身份证查询时,无照片自动更新照片(参数控制)
+ curLoad.forEach((e) => {
+ // 1、分组/套餐 排序混乱的问题
+ if (e.customerOrgId == this.dict.personOrgId) {
+ e.groupPack = e.medicalPackageId;
+ } else {
+ e.groupPack = e.customerOrgGroupId;
+ }
+ // 2、扫身份证查询时,无照片自动更新照片(参数控制)
+ if (this.patient_register_read_idno_upPhoto == "Y" && photo) {
+ if (!e.photo) {
+ savePeoplePhoto(e.id, photo);
+ }
+ }
+ });
- console.log('/api/app/patientregister/getlistinfilter', body)
-
- postapi('/api/app/patientregister/getlistinfilter', body)
- .then((res) => {
- if(res.code > - 1){
- this.dataList = res.data.items;
+ // 不是连续扫码时,需要判断是否分页查询(连续扫码不清原来的数据)
+ // console.log("this.refQueryCondition", this.refQueryCondition.isSeries, this.refQueryCondition.patientRegisterNo);
+ if (this.refQueryCondition.isSeries == "Y" && this.refQueryCondition.patientRegisterNo) {
+ // 如果已经存在列表中,则不在添加
+ for (let index = curLoad.length - 1; index > -1; index--) {
+ const e = curLoad[index];
+ if (arrayExistObj(this.tableData, 'id', e.id) > -1) curLoad.splice(index, 1)
+ }
+ } else {
+ if (body.skipCount == 0) {
+ //查询
+ this.tableData = [];
+ }
}
-
- })
+
+ this.tableData = this.tableData.concat(curLoad);
+ // else {
+ // // 懒加载 ,原数据集不用清空
+ // oldCount = this.tableData.length
+ // }
+ // curLoad.forEach((e, index) => {
+ // this.tableData.push(Object.assign({ index: Number(oldCount) + Number(index), choosed: false }, e))
+ // })
+ }
+ });
},
+
+
+ //滚动加载数据
+ async scrollFull(scroll, event) {
+ if (!scroll.judgeFlse) return;
+
+ // 正在加载时阻止重复触发
+ if (this.lazyLoading) return;
+ if (
+ (Number(this.loadOpts.skipCount) + 1) *
+ Number(this.loadOpts.maxResultCount) >=
+ Number(this.loadOpts.totalCount)
+ ) {
+ return;
+ }
+
+ this.lazyLoading = true;
+ try {
+ await this.load();
+ } catch (e) {
+ console.error('scrollFull load error', e);
+ }
+ // this.dom = this.$refs['tableData'].bodyWrapper
+ // console.log('obj', this.dom)
+
+ // this.dom.addEventListener('scroll', async () => {
+ // // console.log('scrollTop',this.dom.scrollTop,'clientHeight',this.dom.clientHeight,'scrollHeight',this.dom.scrollHeight);
+ // if (this.dom.scrollTop + this.dom.clientHeight + 20 > this.dom.scrollHeight && !this.lazyLoading) {
+ // // 获取到的不是全部数据 当滚动到底部
+ // //console.log('scrollTop', obj.scrollTop, 'clientHeight', obj.clientHeight, 'scrollHeight', obj.scrollHeight);
+ // if (Number(this.loadOpts.skipCount) * Number(this.loadOpts.maxResultCount) >= Number(this.loadOpts.totalCount)) {
+ // this.lazyLoading = false
+ // } else {
+ // this.lazyLoading = true
+ // this.load()
+ // // this.dom.scrollTop = this.dom.scrollTop - 100
+ // }
+ // }
+ // })
+ },
+
},
//监听事件
watch: {
//触发查询事件
- "patientRegister.query.times"(newVal, oldVal) {
+ "refQueryCondition.queryConditionTimes"(newVal, oldVal) {
if (newVal != oldVal) {
- //alert('触发查询事件')
- this.query();
+ console.log('签到--触发查询 refQueryCondition.queryConditionTimes', oldVal, newVal)
+ this.Query();
}
},
diff --git a/src/components/patientRegister/patientRegisterQuery.vue b/src/components/patientRegister/patientRegisterQuery.vue
index bec5dbf..05018f0 100644
--- a/src/components/patientRegister/patientRegisterQuery.vue
+++ b/src/components/patientRegister/patientRegisterQuery.vue
@@ -299,6 +299,7 @@ export default {
//查询
toQuery(queryType) {
+ console.log('toQuery.queryType',queryType)
this.query.queryType = queryType
if(queryType != 'idCardNo') this.query.photo = ''
this.$emit('triggerQuery', this.query)
diff --git a/src/components/sumDoctorCheck/ButtonList.vue b/src/components/sumDoctorCheck/ButtonList.vue
index 310e085..1c0b0c7 100644
--- a/src/components/sumDoctorCheck/ButtonList.vue
+++ b/src/components/sumDoctorCheck/ButtonList.vue
@@ -13,15 +13,18 @@
导入检查结果
- 导入检验结果
- 导入迪安结果
+ v-show="checkPagePriv(pagePriv.privs, '导入检查结果')">导入检查结果
+ 导入检验结果
+ 导入迪安结果
-
-
+
+
+
+ AI助手
+
AI诊断
@@ -93,11 +96,19 @@
-
-
+
+
+
+
+
+ AI 提问
关闭
- AI重新诊断
+
+
+
{
- if (res.code > -1) {
- this.$message.success({ showClose: true, message: '导入成功!' })
- }
- })
- break;
+ if (res.code > -1) {
+ this.$message.success({ showClose: true, message: '导入成功!' })
+ }
+ })
+ break;
default: //lis
postapi(url, { patientRegisterId }).then(res => {
if (res.code > -1) {
@@ -315,7 +334,7 @@ export default {
summaryDoctorId: this.dataTransOpts.tableS.patient_register.summaryDoctorId || null,
summaryDate: this.dataTransOpts.tableS.patient_register.summaryDate || moment(new Date()).format("yyyy-MM-DD HH:mm:ss"),
medicalConclusionId: this.dataTransOpts.tableS.patient_register.medicalConclusionId || null,
- summaryHistoricalReview:this.sumDoctorCheck.historySummary,
+ summaryHistoricalReview: this.sumDoctorCheck.historySummary,
sumSummarys: this.sumDoctorCheck.summaryList,
sumSuggestions: this.sumDoctorCheck.suggestionList
}
@@ -438,29 +457,39 @@ export default {
},
+ btnAIassistant() {
+ this.AI.isAssistant = true
+ this.AI.visible = true
+ this.btnAImax(false);
+ },
+
// AI诊断 AI重新诊断(使用 fetchStream 实现流式实时渲染)
- async btnAIdiagnosis(again) {
- if (!again) {
- if (this.AI.visible) {
- this.btnAImax(false);
- return;
- }
- }
+ btnAIdiagnosis() {
+ this.AI.isAssistant = true
+ this.AI.question = ''
+ this.AI.visible = true
+ this.btnAImax(false);
+ this.toAIdiagnosis()
+ },
- let message = '';
- let linkStr = ';';
- this.sumDoctorCheck.summaryList.forEach(e => {
- if (message) {
- linkStr = ';';
- } else {
- linkStr = '';
- }
- message += linkStr + e.summaryTitle + ':';
- e.details.forEach((e1, i) => {
- message += (i + 1) + ')、' + e1.summaryContent;
+ async toAIdiagnosis() {
+ let message = this.AI.question;
+ if (!message) {
+ let linkStr = ';';
+ this.sumDoctorCheck.summaryList.forEach(e => {
+ if (message) {
+ linkStr = ';';
+ } else {
+ linkStr = '';
+ }
+ message += linkStr + e.summaryTitle + ':';
+ e.details.forEach((e1, i) => {
+ message += (i + 1) + ')、' + e1.summaryContent;
+ });
});
- });
- message = '性别:' + this.doctorCheck.prBase.sexName + ',年龄:' + this.doctorCheck.prBase.age + '岁,检查结果:' + message;
+ message = '性别:' + this.doctorCheck.prBase.sexName + ',年龄:' + this.doctorCheck.prBase.age + '岁,检查结果:' + message;
+ this.AI.question = message
+ }
this.AI.rawText = '';
this.AI.html = '';
@@ -482,7 +511,7 @@ export default {
try {
const el = this.$refs.aiContent;
if (el) el.scrollTop = el.scrollHeight;
- } catch (e) {}
+ } catch (e) { }
});
});
} catch (err) {
@@ -507,6 +536,7 @@ export default {
}
},
+ // AI 是否最大化
btnAImax(max) {
this.AI.max = !max
if (this.AI.max) {
@@ -595,7 +625,7 @@ export default {
{ Name: "firstPage", Value: "pic/peisReportFirstPage.jpg" }, //报告首页主图
{ Name: "pageHeader", Value: "pic/peisReportPageHeader.jpg" }, //报告页眉图片
{ Name: "pageFooter", Value: "pic/peisReportPageFooter.jpg" }, //报告页脚图片
- { Name: "orgSign", Value: this.dataTransOpts.tableS.patient_register.isPatientOccupationalDisease == 'Y' ? "pic/orgSignOcc.png" : "pic/orgSign.png" }, // 体检章
+ { Name: "orgSign", Value: this.dataTransOpts.tableS.patient_register.isPatientOccupationalDisease == 'Y' ? "pic/orgSignOcc.png" : "pic/orgSign.png" }, // 体检章
{ Name: 'picExtOne', Value: 'pic/hisLog.jpg' }, // 院徽
{ Name: 'picExtTwo', Value: 'pic/orgSignCom.png' }, // 单位公章
{ Name: 'resultSign', Value: 'pic/resultSign.png' }, // 结果章,如:职业病(本次体检未发现职业性异常)
@@ -661,7 +691,7 @@ export default {
},
//重置
- btnReset(){
+ btnReset() {
location.reload()
},
diff --git a/src/components/sumDoctorCheck/SumSug.vue b/src/components/sumDoctorCheck/SumSug.vue
index e89a51f..ea7ec65 100644
--- a/src/components/sumDoctorCheck/SumSug.vue
+++ b/src/components/sumDoctorCheck/SumSug.vue
@@ -2,8 +2,7 @@
-
+
新增综述
@@ -93,7 +92,8 @@
+ :height="sumHeight" border size="small" ref="tableSuggestion" @row-contextmenu="onCellRightClick"
+ @row-click="rowClickS">
@@ -258,7 +258,7 @@
-
+
@@ -312,12 +312,22 @@
-
-
-
+
+
+
+
+
+
+ AI 提问
关闭
+
+
+
@@ -330,7 +340,7 @@
-
+
@@ -351,9 +361,10 @@
diff --git a/src/views/customerOrg/patientRegisterSign.vue b/src/views/customerOrg/patientRegisterSign.vue
index dbe494a..a9109b1 100644
--- a/src/views/customerOrg/patientRegisterSign.vue
+++ b/src/views/customerOrg/patientRegisterSign.vue
@@ -7,24 +7,23 @@
体检人员签到
-
+
@@ -49,6 +48,17 @@ export default {
data() {
return {
tabChoosed: "1",
+ // 单位树传入查询条件的数据
+ refParamsQuery: {
+ customerOrgId: '',
+ customerOrgName: '',
+ parentNodes:[],
+ PatientRegisterQueryTimes: 0 //触发更新查询单位ID、名称及其 日期段、体检次数等
+ },
+ // 查询条件
+ queryCondition: {
+ queryConditionTimes: 0
+ },
};
},
@@ -119,7 +129,32 @@ export default {
console.log("dict", this.dict);
},
+ // 树子组件,改变树当前选择节点
+ changeTreeCurrOrg(org) {
+ // console.log('父.changeTreeCurrOrg',org)
+ this.refParamsQuery.customerOrgId = org.id
+ this.refParamsQuery.customerOrgName = org.displayName
+ this.refParamsQuery.parentNodes = org.parentNodes // 上级节点
+ this.refParamsQuery.PatientRegisterQueryTimes++
+
+ // 用于登记
+ this.queryCondition.customerOrgId = org.id
+ this.queryCondition.customerOrgName = org.displayName
+ // 获取顶级ID (优化无需获取顶级ID)
+ if (org?.parentNodes.length > 1) {
+ this.queryCondition.customerOrgTopId = org.parentNodes[1]
+ } else {
+ this.queryCondition.customerOrgTopId = org.id
+ }
+
+ },
+ // 查询条件 触发查询
+ triggerQuery(queryCondition) {
+ //console.log('父.triggerQuery1', queryCondition)
+ this.queryCondition = Object.assign(this.queryCondition, queryCondition, { queryConditionTimes: Number(this.queryCondition.queryConditionTimes) + 1 })
+ //console.log('父.triggerQuery2', this.queryCondition)
+ },
},
//监听事件()