Index: ssts-userecord/src/main/java/com/forgon/disinfectsystem/useRecord/service/UseRecordManagerImpl.java =================================================================== diff -u -r28467 -r28572 --- ssts-userecord/src/main/java/com/forgon/disinfectsystem/useRecord/service/UseRecordManagerImpl.java (.../UseRecordManagerImpl.java) (revision 28467) +++ ssts-userecord/src/main/java/com/forgon/disinfectsystem/useRecord/service/UseRecordManagerImpl.java (.../UseRecordManagerImpl.java) (revision 28572) @@ -6450,6 +6450,11 @@ if(StringUtils.isNotBlank(patientInfo.getPatientArea())){ useRecord.setPatientArea(patientInfo.getPatientArea()); } + + //病人所在科室 + if(StringUtils.isNotBlank(patientInfo.getAscriptionDepartment())){ + useRecord.setAscriptionDepartment(patientInfo.getAscriptionDepartment()); + } //主刀医生(暂无) /*if(StringUtils.isNotBlank(patientInfo.getSurgeon())){ Index: ssts-web/src/main/webapp/mobileClient/clientForAndroid.json =================================================================== diff -u -r28525 -r28572 --- ssts-web/src/main/webapp/mobileClient/clientForAndroid.json (.../clientForAndroid.json) (revision 28525) +++ ssts-web/src/main/webapp/mobileClient/clientForAndroid.json (.../clientForAndroid.json) (revision 28572) @@ -1,6 +1,6 @@ { "success":"true", - "version":"4.6.97", - "urlSuffix":"/mobileClient/SterileSupplySystem_Android_V4.6.97_20200725_v4_1_release.apk", - "urlSuffix-6p":"/mobileClient/SterileSupplySystem_Android_V4.6.97_20200725_v4_1_6p_release.apk", + "version":"4.6.98", + "urlSuffix":"/mobileClient/SterileSupplySystem_Android_V4.6.98_20200730_v4_1_release.apk", + "urlSuffix-6p":"/mobileClient/SterileSupplySystem_Android_V4.6.98_20200730_v4_1_6p_release.apk", } \ No newline at end of file Index: ssts-web/src/main/webapp/mobileClient/SterileSupplySystem_Android_V4.6.98_20200730_v4_1_6p_release.apk =================================================================== diff -u Binary files differ Index: ssts-web/src/main/webapp/disinfectsystem/useRecord/useRecordForm.js =================================================================== diff -u -r27882 -r28572 --- ssts-web/src/main/webapp/disinfectsystem/useRecord/useRecordForm.js (.../useRecordForm.js) (revision 27882) +++ ssts-web/src/main/webapp/disinfectsystem/useRecord/useRecordForm.js (.../useRecordForm.js) (revision 28572) @@ -488,6 +488,13 @@ if(patientInfo.patientArea){ top.Ext.getCmp('patientArea').setValue(patientInfo.patientArea); } + if(patientInfo.ascriptionDepartment){ + top.Ext.getCmp('departNameOfpatient').setValue(''); + var ascriptionDepartmentIndex = departJsonStore.find("name",patientInfo.ascriptionDepartment); + if(ascriptionDepartmentIndex != -1){ + top.Ext.getCmp('departNameOfpatient').setValue(patientInfo.ascriptionDepartment); + } + } if(patientInfo.roomNumber){ top.Ext.getCmp('roomNumber').setValue(patientInfo.roomNumber); } Index: ssts-userecord/src/main/java/com/forgon/disinfectsystem/useRecord/service/UseRecordToJson.java =================================================================== diff -u -r25697 -r28572 --- ssts-userecord/src/main/java/com/forgon/disinfectsystem/useRecord/service/UseRecordToJson.java (.../UseRecordToJson.java) (revision 25697) +++ ssts-userecord/src/main/java/com/forgon/disinfectsystem/useRecord/service/UseRecordToJson.java (.../UseRecordToJson.java) (revision 28572) @@ -47,7 +47,7 @@ List inCludesList = Arrays.asList(new String[] { "id", "treatmentNum", "hospitalNum", "patientName", "patientIDCard", "patientAge", "doctorName", "operation", "editable","operationRoom", - "circuitNurse","washHandNurse","patientArea","patientSex","surgeon", + "circuitNurse","washHandNurse","patientArea","ascriptionDepartment","patientSex","surgeon", "specialInfection","visitId","bedNumber","remark"}); if (inCludesList.contains(name)) { return false; Index: ssts-web/src/main/webapp/mobileClient/SterileSupplySystem_Android_V4.6.98_20200730_v4_1_release.apk =================================================================== diff -u Binary files differ Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/useRecord/UseRecord.java =================================================================== diff -u -r27526 -r28572 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/useRecord/UseRecord.java (.../UseRecord.java) (revision 27526) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/useRecord/UseRecord.java (.../UseRecord.java) (revision 28572) @@ -106,6 +106,11 @@ */ private String patientArea; + /** + * 病人所属科室 + */ + private String ascriptionDepartment; + private String roomNumber;// 病室 private String bedNumber;// 床位 @@ -289,6 +294,14 @@ this.patientArea = patientArea; } + public String getAscriptionDepartment() { + return ascriptionDepartment; + } + + public void setAscriptionDepartment(String ascriptionDepartment) { + this.ascriptionDepartment = ascriptionDepartment; + } + public String getRoomNumber() { return roomNumber; } Index: ssts-userecord/src/main/java/com/forgon/disinfectsystem/useRecord/util/UseRecordUtil.java =================================================================== diff -u -r26716 -r28572 --- ssts-userecord/src/main/java/com/forgon/disinfectsystem/useRecord/util/UseRecordUtil.java (.../UseRecordUtil.java) (revision 26716) +++ ssts-userecord/src/main/java/com/forgon/disinfectsystem/useRecord/util/UseRecordUtil.java (.../UseRecordUtil.java) (revision 28572) @@ -16,6 +16,8 @@ import com.forgon.Constants; import com.forgon.directory.acegi.tools.AcegiHelper; import com.forgon.directory.model.BarcodeDevice; +import com.forgon.directory.model.OrgUnit; +import com.forgon.directory.vo.LoginUserData; import com.forgon.disinfectsystem.barcode.service.BarcodeManager; import com.forgon.disinfectsystem.barcode.util.BarcodeUtils; import com.forgon.disinfectsystem.entity.assestmanagement.DisposableGoods; @@ -30,6 +32,8 @@ import com.forgon.disinfectsystem.entity.useRecord.UseDiposableGoodsItem; import com.forgon.disinfectsystem.entity.useRecord.UseRecord; import com.forgon.disinfectsystem.tousse.toussedefinition.service.TousseInstanceManager; +import com.forgon.log.model.Log; +import com.forgon.runwithtrans.model.RunWithTransNewTask; import com.forgon.tools.db.DatabaseUtil; import com.forgon.tools.hibernate.ObjectDao; import com.forgon.tools.json.JSONUtil; @@ -288,6 +292,50 @@ UseRecord useRecord = null; if (StringUtils.isNotBlank(formParams)) { useRecord = new Gson().fromJson(formParams, UseRecord.class); + //获取病人所在科室对应的科室编码 + try{ + JSONObject useRecordParam = JSONObject.fromObject(formParams); + if(useRecordParam.has("ascriptionDepartment")){ + String ascriptionDepartment = useRecordParam.optString("ascriptionDepartment"); + if(StringUtils.isNotBlank(ascriptionDepartment)){ + OrgUnit orgUnit = (OrgUnit)objectDao.getBySql(OrgUnit.class.getSimpleName(), "where name='"+ ascriptionDepartment +"'"); + if(orgUnit != null){ + useRecord.setDepartCodeOfpatient(orgUnit.getOrgUnitCoding()); + }else{ + String patientName = useRecord.getPatientName(); + String hospitalNum = useRecord.getHospitalNum(); + String treatmentNum = useRecord.getTreatmentNum(); + String logMessage = StringUtils.isNotBlank(patientName) ? String.format("病人姓名:%s", patientName) : null; + if(StringUtils.isNotBlank(hospitalNum)){ + logMessage = StringUtils.isNotBlank(logMessage) ? String.format("%s,住院号:%s", logMessage,hospitalNum) : String.format("住院号:%s", hospitalNum); + } + if(StringUtils.isNotBlank(treatmentNum)){ + logMessage = StringUtils.isNotBlank(logMessage) ? String.format("%s,诊疗号:%s", logMessage,treatmentNum) : String.format("诊疗号:%s", treatmentNum); + } + logMessage = String.format("%s的使用记录的病人所在科室:%s在系统的组织机构里未找到", logMessage,ascriptionDepartment); + logger.debug(logMessage); + LoginUserData loginUser = AcegiHelper.getLoginUser(); + Log log = new Log(); + String userId = loginUser.getUserName(); + String userIP = loginUser.getUserIP(); + String userFullName = loginUser.getUserFullName(); + log.setLogDateTime(new Date()); + log.setUsername(userFullName); + log.setUserId(userId); + log.setUserIP(userIP); + log.setModel(Log.MODEL_USERECORD); + log.setOperationType(Log.TYPE_QUERY); + log.setOperationDescription(logMessage); + log.setClientType(loginUser.getClientType()); + log.setClientVersion(loginUser.getClientVersion()); + log.setSessionID(loginUser.getSessionID()); + objectDao.save(log); + } + } + } + }catch(Exception e){ + e.printStackTrace(); + } } if (useRecord == null) { throw new RuntimeException("原始页面参数为空!");