+
+
+
+
+
+
+
+
+ 至
+
+
+
+
+
+
+
+
+
+ {{ moment(scope.row.pacsCheckDate).format("yyyy-MM-DD") }}
+
+
+
+
+ {{ moment(scope.row.pacsUploadDate).format("yyyy-MM-DD") }}
+
+
+
+
+
+
人员信息:
检查条码
@@ -33,13 +66,12 @@
检查结果:
+ placeholder="请输入描述" size="small" :autosize="{ minRows: 10, maxRows: 10 }" />
检查结论:
+ placeholder="请输入结论" size="small" :autosize="{ minRows: 6, maxRows: 6 }" />
@@ -47,10 +79,10 @@
-
选择描述
-
保存结果
+
选择描述
+
保存结果
@@ -84,7 +116,17 @@ export default {
routeUrlorPageName: 'doctorCheck', //当前页面归属路由或归属页面权限名称
privs: [] // 页面权限
},
-
+ query: {
+ patientName: "",
+ checkRequestNo: "",
+ dateType: "1",
+ startDate: "",
+ endDate: "",
+ maxResultCount: 1000,
+ skipCount: 0
+ },
+ doctorCheckEdit: {},
+ pacsList: [],
checkRequestNo: '',
dialogDcm: false,
iframeSrc: '',
@@ -96,29 +138,6 @@ export default {
result: '',
summary: ''
},
-
-
- checkPictures: [
- // {
- // id: "1",
- // registerCheckId: "registerCheckId",
- // isPrint: "Y",
- // isPrintTrans: true,
- // pictureFilename:
- // "https://fuss10.elemecdn.com/8/27/f01c15bb73e1ef3793e64e6b7bbccjpeg.jpeg",
- // },
- // {
- // id: "2",
- // registerCheckId: "registerCheckId",
- // isPrint: "Y",
- // isPrintTrans: true,
- // pictureFilename:
- // "https://fuss10.elemecdn.com/1/8e/aeffeb4de74e2fde4bd74fc7b4486jpeg.jpeg",
- // },
- ],
- //图片上传
- dialogCheckPictureUpload: false,
- uploadSeq: 0, //第几次点图片上传,每点一次清空前次所选图片
};
},
@@ -132,11 +151,14 @@ export default {
//挂载完成
mounted() {
- this.getCheckPictures(this.dataTransOpts.tableS.register_check.id);
+ let today = moment(new Date()).format("yyyy-MM-DD")
+ this.query.startDate = today
+ this.query.endDate = today
},
computed: {
...mapState([
+ "pickerOptions",
"window",
"dict",
"dialogWin",
@@ -148,14 +170,35 @@ export default {
lmoment(date, forMat) {
return moment(new Date(date)).format(forMat);
},
+ tableHeight() {
+ return this.window.pageHeight - 105 - 400 - 76
+ },
},
methods: {
- checkPagePriv,
+ checkPagePriv, moment,
+
+ btnQuery() {
+ let body = Object.assign({}, this.query)
+ if (!body.checkRequestNo) delete body.checkRequestNo
+ if (!body.patientName) delete body.patientName
+ if (!body.startDate || !body.endDate) {
+ this.$message.warning({ showClose: true, message: '请选择日期' })
+ return
+ }
+ postapi('/api/app/PacsBusiness/GetPatientRegisterPacsCheck', body)
+ .then(res => {
+ if (res.code > -1) this.pacsList = res.data.items
+ })
+ },
+ rowClick(row) {
+ this.onQueryByPacsNo(row.checkRequestNo)
+ },
// 浏览Dcm文件
btnBrowseDcm() {
- this.checkRequestNo = this.doctorCheck.checkRequestNo
+ // console.log('this.doctorCheck', this.doctorCheck.RegisterCheckEdit)
+ this.checkRequestNo = this.doctorCheck.RegisterCheckEdit.checkRequestNo
this.pacsParams.result = this.doctorCheck.checkItemList[0].result
let summary = ''
this.doctorCheck.checkSummaryList.forEach(e => {
@@ -168,7 +211,7 @@ export default {
// console.log('pacsParams', this.pacsParams)
let token = window.sessionStorage.getItem('token')
- this.iframeSrc = `${this.sysConfig.dcmViewers}/?mrn=${this.doctorCheck.checkRequestNo}&token=${token}&pacsapi=${this.sysConfig.pacsApi}`
+ this.iframeSrc = `${this.sysConfig.dcmViewers}/?mrn=${this.doctorCheck.RegisterCheckEdit.checkRequestNo}&token=${token}&pacsapi=${this.sysConfig.pacsApi}`
// this.iframeSrc = `${this.sysConfig.dcmViewers}/viewer?StudyInstanceUIDs=1.3.12.2.1107.5.1.4.79623.30000024091203062645300000022`
this.dialogDcm = true
@@ -183,7 +226,7 @@ export default {
// 确定描述与结论
btnOkBigtext() {
- console.log('this.pacsParams', this.pacsParams)
+ // console.log('this.pacsParams', this.pacsParams)
this.doctorCheck.checkItemList[0].result = this.pacsParams.result
this.doctorCheck.checkSummaryList = [{
id: Math.random(),
@@ -191,8 +234,75 @@ export default {
summary: this.pacsParams.summary,
summaryFlag: 'N',
}]
+
+ this.save()
+
+ },
+
+ //保存数据
+ save() {
+
+ let checkDate = this.doctorCheck.RegisterCheckEdit.checkDate || new Date();
+ checkDate = moment(new Date(checkDate)).format('yyyy-MM-DD HH:mm:ss'); //yyyy-MM-DD HH:mm:ss
+ let checkDoctorId = this.doctorCheck.RegisterCheckEdit.checkDoctorId || null;
+ let registerCheckId = this.doctorCheck.RegisterCheckEdit.id
+ // 明细
+ let registerCheckItems = []
+ this.doctorCheck.checkItemList.forEach(e => {
+ registerCheckItems.push({
+ itemId: e.itemId,
+ result: e.result,
+ checkDoctorName: checkDoctorId,
+ checkDate,
+ })
+ });
+ // 小结
+ let summarys = []
+ this.doctorCheck.checkSummaryList.forEach(item => {
+ summarys.push({
+ summary: item.summary,
+ summaryFlag: item.summaryFlag,
+ })
+ });
+ // 建议
+ let suggestions = []
+ this.doctorCheck.checkSuggestionList.forEach(item => {
+ suggestions.push({
+ suggestion: item.suggestion
+ })
+ });
+
+ let body = {
+ registerCheckId,
+ checkDoctorId,
+ checkDate,
+ registerCheckItems,
+ summarys,
+ suggestions
+ }
+
+
+ if (summarys.length == 0) {
+ this.$message.warning({ showClose: true, message: '请生成小结!' })
+ return
+ }
+
+ postapi('/api/app/registercheck/UpdateCheckResult', body)
+ .then(res => {
+ if (res.code > -1) {
+ this.doctorCheck.RegisterCheckEdit.completeFlag = '1';
+ //更新组合项目列表记录状态
+ let lfind = arrayExistObj(this.doctorCheck.RegisterCheckList, 'id', body.registerCheckId)
+ if (lfind > -1) this.doctorCheck.RegisterCheckList[lfind].completeFlag = '1'
+
+ console.log('操作成功')
+ } else {
+ this.$message.error({ showClose: true, message: res.message })
+ }
+ })
},
+
// 处理 pacs 结果录入的情况
handlePacsResult(row, index, pacsResult) {
Object.assign(this.pacsParams, pacsResult)
@@ -202,13 +312,15 @@ export default {
// 通过检查条码查询相关数据
onQueryByPacsNo(checkRequestNo) {
this.checkRequestNo = checkRequestNo
- this.$refs['checkRequestNo'].select()
postapi('/api/app/PacsBusiness/GetPatientRegisterWithCheckResultByCheckRequestNo', { checkRequestNo })
.then(res => {
if (res.code > -1) {
// 人员信息
this.dataTransOpts.tableS.patient_register = res.data.patientRegisterDetail
+ // 检查信息
+ this.doctorCheck.RegisterCheckEdit = res.data.registerCheckDetail
+
// 组合项目
this.doctorCheck.RegisterCheckList = [res.data.registerCheckDetail]
@@ -238,21 +350,18 @@ export default {
},
- onFocus(event) {
- this.$refs['checkRequestNo'].select()
- }
},
//监听事件
watch: {
//检查项目未切换换时 也可以强制刷新数据
- "dataTransOpts.refresh.register_check_item.M": {
- // immediate: true,
- handler(newVal, oldVal) {
- console.log(`watch 检查图片 newVal:${newVal} oldVal:${oldVal} registerCheckId: ${this.dataTransOpts.tableS.register_check.id}`);
- if (newVal != oldVal) this.getCheckPictures(this.dataTransOpts.tableS.register_check.id);
- }
- },
+ // "dataTransOpts.refresh.register_check_item.M": {
+ // // immediate: true,
+ // handler(newVal, oldVal) {
+ // console.log(`watch 检查图片 newVal:${newVal} oldVal:${oldVal} registerCheckId: ${this.dataTransOpts.tableS.register_check.id}`);
+ // if (newVal != oldVal) this.getCheckPictures(this.dataTransOpts.tableS.register_check.id);
+ // }
+ // },
},
};
diff --git a/src/store/index.js b/src/store/index.js
index 8c21a2b..3075286 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -8,6 +8,59 @@ Vue.use(Vuex);
export default new Vuex.Store({
state: {
sysConfig: { apiurl: '' }, //
+ pickerOptions: {
+ disabledDate(time) {
+ return time.getTime() > Date.now();
+ },
+ shortcuts: [{
+ text: '今天',
+ onClick(picker) {
+ picker.$emit('pick', new Date());
+ }
+ }, {
+ text: '昨天',
+ onClick(picker) {
+ const date = new Date();
+ date.setTime(date.getTime() - 3600 * 1000 * 24);
+ picker.$emit('pick', date);
+ }
+ }, {
+ text: '一周前',
+ onClick(picker) {
+ const date = new Date();
+ date.setTime(date.getTime() - 3600 * 1000 * 24 * 7);
+ picker.$emit('pick', date);
+ }
+ }, {
+ text: '半月前',
+ onClick(picker) {
+ const date = new Date();
+ date.setTime(date.getTime() - 3600 * 1000 * 24 * 15);
+ picker.$emit('pick', date);
+ }
+ }, {
+ text: '一月前',
+ onClick(picker) {
+ const date = new Date();
+ date.setTime(date.getTime() - 3600 * 1000 * 24 * 30);
+ picker.$emit('pick', date);
+ }
+ }, {
+ text: '半年前',
+ onClick(picker) {
+ const date = new Date();
+ date.setTime(date.getTime() - 3600 * 1000 * 24 * 183);
+ picker.$emit('pick', date);
+ }
+ }, {
+ text: '一年前',
+ onClick(picker) {
+ const date = new Date();
+ date.setTime(date.getTime() - 3600 * 1000 * 24 * 365);
+ picker.$emit('pick', date);
+ }
+ }]
+ },
changepassword: '', //用户密码
set: "qqqq",
importexcel: {
@@ -67,7 +120,7 @@ export default new Vuex.Store({
//体检人员登记 add by pengjun
patientRegister: {
- customerOrgs:[], // 体检单位列表(含个人)列表
+ customerOrgs: [], // 体检单位列表(含个人)列表
customerOrgTreeAll: [], //体检单位列表(含个人)树
patientRegisterId: "", //当前人员ID(可根据此值是否为空,判断是新增还是编辑)
patientRegisterTimes: 0, //体检人员登记窗口显示次数(弃用)
@@ -136,7 +189,7 @@ export default new Vuex.Store({
CustomerOrgParentId: "", //单位父级ID
customerOrgFlag: true, //单位作为查询条件
customerOrgRegister: { id: '' }, //单位体检次数
- customerOrgGroupIds:[], //体检分组
+ customerOrgGroupIds: [], //体检分组
checkAsbs: null,
patientRegisterNo: '',
pacsNo: '',
@@ -175,7 +228,7 @@ export default new Vuex.Store({
RegisterCheckId: '', //
checkItemList: [], //组合项目包含的明细项目
checkItem: {}, //单项目记录
- preResult:{}, // 上次结果
+ preResult: {}, // 上次结果
checkSummaryList: [], //小结
checkSuggestionList: [], //建议
},
@@ -308,7 +361,7 @@ export default new Vuex.Store({
{ id: "0", displayName: "普通" },
{ id: "1", displayName: "采血室" }
],
- queueFlag:[
+ queueFlag: [
{ id: "0", displayName: "候诊" },
{ id: "1", displayName: "已呼" },
{ id: "2", displayName: "过号" },
@@ -431,19 +484,19 @@ export default new Vuex.Store({
appoint_register_asbitem: [], // 预约所选组合项目
room: [], // 房间
room_detail: [], // 房间关联组合项目
- common_table:[], // 公共表
+ common_table: [], // 公共表
},
plus: {
PatientRegisterEditQuery: 0, // 更新查询条件
clearPatientRegisterQuery: 0, // 清空人员登记界面查询条件(重新赋值体检单位)
PatientRegisterEditGroupBatch: 0, // 刷新批量调整分组窗口
PatientRegisterEditItemBatch: 0, // 刷新批量调整项目窗口
- PatientRegisterEditDoctorBatch:0, // 刷新批量调整项目检查医生窗口
+ PatientRegisterEditDoctorBatch: 0, // 刷新批量调整项目检查医生窗口
PatientRegisterForChoose: 0, // 体检人员查询窗口
OccDisease: 0, // 职业病
WebBooking: 0, // 网上预约
ImportOrgData: 0, // 导入企业(青藏公司)数据
- queue:0, // 排队信息
+ queue: 0, // 排队信息
}
},
@@ -466,12 +519,12 @@ export default new Vuex.Store({
Label: false, // 补打条码
WebBooking: false, // 网上预约
ImportOrgData: false, // 导入企业(青藏公司)数据
- RoomEdit:false, //房间
- queue:false, // 排队信息
- FollowCriticalCheck:false, // 危急值
- CommonTableTypeEdit:false, //公共表类别
- CommonTableEdit:false, //公共表
- PacsTemplate:false, // pacs结果模版
+ RoomEdit: false, //房间
+ queue: false, // 排队信息
+ FollowCriticalCheck: false, // 危急值
+ CommonTableTypeEdit: false, //公共表类别
+ CommonTableEdit: false, //公共表
+ PacsTemplate: false, // pacs结果模版
}
},