Index: ssts-web/src/main/webapp/disinfectsystem/assestManagement/expensiveGoods/expensiveGoodsView.js =================================================================== diff -u -r20780 -r20845 --- ssts-web/src/main/webapp/disinfectsystem/assestManagement/expensiveGoods/expensiveGoodsView.js (.../expensiveGoodsView.js) (revision 20780) +++ ssts-web/src/main/webapp/disinfectsystem/assestManagement/expensiveGoods/expensiveGoodsView.js (.../expensiveGoodsView.js) (revision 20845) @@ -4,6 +4,7 @@ var formObj; var formWindow; var autoFillExternalCodeOfDisposableGoods = false; +var SUPPLIER_TYPE_SUPPLIER = '高值耗材供应商'; function addExpensiveGoods(id) { autoFillExternalCodeOfDisposableGoods = getBoolValueFromJs('sstsConfig.autoFillExternalCodeOfDisposableGoods',autoFillExternalCodeOfDisposableGoods); var dType = document.getElementById("parm_s_type").value; @@ -62,6 +63,10 @@ id : 'id' },{ xtype : 'hidden', + name : 'certificationId', + id : 'certificationId' + },{ + xtype : 'hidden', name : 'originalFormParams', id : 'originalFormParams' },{ @@ -412,6 +417,35 @@ triggerAction : 'all', anchor : '95%' }] + },{ + columnWidth : 1, + layout : 'column', + labelWidth : 0, + items : [{ + layout : 'form', + labelWidth : 110, + columnWidth : 0.8, + items : [{ + xtype : 'textfield', + fieldLabel : '注册证', + readOnly: true, + maxLength : '16', + id : 'registrationCertification', + name : 'registrationCertification', + allowBlank : true, + anchor : '95%' + }] + },{ + layout : 'form', + labelWidth : 0, + columnWidth : 0.2, + items : [new top.Ext.Button({ + text:'选择', + handler : function() { + selectRegistrationCertification(); + } + })] + }] } ] },{ @@ -524,6 +558,173 @@ } } +var diposableGoodsBatchNumStore = null; +var BatchRecord = null; +var selCertification = null; +function onSelCertification(){ + if(selCertification == null){ + return; + } + top.Ext.getCmp('certificationId').setValue(selCertification.id); + top.Ext.getCmp('registrationCertification').setValue(selCertification.certification); +} +function setBatchNumbers(batches,fireSelect) { + for(var i = 0;i 0){ + setBatchNumbers(batches,true); + } + }); + }, + specialkey : function(field, ee) { + if (ee.getKey() == Ext.EventObject.ENTER) { + top.Ext.getCmp('batchNumber').focus(); + } + } + } + },{ + xtype : 'combo', + id : 'certification2', + name : 'certification2', + fieldLabel : '注册证', + valueField : 'certification', + displayField : 'certification', + store : diposableGoodsBatchNumStore, + editable : false, + forceSelection : false, + mode : 'local', + triggerAction : 'all', + typeAhead : false, + allowBlank : true, + width : 150, + anchor : '95%', + listeners : { + blur : function(thiz) {}, + select : function(combo, record, index) { + selCertification = { + id: record.data.id, + certification: record.data.certification + } + } + } + }], + buttons : [{ + text : '确定', + id : 'saveBtn', + hidden:false, + handler : function(){ + var certification = top.Ext.getCmp("certification2").getValue(); + if(isUndefinedOrNullOrEmpty(certification)){ + showResult('请选择注册证!'); + return false; + } + top.Ext.getCmp('returnGoodsRecordWin').close(); + onSelCertification(); + } + },{ + text : '取消', + handler : function() { + top.Ext.getCmp('returnGoodsRecordWin').close(); + } + }] + }); + var win = new top.Ext.Window({ + id : 'returnGoodsRecordWin', + layout : 'fit', + title : '信息', + width : 500, + modal : true, +// autoHeight : true, + border : false, + height:150, + plain : true, + items : [ form ] + + }); + win.show(); +} + function printAmount() { top.Ext.MessageBox.prompt("输入框", "打印数量:", function(bu, txt) { return txt; @@ -789,6 +990,7 @@ var expensiveGoods = action.result.data; top.Ext.getCmp("orginalName").setValue(expensiveGoods.name); top.Ext.getCmp("orginalSpecification").setValue(expensiveGoods.specification); + top.Ext.getCmp("registrationCertification").setValue(expensiveGoods.registrationCertification); }, failure : function(form, action) { } Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/assestmanagement/ExpensiveGoods.java =================================================================== diff -u -r20739 -r20845 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/assestmanagement/ExpensiveGoods.java (.../ExpensiveGoods.java) (revision 20739) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/assestmanagement/ExpensiveGoods.java (.../ExpensiveGoods.java) (revision 20845) @@ -20,7 +20,9 @@ import com.fasterxml.jackson.annotation.JsonIgnore; import com.forgon.Constants; import com.forgon.directory.acegi.tools.AcegiHelper; +import com.forgon.disinfectsystem.entity.basedatamanager.supplier.RegistrationCertification; import com.forgon.disinfectsystem.expensivegoods.ExpensiveGoodsUtils; +import com.forgon.tools.hibernate.ObjectDao; import com.forgon.tools.string.StringTools; @@ -204,6 +206,10 @@ * 不保存到数据库,用于判断是否做了修改 */ private String orginalSpecification; + /** + * 注册证id + */ + private Long certificationId; @JsonIgnore public static Map ColumnNameAndPoPropertyNameMap= new LinkedHashMap(8); @@ -355,6 +361,14 @@ this.orginalSpecification = orginalSpecification; } + public Long getCertificationId() { + return certificationId; + } + + public void setCertificationId(Long certificationId) { + this.certificationId = certificationId; + } + public String getExternalCode() { return externalCode; } @@ -638,4 +652,10 @@ } } + public RegistrationCertification getRegistrationCertification(ObjectDao objectDao){ + if(certificationId != null){ + return (RegistrationCertification)objectDao.getByProperty(RegistrationCertification.class.getSimpleName(), "id", certificationId); + } + return null; + } } Index: ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/action/ExpensiveGoodsAction.java =================================================================== diff -u -r20841 -r20845 --- ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/action/ExpensiveGoodsAction.java (.../ExpensiveGoodsAction.java) (revision 20841) +++ ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/action/ExpensiveGoodsAction.java (.../ExpensiveGoodsAction.java) (revision 20845) @@ -23,9 +23,11 @@ import com.forgon.databaseadapter.service.DateQueryAdapter; import com.forgon.directory.acegi.tools.AcegiHelper; +import com.forgon.disinfectsystem.basedatamanager.supplier.service.RegistrationCertificationManager; import com.forgon.disinfectsystem.basedatamanager.warehouse.service.WareHouseManager; import com.forgon.disinfectsystem.entity.assestmanagement.ExpensiveGoods; import com.forgon.disinfectsystem.entity.assestmanagement.ExpensiveGoodsStock; +import com.forgon.disinfectsystem.entity.basedatamanager.supplier.RegistrationCertification; import com.forgon.disinfectsystem.entity.basedatamanager.warehouse.WareHouse; import com.forgon.disinfectsystem.expensiveGoods.service.ExpensiveGoodsManager; import com.forgon.log.model.Log; @@ -55,7 +57,9 @@ private String spell; private ExpensiveGoodsManager expensiveGoodsManager; - + + private RegistrationCertificationManager registrationCertificationManager; + private HttpOptionManager httpOptionManager; private WareHouseManager wareHouseManager; @@ -88,6 +92,11 @@ this.expensiveGoodsManager = expensiveGoodsManager; } + public void setRegistrationCertificationManager( + RegistrationCertificationManager registrationCertificationManager) { + this.registrationCertificationManager = registrationCertificationManager; + } + public void setAppLogManager(LogManager appLogManager) { this.appLogManager = appLogManager; } @@ -245,15 +254,17 @@ if(expensiveGoods == null){ expensiveGoods = new ExpensiveGoods(); } - Map map = new HashMap(); - map.put("success", true); - map.put("data", expensiveGoods); - try { - String jsonStr = JSONUtil.toJSONString(map, true); - StrutsParamUtils.getResponse().getWriter().println(jsonStr); - } catch (Exception e) { - e.printStackTrace(); + RegistrationCertification registrationCertification = expensiveGoods.getRegistrationCertification(objectDao); + + JSONObject expensiveGoodsObj = JSONObject.fromObject(expensiveGoods); + if(registrationCertification != null){ + expensiveGoodsObj.put("registrationCertification", registrationCertification.getCertification()); } + JSONObject map = new JSONObject(); + map.put("success", true); + map.put("data", expensiveGoodsObj); + + StrutsResponseUtils.output(map); return null; } Index: ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/dwr/table/ExpensiveGoodsTableManager.java =================================================================== diff -u -r20779 -r20845 --- ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/dwr/table/ExpensiveGoodsTableManager.java (.../ExpensiveGoodsTableManager.java) (revision 20779) +++ ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/dwr/table/ExpensiveGoodsTableManager.java (.../ExpensiveGoodsTableManager.java) (revision 20845) @@ -28,6 +28,7 @@ import com.forgon.disinfectsystem.entity.assestmanagement.ExpensiveGoods; import com.forgon.disinfectsystem.entity.basedatamanager.datasynchronization.HisMaterialDefinition; import com.forgon.disinfectsystem.entity.basedatamanager.datasynchronization.HisMaterialType; +import com.forgon.disinfectsystem.entity.basedatamanager.supplier.RegistrationCertification; import com.forgon.disinfectsystem.entity.systemwarning.SystemWarningItemVO; import com.forgon.disinfectsystem.expensiveGoods.service.ExpensiveGoodsManager; import com.forgon.disinfectsystem.expensiveGoods.util.ExpensiveGoodsUtils; @@ -561,4 +562,18 @@ return jsonObject.toString(); } + public String getCertificationsBySupplierId(String supplierId){ + JSONArray dataJsonArray = new JSONArray(); + String sql = String.format(" where po.supplier.id=%s", supplierId); + List list = (List)objectDao.findBySql(RegistrationCertification.class.getSimpleName(), sql); + if(list != null){ + for (RegistrationCertification registrationCertification : list) { + JSONObject dataJsonObject = new JSONObject(); + dataJsonObject.put("id", registrationCertification.getId()); + dataJsonObject.put("certification", registrationCertification.getCertification()); + dataJsonArray.add(dataJsonObject); + } + } + return dataJsonArray.toString(); + } } Index: ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/service/ExpensiveGoodsManagerImpl.java =================================================================== diff -u -r20827 -r20845 --- ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/service/ExpensiveGoodsManagerImpl.java (.../ExpensiveGoodsManagerImpl.java) (revision 20827) +++ ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/service/ExpensiveGoodsManagerImpl.java (.../ExpensiveGoodsManagerImpl.java) (revision 20845) @@ -198,6 +198,7 @@ * @param expensiveGoodss 脱离的对象 */ private void updateExpensiveGoodsProperties(ExpensiveGoods curExpensiveGoods,ExpensiveGoods expensiveGoodss){ + curExpensiveGoods.setCertificationId(expensiveGoodss.getCertificationId()); curExpensiveGoods.setInventorySerialNumber(expensiveGoodss.getInventorySerialNumber());//物资编码 curExpensiveGoods.setCertification(expensiveGoodss.getCertification()); curExpensiveGoods.setExternalCode(expensiveGoodss.getExternalCode());