Index: ssts-web/src/main/webapp/systemmanage/workFlow/workFlowApprovalTaskForm.js =================================================================== diff -u -r22476 -r23398 --- ssts-web/src/main/webapp/systemmanage/workFlow/workFlowApprovalTaskForm.js (.../workFlowApprovalTaskForm.js) (revision 22476) +++ ssts-web/src/main/webapp/systemmanage/workFlow/workFlowApprovalTaskForm.js (.../workFlowApprovalTaskForm.js) (revision 23398) @@ -16,7 +16,17 @@ } } -//isFinished代表是否已办入口进入 + +/** + * isFinished代表是否已办入口进入 + * @param workFlowApprovalTaskId + * @param nodeDefinition_id + * @param taskName + * @param formId + * @param formType + * @param approvalResult + * @param isFinished + */ function addAndEditWorkFlowApprovalTask(workFlowApprovalTaskId, nodeDefinition_id,taskName,formId,formType,approvalResult,isFinished) { var aStore=null;//速度太慢,考虑放在打开的瞬间传过来 top.Ext4.Ajax.request({ @@ -426,6 +436,7 @@ passWindowObj.show(); } + //创建审批信息表单 approvalFormObj = top.Ext4.create('Ext4.form.Panel', { frame : true, height: 560, Index: ssts-web/src/main/java/com/forgon/disinfectsystem/component/grid/GridManagerImpl.java =================================================================== diff -u -r22538 -r23398 --- ssts-web/src/main/java/com/forgon/disinfectsystem/component/grid/GridManagerImpl.java (.../GridManagerImpl.java) (revision 22538) +++ ssts-web/src/main/java/com/forgon/disinfectsystem/component/grid/GridManagerImpl.java (.../GridManagerImpl.java) (revision 23398) @@ -31,11 +31,13 @@ import com.forgon.disinfectsystem.basedatamanager.supplyroomconfig.service.SupplyRoomConfigManager; import com.forgon.disinfectsystem.basedatamanager.warehouse.service.WareHouseManager; import com.forgon.disinfectsystem.entity.assestmanagement.ExpensiveGoods; +import com.forgon.disinfectsystem.entity.assestmanagement.ExpensiveGoodsGodownEntry; import com.forgon.disinfectsystem.entity.assestmanagement.ExpensiveGoodsStock; import com.forgon.disinfectsystem.entity.basedatamanager.materialdefinition.MaterialDefinition; import com.forgon.disinfectsystem.entity.basedatamanager.supplyroomconfig.SupplyRoomConfig; import com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseDefinition; import com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseInstance; +import com.forgon.disinfectsystem.entity.invoicemanager.InvoicePlan; import com.forgon.disinfectsystem.entity.receiverecord.ReceiveRecord; import com.forgon.disinfectsystem.entity.returngoodsrecord.ReturnGoodsRecord; import com.forgon.disinfectsystem.entity.sterilizationmanager.foreignproxydisinfection.ForeignProxyDisinfection; @@ -342,6 +344,16 @@ } } } + //如果为查询高值耗材入库单,则添加绑定的申请单号 + else if(ExpensiveGoodsGodownEntry.class.getSimpleName().equals(poClass) && CollectionUtils.isNotEmpty(list)){ + for(Object obj : list){ + ExpensiveGoodsGodownEntry egg = (ExpensiveGoodsGodownEntry)obj; + if(ExpensiveGoodsGodownEntry.TYPE_IN.equals(egg.getType())){ + InvoicePlan ip = (InvoicePlan) objectDao.getByProperty(InvoicePlan.class.getSimpleName(), "id", egg.getInvoicePlanId()); + egg.setInvoicePlanSerialNumber(ip.getSerialNumber()); + } + } + } Map map = new HashMap(); map.put("totalResults", totalResults); Index: ssts-web/src/main/webapp/disinfectsystem/assestManagement/expensiveGoods/expensiveGoodsGodownEntryView.js =================================================================== diff -u -r22337 -r23398 --- ssts-web/src/main/webapp/disinfectsystem/assestManagement/expensiveGoods/expensiveGoodsGodownEntryView.js (.../expensiveGoodsGodownEntryView.js) (revision 22337) +++ ssts-web/src/main/webapp/disinfectsystem/assestManagement/expensiveGoods/expensiveGoodsGodownEntryView.js (.../expensiveGoodsGodownEntryView.js) (revision 23398) @@ -757,7 +757,8 @@ Ext.QuickTips.init(); commonEntry.setCurrentUserName(curUserName); var columns = [ - {header : "单号",width : 200,dataIndex : 'serialNumber', renderer : modifyRecord}, + {header : "单号",width : 200,dataIndex : 'serialNumber', renderer : modifyRecord,hidden : true}, + {header : "申请单号",width : 200,dataIndex : 'invoicePlanSerialNumber', renderer : modifyRecord}, {header : "操作员",width : 200,dataIndex : 'operator'}, {header : "入库时间",width : 200,dataIndex : 'time' , renderer : myDateFormatByMinute}, {header : "金额",width : 200,dataIndex : 'totalPrice'}, @@ -776,13 +777,13 @@ {name : 'supplierName'}, {name : 'dataStatus'}, {name : 'subType'}, - {name : 'invoicePlanId'} - + {name : 'invoicePlanId'}, + {name : 'invoicePlanSerialNumber'} ]; var filters = new Ext.grid.GridFilters({ filters:[ - {type: 'string', dataIndex: 'serialNumber'}, + {type: 'string', dataIndex: 'invoicePlanSerialNumber'}, {type: 'string', dataIndex: 'operator'}, {type: 'date', dataIndex: 'time'}, {type: 'string', dataIndex: 'remark'}, Index: forgon-core/src/main/java/com/forgon/workflow/service/WorkFlowApprovalTaskManagerImpl.java =================================================================== diff -u -r23309 -r23398 --- forgon-core/src/main/java/com/forgon/workflow/service/WorkFlowApprovalTaskManagerImpl.java (.../WorkFlowApprovalTaskManagerImpl.java) (revision 23309) +++ forgon-core/src/main/java/com/forgon/workflow/service/WorkFlowApprovalTaskManagerImpl.java (.../WorkFlowApprovalTaskManagerImpl.java) (revision 23398) @@ -510,8 +510,11 @@ LoginUserData userData= AcegiHelper.getLoginUser(); Long userId= userData.getUserId(); - //2、获取当前用户对应的已办任务 :与handlerId匹配; - String select = " select po.id,po.formId,po.formType,po.title,po.createTaskTime,po.taskName,po.handleOpinion,po.handleTime,po.approvalResult,po.nodeDefinition_id from WorkFlowApprovalTask po "; + //2、获取当前用户对应的已办任务数据,关联的高值耗材申请数据 :与handlerId匹配; + String select = " select po.id,po.formId,po.formType,po.title,po.createTaskTime,po.taskName,po.handleOpinion,po.handleTime,po.approvalResult,po.nodeDefinition_id " + + ",ip.depart,exIp.patient,exIp.hospitalNumber,exIp.doctor,exIp.operationTime " + + "from WorkFlowApprovalTask po " + + "left join ExpensiveGoodsApplication exIp on po.formId = exIp.id join InvoicePlan ip on exIp.id = ip.id "; String where =" where po.status = 1 and po.handlerId ="+userId; //转化为起始时间的00:00:00,到截止时间的最后一秒23:59:59 @@ -554,10 +557,12 @@ //1、获取当前登陆用户的id和名字 LoginUserData userData= AcegiHelper.getLoginUser(); Long userId= userData.getUserId(); - //2、获取当前用户对应的待办任务 :与userid匹配;当前用户所在role与roleid匹配 + //2、获取当前用户对应的待办任务和关联的高值耗材申请单:与userid匹配;当前用户所在role与roleid匹配 StringBuilder select=new StringBuilder(); select.append("select w.id,w.formId,w.formType,w.title,w.createTaskTime,w.taskName,w.handleDepart,w.serialNumber,w.approvalResult,w.nodeDefinition_id,w.roleId,w.userId,u.fullName userName,r.descn roleName"); + select.append(" ,ip.depart,exIp.patient,exIp.hospitalNumber,exIp.doctor,exIp.operationTime ");//高值耗材申请单数据 select.append(" from WorkFlowApprovalTask w left join SS_USERS u on w.userId=u.id left join SS_ROLES r on r.id=w.roleId"); + select.append(" left join ExpensiveGoodsApplication exIp on w.formId = exIp.id join InvoicePlan ip on exIp.id = ip.id ");//关联申请单 //2.1状态为未处理 2.2当前用户存在于userid 或者 记录存储的角色id存在于当前用户对应角色列表 String where = " where 1=1 and w.status =0 and ( w.userId = "+userId+" or w.roleId in ( select s.ROLE_ID from SS_USER_ROLE s where s.USER_ID="+userId+" ))"; if(StringUtils.isNotBlank(formType)){ Index: ssts-web/src/main/webapp/systemmanage/workFlow/finishedApprovalTaskRecordView.js =================================================================== diff -u -r22338 -r23398 --- ssts-web/src/main/webapp/systemmanage/workFlow/finishedApprovalTaskRecordView.js (.../finishedApprovalTaskRecordView.js) (revision 22338) +++ ssts-web/src/main/webapp/systemmanage/workFlow/finishedApprovalTaskRecordView.js (.../finishedApprovalTaskRecordView.js) (revision 23398) @@ -100,6 +100,21 @@ }, { name : 'approvalResult', mapping : 'approvalResult' +}, { + name : 'depart', + mapping : 'depart' +}, { + name : 'patient', + mapping : 'patient' +}, { + name : 'hospitalNumber', + mapping : 'hospitalNumber' +}, { + name : 'doctor', + mapping : 'doctor' +}, { + name : 'operationTime', + mapping : 'operationTime' } ]; var recordColumns = [{ @@ -165,18 +180,62 @@ type : 'date' }, renderer : rendererTransitionTime -} -, { +}, { header : "响应时间", id : "responseTime", dataIndex : '', - width : 200, + width : 150, filterable : true, sortable : false, filter : { type : 'string' }, renderer : rendererResponseTime +}, { + header : "申请科室", + dataIndex : 'depart', + width : 200, + filterable : true, + sortable : false, + filter : { + type : 'string' + } +}, { + header : "病人姓名", + dataIndex : 'patient', + width : 100, + filterable : true, + sortable : false, + filter : { + type : 'string' + } +}, { + header : "住院号", + dataIndex : 'hospitalNumber', + width : 100, + filterable : true, + sortable : false, + filter : { + type : 'string' + } +}, { + header : "医生", + dataIndex : 'doctor', + width : 100, + filterable : true, + sortable : false, + filter : { + type : 'string' + } +}, { + header : "手术时间", + dataIndex : 'operationTime', + width : 150, + filterable : true, + filter : { + type : 'date' + }, + renderer : rendererTransitionTime } ]; Index: forgon-core/src/main/java/com/forgon/workflow/model/WorkFlowApprovalTask.java =================================================================== diff -u -r22166 -r23398 --- forgon-core/src/main/java/com/forgon/workflow/model/WorkFlowApprovalTask.java (.../WorkFlowApprovalTask.java) (revision 22166) +++ forgon-core/src/main/java/com/forgon/workflow/model/WorkFlowApprovalTask.java (.../WorkFlowApprovalTask.java) (revision 23398) @@ -22,7 +22,7 @@ private Long id; /** - * 工单号id + * 工单号id(高值耗材申请单id) **/ private Long formId; Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/assestmanagement/ExpensiveGoodsGodownEntry.java =================================================================== diff -u -r22075 -r23398 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/assestmanagement/ExpensiveGoodsGodownEntry.java (.../ExpensiveGoodsGodownEntry.java) (revision 22075) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/assestmanagement/ExpensiveGoodsGodownEntry.java (.../ExpensiveGoodsGodownEntry.java) (revision 23398) @@ -14,6 +14,7 @@ import javax.persistence.JoinColumn; import javax.persistence.OneToMany; import javax.persistence.Table; +import javax.persistence.Transient; import org.apache.commons.lang3.StringUtils; import org.hibernate.annotations.Cache; @@ -100,8 +101,14 @@ *绑定的申请单id */ private Long invoicePlanId; - + /** + *绑定的申请单单号 + *(不持久化,只用于入库单界面显示申请单号) + */ + private String invoicePlanSerialNumber; + + /** * 供应商id */ private Long supplierId; @@ -303,7 +310,16 @@ public void setInvoiceStatus(String invoiceStatus) { this.invoiceStatus = invoiceStatus; } + + @Transient + public String getInvoicePlanSerialNumber() { + return invoicePlanSerialNumber; + } + public void setInvoicePlanSerialNumber(String invoicePlanSerialNumber) { + this.invoicePlanSerialNumber = invoicePlanSerialNumber; + } + public boolean delivered() { if (STATUS_DELIVERED.equals(invoiceStatus)) { return true; Index: ssts-web/src/main/webapp/systemmanage/workFlow/workFlowApprovalTaskView.js =================================================================== diff -u -r22297 -r23398 --- ssts-web/src/main/webapp/systemmanage/workFlow/workFlowApprovalTaskView.js (.../workFlowApprovalTaskView.js) (revision 22297) +++ ssts-web/src/main/webapp/systemmanage/workFlow/workFlowApprovalTaskView.js (.../workFlowApprovalTaskView.js) (revision 23398) @@ -85,6 +85,21 @@ } , { name : 'userId', mapping : 'userId' + }, { + name : 'depart', + mapping : 'depart' + }, { + name : 'patient', + mapping : 'patient' + }, { + name : 'hospitalNumber', + mapping : 'hospitalNumber' + }, { + name : 'doctor', + mapping : 'doctor' + }, { + name : 'operationTime', + mapping : 'operationTime' }]; var columns = [ @@ -141,7 +156,52 @@ type : 'date' }, renderer : rendererTransitionTime - } ]; + }, { + header : "申请科室", + dataIndex : 'depart', + width : 200, + filterable : true, + sortable : false, + filter : { + type : 'string' + } + }, { + header : "病人姓名", + dataIndex : 'patient', + width : 100, + filterable : true, + sortable : false, + filter : { + type : 'string' + } + }, { + header : "住院号", + dataIndex : 'hospitalNumber', + width : 100, + filterable : true, + sortable : false, + filter : { + type : 'string' + } + }, { + header : "医生", + dataIndex : 'doctor', + width : 100, + filterable : true, + sortable : false, + filter : { + type : 'string' + } + }, { + header : "手术时间", + dataIndex : 'operationTime', + width : 150, + filterable : true, + filter : { + type : 'date' + }, + renderer : rendererTransitionTime + }]; grid = Ext4.create('ExtJs.forgon4.Grid', { title : entityName,