Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/assestmanagement/ExpensiveGoodsStock.java =================================================================== diff -u -r20747 -r20779 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/assestmanagement/ExpensiveGoodsStock.java (.../ExpensiveGoodsStock.java) (revision 20747) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/assestmanagement/ExpensiveGoodsStock.java (.../ExpensiveGoodsStock.java) (revision 20779) @@ -7,6 +7,8 @@ import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.ManyToOne; import javax.persistence.Transient; import org.apache.commons.lang.StringUtils; @@ -35,6 +37,8 @@ private Long warehouseID;// 仓库ID private String warehouseName;// 仓库名字 + + private ExpensiveGoods expensiveGoods; @JsonIgnore public static Map ColumnNameAndPoPropertyNameMap = new LinkedHashMap( 8); @@ -136,6 +140,16 @@ this.warehouseName = warehouseName; } + @ManyToOne + @JoinColumn(name = "expensiveGoods_id") + public ExpensiveGoods getExpensiveGoods() { + return expensiveGoods; + } + + public void setExpensiveGoods(ExpensiveGoods expensiveGoods) { + this.expensiveGoods = expensiveGoods; + } + // 一次性物品保存或者更新. // 重新计算数量 public void recalculateAmount() { Index: ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/action/ExpensiveGoodsAction.java =================================================================== diff -u -r20754 -r20779 --- ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/action/ExpensiveGoodsAction.java (.../ExpensiveGoodsAction.java) (revision 20754) +++ ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/action/ExpensiveGoodsAction.java (.../ExpensiveGoodsAction.java) (revision 20779) @@ -21,16 +21,13 @@ import org.apache.struts2.convention.annotation.Namespace; import org.apache.struts2.convention.annotation.ParentPackage; -import com.beust.jcommander.ParameterException; import com.forgon.databaseadapter.service.DateQueryAdapter; import com.forgon.directory.acegi.tools.AcegiHelper; 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.warehouse.WareHouse; -import com.forgon.disinfectsystem.expensiveGoods.service.ExpensiveGoodsBatchStockManager; import com.forgon.disinfectsystem.expensiveGoods.service.ExpensiveGoodsManager; -import com.forgon.disinfectsystem.expensiveGoods.service.ExpensiveGoodsStorageRecordManager; import com.forgon.log.model.Log; import com.forgon.log.service.LogManager; import com.forgon.systemsetting.model.HttpOption; @@ -43,7 +40,6 @@ import com.forgon.tools.db.DatabaseUtil; import com.forgon.tools.hibernate.ObjectDao; import com.forgon.tools.json.JSONUtil; -import com.forgon.tools.util.IntegerUtils; import com.forgon.tools.util.PageUtil; import com.opensymphony.xwork2.ModelDriven; import com.opensymphony.xwork2.Preparable; @@ -61,13 +57,10 @@ private ExpensiveGoodsManager expensiveGoodsManager; private HttpOptionManager httpOptionManager; - - private ExpensiveGoodsBatchStockManager expensiveGoodsBatchStockManager; - private WareHouseManager wareHouseManager; - private ExpensiveGoodsStorageRecordManager expensiveGoodsStorageRecordManager; +// private ExpensiveGoodsStorageRecordManager expensiveGoodsStorageRecordManager; private LogManager appLogManager; @@ -85,28 +78,28 @@ private final Pattern pat = Pattern.compile("[\\u4E00-\\u9FA5]+"); - public void setDiposableGoodBatchStockManager( - ExpensiveGoodsBatchStockManager expensiveGoodsBatchStockManager) { - this.expensiveGoodsBatchStockManager = expensiveGoodsBatchStockManager; - } + public void setSpell(String spell) { this.spell = spell; } - public void setDiposableGoodsManager( - ExpensiveGoodsManager expensiveGoodsManager) { + public void setExpensiveGoodsManager(ExpensiveGoodsManager expensiveGoodsManager) { this.expensiveGoodsManager = expensiveGoodsManager; } + public void setAppLogManager(LogManager appLogManager) { + this.appLogManager = appLogManager; + } + public void setHttpOptionManager(HttpOptionManager httpOptionManager) { this.httpOptionManager = httpOptionManager; } - public void setExpensiveGoodsStorageRecordManager( - ExpensiveGoodsStorageRecordManager expensiveGoodsStorageRecordManager) { - this.expensiveGoodsStorageRecordManager = expensiveGoodsStorageRecordManager; - } +// public void setExpensiveGoodsStorageRecordManager( +// ExpensiveGoodsStorageRecordManager expensiveGoodsStorageRecordManager) { +// this.expensiveGoodsStorageRecordManager = expensiveGoodsStorageRecordManager; +// } public void setObjectDao(ObjectDao objectDao) { this.objectDao = objectDao; @@ -140,35 +133,23 @@ return null; } - /** - * 校验参数: - * 1.判断申领单位和申领单位装换单位系数是否同时未空或者同时不为空 - * 2.判断申领单位装换单位系数是否为整数,且大于0 - */ - private void validatePara(){ - String middlePackageUnit = StrutsParamUtils.getPraramValue("middlePackageUnit", null); - String applicationSpecification = StrutsParamUtils.getPraramValue("applicationSpecification", null); - String transferScale = StrutsParamUtils.getPraramValue("transferScale", null); - if( !((StringUtils.isBlank(applicationSpecification) && StringUtils.isBlank(middlePackageUnit) && StringUtils.isBlank(transferScale)) - || (StringUtils.isNotBlank(applicationSpecification) && StringUtils.isNotBlank(middlePackageUnit) && StringUtils.isNotBlank(transferScale)) - )){ - throw new ParameterException("申领单位、申领规格和申领单位转换单位系数必须同时有值或者同时为空!"); - } - if (transferScale != null && !IntegerUtils.isNumeric(transferScale)){ - throw new ParameterException("申领单位转换单位系数必须是整数!"); - } - if( StringUtils.isNotBlank(applicationSpecification) && Integer.valueOf(transferScale) <= 0){ - throw new ParameterException("申领单位转换单位系数大于0!"); - } - } // 保存一次性物品定义 - public String saveDiposableGoods() { + public String saveExpensiveGoods() { JSONObject obj = new JSONObject(); obj.put("success", true); try { if (expensiveGoods != null) { - this.validatePara(); + String id = ""; + Long idLong = expensiveGoods.getId(); + if(idLong != null){ + id = idLong.toString(); + } + boolean vr = expensiveGoodsManager.verifyDiposableGoods(id, expensiveGoods.getName(), + expensiveGoods.getSpecification()); + if (!vr) { + throw new RuntimeException("高值耗材名称不唯一!"); + } // 设置拼音码 expensiveGoods.setSpelling(GB2Alpha.string2Alpha(expensiveGoods .getName())); @@ -182,7 +163,7 @@ appLogManager = (LogManager) SpringBeanManger.getBean("appLogManager"); String result = "包定义id=" + origineDG.getId() + ";" + compareexpensiveGoodsDefinition(origineDG , expensiveGoods); if(StringUtils.isNotBlank(result)){ - appLogManager.saveLog(AcegiHelper.getLoginUser(), Log.MODEL_DISPOSABLEGOODS, Log.TYPE_UPDATE, result); + appLogManager.saveLog(AcegiHelper.getLoginUser(), Log.MODEL_EXPENSIVEGOODS, Log.TYPE_UPDATE, result); } } expensiveGoodsManager.updateExpensiveGoods_TRANS_REQUIRED(expensiveGoods); @@ -205,7 +186,7 @@ return null; } - public String loadDiposableGoods() { + public String loadExpensiveGoods() { StrutsParamUtils.getResponse().setCharacterEncoding("UTF-8"); String id = StrutsParamUtils.getPraramValue("id", ""); ExpensiveGoods expensiveGoods = null; @@ -819,15 +800,15 @@ StrutsResponseUtils.output(storages); } - public void loadExpensiveGoodsStorageRecord(){ - String expensiveGoodsId = StrutsParamUtils.getPraramValue("expensiveGoodsId", null); - String startDate = StrutsParamUtils.getPraramValue("startDate", null); - String endDate = StrutsParamUtils.getPraramValue("endData", null); - JSONObject jsonObject = expensiveGoodsStorageRecordManager.getStorageRecord( - expensiveGoodsId,startDate,endDate); - - StrutsResponseUtils.output(jsonObject); - } +// public void loadExpensiveGoodsStorageRecord(){ +// String expensiveGoodsId = StrutsParamUtils.getPraramValue("expensiveGoodsId", null); +// String startDate = StrutsParamUtils.getPraramValue("startDate", null); +// String endDate = StrutsParamUtils.getPraramValue("endData", null); +// JSONObject jsonObject = expensiveGoodsStorageRecordManager.getStorageRecord( +// expensiveGoodsId,startDate,endDate); +// +// StrutsResponseUtils.output(jsonObject); +// } /** * 根据关键字搜索一次性物品. Index: forgon-core/src/main/java/com/forgon/log/model/Log.java =================================================================== diff -u -r20390 -r20779 --- forgon-core/src/main/java/com/forgon/log/model/Log.java (.../Log.java) (revision 20390) +++ forgon-core/src/main/java/com/forgon/log/model/Log.java (.../Log.java) (revision 20779) @@ -55,6 +55,7 @@ public static final String MODEL_SYNC = "接口同步"; public static final String MODEL_PRINT = "打印"; public static final String MODEL_MATERIALDEFINITION = "材料定义"; + public static final String MODEL_EXPENSIVEGOODS = "高值耗材"; public static final String TYPE_ADD = "A";//添加 public static final String TYPE_UPDATE = "U";//修改 Index: ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/service/ExpensiveGoodsManagerImpl.java =================================================================== diff -u -r20772 -r20779 --- ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/service/ExpensiveGoodsManagerImpl.java (.../ExpensiveGoodsManagerImpl.java) (revision 20772) +++ ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/service/ExpensiveGoodsManagerImpl.java (.../ExpensiveGoodsManagerImpl.java) (revision 20779) @@ -174,7 +174,7 @@ //查出对应的一次性物品库存数据,并将最小申请数量等属性更新为与一次性物品的一致 if(DatabaseUtil.isPoIdValid(expensiveGoodss.getId())){ List list = - objectDao.findBySql(ExpensiveGoodsStock.class.getSimpleName(), " where expensiveGoodssID=" + expensiveGoodss.getId()); + objectDao.findBySql(ExpensiveGoodsStock.class.getSimpleName(), " where expensiveGoods_id=" + expensiveGoodss.getId()); if(CollectionUtils.isNotEmpty(list)){ for(ExpensiveGoodsStock expensiveGoodssStock : list){ expensiveGoodssStock.setReferencePrice(expensiveGoodss.getReferencePrice()); @@ -238,7 +238,6 @@ // 如果修改了名称或者规则,同步修改其他关联的表 String oldName = expensiveGoodss.getOrginalName(); String oldSpecification = expensiveGoodss.getOrginalSpecification(); - String oldApplicationSpecification = expensiveGoodss.getOrginalApplicationSpecification(); String newName = expensiveGoodss.getName(); String newSpecification = expensiveGoodss.getSpecification(); boolean nameChanged = false; Index: ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/dwr/table/ExpensiveGoodsTableManager.java =================================================================== diff -u -r20772 -r20779 --- ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/dwr/table/ExpensiveGoodsTableManager.java (.../ExpensiveGoodsTableManager.java) (revision 20772) +++ ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/dwr/table/ExpensiveGoodsTableManager.java (.../ExpensiveGoodsTableManager.java) (revision 20779) @@ -25,6 +25,7 @@ import com.forgon.disinfectsystem.entity.assestmanagement.DisposableGoodsBatchStock; import com.forgon.disinfectsystem.entity.assestmanagement.DisposableGoodsStock; import com.forgon.disinfectsystem.entity.assestmanagement.ExpensiveDisposablegoods; +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.systemwarning.SystemWarningItemVO; @@ -105,7 +106,7 @@ new String[] { "goodsBatchs" }); } - public String findDisposableGoodsTableList( + public String findExpensiveGoodsTableList( Map> parameterMap) { Map sqlWhereParamMap = gridManager .getParamFromView(parameterMap); @@ -129,8 +130,8 @@ sql += " and 1=1"; } return gridManager.renderGrid(parameterMap, - DisposableGoods.class.getSimpleName(), sql, - new String[] { "goodsBatchs" }); + ExpensiveGoods.class.getSimpleName(), sql, + null); } // 高值耗材使用记录 Index: ssts-web/src/main/resources/spring/applicationContext-disinfectsystem-service.xml =================================================================== diff -u -r20741 -r20779 --- ssts-web/src/main/resources/spring/applicationContext-disinfectsystem-service.xml (.../applicationContext-disinfectsystem-service.xml) (revision 20741) +++ ssts-web/src/main/resources/spring/applicationContext-disinfectsystem-service.xml (.../applicationContext-disinfectsystem-service.xml) (revision 20779) @@ -1201,7 +1201,17 @@ - + + + + + + + + + + + Index: ssts-web/src/main/webapp/disinfectsystem/assestManagement/expensiveGoods/expensiveGoodsView.js =================================================================== diff -u -r20772 -r20779 --- ssts-web/src/main/webapp/disinfectsystem/assestManagement/expensiveGoods/expensiveGoodsView.js (.../expensiveGoodsView.js) (revision 20772) +++ ssts-web/src/main/webapp/disinfectsystem/assestManagement/expensiveGoods/expensiveGoodsView.js (.../expensiveGoodsView.js) (revision 20779) @@ -1,4 +1,4 @@ -var entityName = "一次性物品"; +var entityName = "高值耗材"; var grid; var root; var formObj; @@ -34,35 +34,13 @@ data : [[STR_YES],[STR_NO]] }); - var godownEntryItemStore = new top.Ext.data.Store({ - proxy : new top.Ext.data.HttpProxy({ - url : WWWROOT + '/disinfectSystem/expensiveGoodsAction!loadDisposableGoodsBatchesByDisposableGoodsID.do?id=' + id, - method : 'POST' - }), - reader : new top.Ext.data.JsonReader({ - fields : [ - {name : 'id'}, - {name : 'barcode'}, - {name : 'storage'}, - {name : 'batchNumber'}, - {name : 'cost'}, - {name : 'expDate'}, - {name : 'sterileBatchNumber'}, - {name : 'hasPrinted'}, - {name : 'printTime'}, - {name : 'supplierName'}, - {name : 'inventorySerialNumber'} - ] - }) - }); var inventoryGoodsStore = new Ext.data.SimpleStore({ fields : [ 'value' ], data : [ ['否' ], ['是' ]] }); - var selectModel = new top.Ext.grid.CheckboxSelectionModel(); formObj = new top.Ext.FormPanel( { id : 'expensiveGoodsForm', frame : true, @@ -152,7 +130,7 @@ layout : 'form', border:true, width: 10, - items : [{//根据物资编码查找hrp一次性物品信息 + items : [{//根据物资编码查找hrp高值耗材信息 xtype: 'button', iconCls: 'icon_search', handler: getHrpDiposableGood @@ -165,25 +143,6 @@ labelWidth : 110, items : [{ xtype : 'textfield', - fieldLabel : '语音提示名称', - maxLength : '41', - id : 'ttsName', - name : 'ttsName', - allowBlank : true, - anchor : '95%', - listeners:{ - change:function(field,nV,oV){ - var value = nV.trim(); - field.setValue(value); - } - } - }] - },{ - columnWidth : 1, - layout : 'form', - labelWidth : 110, - items : [{ - xtype : 'textfield', fieldLabel : '规格', maxLength : '41', id : 'specification', @@ -197,19 +156,6 @@ labelWidth : 110, items : [{ xtype : 'textfield', - fieldLabel : '单位转换调整系数', - maxLength : '41', - id : 'unitConvertCoefficient', - name : 'unitConvertCoefficient', - allowBlank : true, - anchor : '95%' - }] - },{ - columnWidth : 1, - layout : 'form', - labelWidth : 110, - items : [{ - xtype : 'textfield', fieldLabel : '包装规格', maxLength : '41', id : 'packageSpec', @@ -223,65 +169,6 @@ labelWidth : 110, items : [{ xtype : 'combo', - fieldLabel : "类型", - valueField : 'typeName', - displayField : 'typeName', - store : diposableGooodsStore, - forceSelection : true, - editable : false, - triggerAction : 'all', - name : "type", - id : "type", - value : dType, - anchor : '95%', - listeners : { - select : function(combo , record , index){ - // 如果类型不为空,并且配置为自动增加外部编码,那么获取下一个编码,并且填上 - if(!isUndefinedOrNullOrEmpty(combo.value) && autoFillExternalCodeOfDisposableGoods){ - ExpensiveGoodsTableManager.getNextExternalCodeOfDisposableGoods(combo.value,function(externalCode){ - if(!isUndefinedOrNullOrEmpty(externalCode)){ - top.Ext.getCmp("externalCode").setValue(externalCode); - } - }); - } - } - } - }] - },{ - columnWidth : 1, - layout : 'form', - labelWidth : 110, - items : [ - isUndefinedOrNullOrEmpty(id)?{ - xtype : 'combo', - fieldLabel : "物品类型", - valueField : 'value', - displayField : 'value', - store : goodsTypeStore, - forceSelection : true, - allowBlank : false, - mode : 'local', - triggerAction : 'all', - name : "goodsType", - id : "goodsType", - anchor : '95%' - }:{ - xtype : 'textfield', - fieldLabel : "物品类型", - readOnly: true, - cls : 'fieldReadOnlyNoRemove', - allowBlank : false, - mode : 'local', - name : "goodsType", - id : "goodsType", - anchor : '95%' - }] - },{ - columnWidth : 1, - layout : 'form', - labelWidth : 110, - items : [{ - xtype : 'combo', fieldLabel : "类别", valueField : 'name', displayField : 'name', @@ -492,47 +379,7 @@ layout : 'form', labelWidth : 110, items : [{ - xtype : 'textfield', - fieldLabel : '申领单位', - maxLength : '16', - id : 'middlePackageUnit', - name : 'middlePackageUnit', - allowBlank : true, - anchor : '95%' - }] - },{ - columnWidth : 1, - layout : 'form', - labelWidth : 110, - items : [{ - xtype : 'textfield', - fieldLabel : '申领规格', - maxLength : '16', - id : 'applicationSpecification', - name : 'applicationSpecification', - allowBlank : true, - anchor : '95%' - }] - },{ - columnWidth : 1, - layout : 'form', - labelWidth : 110, - items : [{ xtype : 'numberfield', - fieldLabel : '申领单位转换单位系数', - maxLength : '16', - id : 'transferScale', - name : 'transferScale', - allowDecimals : false, - allowBlank : true, - anchor : '95%' - }] - },{ - columnWidth : 1, - layout : 'form', - labelWidth : 110, - items : [{ - xtype : 'numberfield', fieldLabel : '顺序号', maxLength : '16', id : 'sequence', @@ -565,35 +412,7 @@ ] },{ columnWidth : 0.65, - layout : 'form', - items : [ - new top.Ext.grid.GridPanel({ - id :'batchNumberGrid', - store : godownEntryItemStore , - height : 425, - width : 630, - bodyStyle : 'border:1px solid #afd7af', - sm : selectModel, - cm : new top.Ext.grid.ColumnModel([selectModel, - {header : "id",dataIndex : 'id',hidden : true}, - {header : "条码",width : 80,dataIndex : 'barcode',menuDisabled:true}, - {header : "批次",width : 80,dataIndex : 'batchNumber',menuDisabled:true}, - {header : "价格",width : 50,dataIndex : 'cost',menuDisabled:true}, - {header : "失效期",width : 90,dataIndex : 'expDate',renderer:myDateFormat,menuDisabled:true}, - {header : "灭菌批号",width : 90,dataIndex : 'sterileBatchNumber'}, - {header : "是否打印",width : 70,dataIndex : 'hasPrinted',menuDisabled:true}, - {header : "打印时间",width : 90,dataIndex : 'printTime',renderer:myDateFormat,menuDisabled:true}, - {id:'supplierName',header : "供应商",width : 130,dataIndex : 'supplierName',menuDisabled:true} - ]), - autoExpandColumn : 'supplierName', - frame : false, - viewConfig: {forceFit:true}, - title : '批次列表' - }) - ] - },{ - columnWidth : 0.65, - title: 'Hrp一次性物品数据', + title: 'Hrp高值耗材数据', id :'hrpContrastDefinition', hidden:true, height : 130, @@ -669,43 +488,6 @@ handler : function() { formWindow.close(); } - },{ - id : 'print', - text : '打印批次', - handler : function() { - var items = null; - var records = top.Ext.getCmp('batchNumberGrid').getSelectionModel().getSelections(); - if (records.length == 0) { - showResult("请选择要打印的批次!"); - return false; - } - var goodsName = top.Ext.getCmp('name').getValue(); - - for ( var i = 0, len = records.length; i < len; i++) { - if(items == null){ - items = records[i].data.id; - }else { - items += ',' + records[i].data.id; - } - } - top.Ext.getCmp("items").setValue(items); - formObj.form.submit({ - url : WWWROOT + '/disinfectSystem/expensiveGoodsAction!printExpensiveGoods.do', - method : 'POST', - waitMsg : '正在保存数据,请稍候', - waitTitle : '提交表单', - success : function(form, action) { - window.close(); - grid.dwrReload(); - //打印条码 - printBarcode(action.result.barcode); - - }, - failure : function(form, action) { - showResult(action.result.message); - } - }); - } }] }); @@ -716,7 +498,7 @@ formWindow = new top.Ext.Window( { id : 'expensiveGoodsWin', layout : 'fit', - title : '一次性物品信息', + title : '高值耗材信息', width : 980, // height : 620, height : top.screen.height > 800 ? 660 : 500, @@ -736,9 +518,6 @@ } }); } - if(id != 0){ - godownEntryItemStore.load(); - } } function printAmount() { @@ -806,65 +585,40 @@ }); } function validateAndSubmit(){ - Ext.Ajax.request({ - url : WWWROOT + '/disinfectSystem/expensiveGoodsAction!validate.do', - params : { - validateId : top.Ext.getCmp('id').getValue(), - valifateName:top.Ext.getCmp('name').getValue(), - specification:top.Ext.getCmp('specification').getValue() - }, - success : function(response, options) { - var result = Ext.decode(response.responseText); - if(result.stauts==1){ -// var originalGoodsType = top.Ext.getCmp("originalGoodsType").getValue(); -// var goodsType = top.Ext.getCmp("goodsType").getValue(); - var orginalName = top.Ext.getCmp("orginalName").getValue(); - var orginalSpecification = top.Ext.getCmp("orginalSpecification").getValue(); - var orginalApplicationSpecification = top.Ext.getCmp("orginalApplicationSpecification").getValue(); - var name = top.Ext.getCmp("name").getValue(); - var specification = top.Ext.getCmp("specification").getValue(); - var applicationSpecification = top.Ext.getCmp("applicationSpecification").getValue(); - var msg = ''; - var id = top.Ext.getCmp('id').getValue(); - // 规格不为空且和申领规格相等,提示 - if( !isUndefinedOrNullOrEmpty(specification) && stringLooksEquals(specification,applicationSpecification)){ - msg = "是否确定规格和申领规格相同?"; - } - if(id != null && id != ''){ - if(!stringLooksEquals(orginalName,name) && (!stringLooksEquals(orginalSpecification,specification) || !stringLooksEquals(orginalApplicationSpecification,applicationSpecification))){ - msg = "是否确定修改一次性物品名称和规格?" - }else if(!stringLooksEquals(orginalName,name)){ - msg = "是否确定修改一次性物品名称?" - }else if(!stringLooksEquals(orginalSpecification,specification) || !stringLooksEquals(orginalApplicationSpecification,applicationSpecification)){ - msg = "是否确定修改一次性物品规格?" - } - } - -// if(!stringLooksEquals(originalGoodsType,goodsType)){ -// msg += "是否确定更改物品类型?" -// } - if(msg == ''){ +// var originalGoodsType = top.Ext.getCmp("originalGoodsType").getValue(); +// var goodsType = top.Ext.getCmp("goodsType").getValue(); + var orginalName = top.Ext.getCmp("orginalName").getValue(); + var orginalSpecification = top.Ext.getCmp("orginalSpecification").getValue(); + var name = top.Ext.getCmp("name").getValue(); + var specification = top.Ext.getCmp("specification").getValue(); + var msg = ''; + var id = top.Ext.getCmp('id').getValue(); + + if(id != null && id != ''){ + if(!stringLooksEquals(orginalName,name) && (!stringLooksEquals(orginalSpecification,specification))){ + msg = "是否确定修改名称和规格?" + }else if(!stringLooksEquals(orginalName,name)){ + msg = "是否确定修改高值耗材名称?" + }else if(!stringLooksEquals(orginalSpecification,specification)){ + msg = "是否确定修改高值耗材规格?" + } + } + +// if(!stringLooksEquals(originalGoodsType,goodsType)){ +// msg += "是否确定更改物品类型?" +// } + if(msg == ''){ + submitForSaveDisposableGoods(); + return; + } + top.Ext.MessageBox.confirm("请确认",msg, + function(button, text) { + if ("yes" == button){ submitForSaveDisposableGoods(); - return; + }else{ + top.Ext.getCmp('saveBtn').enable(); } - top.Ext.MessageBox.confirm("请确认",msg, - function(button, text) { - if ("yes" == button){ - submitForSaveDisposableGoods(); - }else{ - top.Ext.getCmp('saveBtn').enable(); - } - }); - }else{ - showResult(result.message); - top.Ext.getCmp('saveBtn').enable(); - } - }, - failure : function(response, options) { - var result = Ext.decode(response.responseText); - showResult(result.cause); - } - }); + }); } function save(){ @@ -873,17 +627,6 @@ showResult('请正确填写表单各值'); return false; } - var unitConvertCoefficient = top.Ext.getCmp('unitConvertCoefficient').getValue(); - if(unitConvertCoefficient != null && unitConvertCoefficient != ""){ - if(unitConvertCoefficient <= 0){ - showResult("单位转换调整系数必须大于0!"); - top.Ext.getCmp('unitConvertCoefficient').setValue(""); - top.Ext.getCmp('unitConvertCoefficient').focus(); - return false; - } - } - var transferScale = top.Ext.getCmp('transferScale').getValue(); - var max = top.Ext.getCmp('maxStorage').getValue(); var min = top.Ext.getCmp('minStorage').getValue(); var minApply = top.Ext.getCmp('minApplyAmount').getValue(); @@ -900,14 +643,6 @@ return false; } } - var middlePackageUnit = top.Ext.getCmp('middlePackageUnit').getValue(); - var applicationSpecification = top.Ext.getCmp("applicationSpecification").getValue(); - if ( !((isUndefinedOrNullOrEmpty(middlePackageUnit) && isUndefinedOrNullOrEmpty(transferScale) && isUndefinedOrNullOrEmpty(applicationSpecification)) || - (!isUndefinedOrNullOrEmpty(middlePackageUnit) && !isUndefinedOrNullOrEmpty(transferScale) && !isUndefinedOrNullOrEmpty(applicationSpecification)) - )){ - showResult('申领规格、申领单位和申领单位转换单位系数必须同时有值或者同时为空,且转换系数大于0!'); - return false; - } this.disable(); validateAndSubmit(); @@ -950,48 +685,19 @@ function onStorageRecordDetail(grid){ var records = grid.getSelectionModel().getSelections(); if(records.length == 0){ - showResult("请选择一次性物品"); + showResult("请选择高值耗材"); return; } if(records.length != 1){ - showResult("只能选择一个一次性物品"); + showResult("只能选择一个高值耗材"); return; } var storageRecord = new StorageRecord(); storageRecord.setDisposableGoodsId(records[0].data['id']); storageRecord.showDetail(); } -//打印批次条码 -function printBatchStockBarcode(grid){ - var records = grid.getSelectionModel().getSelections(); - if(records.length == 0){ - showResult("请选择要打印批次条码的物品"); - }else{ - var ids = ""; - for(var i = 0,len=records.length;i 1) { - showResult("一次只能修改一个一次性物品!"); + showResult("一次只能修改一个高值耗材!"); return false; } id = records[0].data['id']; @@ -1077,10 +783,8 @@ params : {id : id}, success : function(form, action) { var expensiveGoods = action.result.data; - top.Ext.getCmp("originalGoodsType").setValue(expensiveGoods.goodsType); top.Ext.getCmp("orginalName").setValue(expensiveGoods.name); top.Ext.getCmp("orginalSpecification").setValue(expensiveGoods.specification); - top.Ext.getCmp("orginalApplicationSpecification").setValue(expensiveGoods.applicationSpecification); }, failure : function(form, action) { } @@ -1107,7 +811,7 @@ return "" + v + ""; } -//hrp一次性物品信息 +//hrp高值耗材信息 function getHrpDiposableGood(){ var inventorySerialNumber = top.Ext.getCmp('inventorySerialNumber').getValue(); if(!inventorySerialNumber){ @@ -1128,7 +832,7 @@ top.Ext.getCmp("hrpCost").setValue(data.cost); top.Ext.getCmp("hrpContrastDefinition").show(); } else { - showResult("没有该物资编码对应的hrp一次性物品信息"); + showResult("没有该物资编码对应的hrp高值耗材信息"); } }else{ showResult("后台异常,请联系系统管理!"); @@ -1142,7 +846,7 @@ //********* 1、Tree *********** root = new Ext.tree.AsyncTreeNode({ - text:'一次性物品类型', + text:'高值耗材类型', id:'0', draggable:false, listeners:{ @@ -1159,16 +863,13 @@ {header : "编码",width : 60,dataIndex : 'externalCode'}, {header : "名称",width : 150,dataIndex : 'name', renderer : rendeColor}, {header : "规格",width : 100,dataIndex : 'specification'}, - {header : "类型",width : 80,dataIndex : 'type'}, {header : "类别",width : 80,dataIndex : 'grade'}, {header : "包装规格",width : 80,dataIndex : 'packageSpec'}, {header : "参考价",width : 60,dataIndex : 'referencePrice'}, {header : "总数",width : 50,dataIndex : 'amount',hidden:true}, {header : "最小申请数量",width : 80,dataIndex : 'minApplyAmount'}, {header : "最大申请数量",width : 80,dataIndex : 'maxApplyAmount'}, {header : "单位",width : 50,dataIndex : 'unit'}, - {header : "申领单位",width : 90,dataIndex : 'middlePackageUnit'}, - {header : "申领单位转换单位系数",width : 90,dataIndex : 'transferScale'}, {header : "顺序号",width : 50,dataIndex : 'sequence'}, {header : "拼音码",width : 90,dataIndex : 'spelling'}, {header : "五笔码",width : 90,dataIndex : 'wbCode'}, @@ -1185,15 +886,12 @@ {name : 'name'}, {name : 'externalCode'}, {name : 'specification'}, - {name : 'type'}, {name : 'grade'}, {name : 'packageSpec'}, {name : 'amount'}, {name : 'minApplyAmount'}, {name : 'maxApplyAmount'}, {name : 'unit'}, - {name : 'middlePackageUnit'}, - {name : 'transferScale'}, {name : 'sequence'}, {name : 'minStorage'}, {name : 'maxStorage'}, @@ -1213,8 +911,6 @@ {type: 'numeric', dataIndex: 'minApplyAmount'}, {type: 'numeric', dataIndex: 'maxApplyAmount'}, {type: 'string', dataIndex: 'unit'}, - {type: 'string', dataIndex: 'middlePackageUnit'}, - {type: 'numeric', dataIndex: 'transferScale'}, {type: 'numeric', dataIndex: 'sequence'}, {type: 'numeric', dataIndex: 'minStorage'}, {type: 'numeric', dataIndex: 'maxStorage'}, @@ -1229,14 +925,14 @@ var tbar = [ { text : '添加', - hidden : SSTS_ExpensiveGoods_Create, +// hidden : SSTS_ExpensiveGoods_Create, iconCls : 'btn_ext_application_add', handler : function() { addExpensiveGoods(0); } }, '-', { text : '修改', - hidden : SSTS_ExpensiveGoods_Update, +// hidden : SSTS_ExpensiveGoods_Update, iconCls : 'btn_ext_application_edit', id : 'editTbar', handler : function() { @@ -1251,20 +947,14 @@ } },'-',{ text : '出入库记录', + hidden: true, iconCls : 'btn_ext_refresh', handler : function(){ onStorageRecordDetail(grid); } }, '-' , { - text : '打印批次', - hidden : false, - iconCls : 'icon_print', - handler : function(){ - printBatchStockBarcode(grid); - } - }, '-' , { text : '打印高值耗材', - hidden : false, + hidden: true, iconCls : 'icon_print', handler : function(){ printExpensiveDisposableGoodsBarcode(grid); @@ -1278,15 +968,15 @@ ExpensiveGoodsTableManager.updateOldData(function(msg){showResult(msg);}); } }, '-' , { - //将属于供应室领用的一次性物品进行分类 + //将属于供应室领用的高值耗材进行分类 text : '分类供应室领用类型', hadden : false, handler : function() { ExpensiveGoodsTableManager.updateSupplyRoomExpensiveGoodsType(function(msg){showResult('更新成功,请刷新页面')}); } } , '-' , { - text : '导出一次性物品库存', + text : '导出高值耗材库存', handler : function() { window.location.href = WWWROOT+"/disinfectsystem/reportforms/expensiveGoodsStorageReportExportForm.jsp"; } @@ -1303,7 +993,7 @@ ExpensiveGoodsTableManager.updateOldData(function(msg){showResult(msg);}); } }, '-', { - text : '导入一次性物品库存EXCEL', + text : '导入高值耗材库存EXCEL', hidden : false, handler : function() { location.href = WWWROOT @@ -1317,7 +1007,7 @@ tbar : tbar, pageSize : 20, defaultSortField : 'externalCode', - title : '一次性物品列表', + title : '高值耗材列表', defaultSortDirection : 'ASC', isCheckboxSelectionModel : true, rememberSelected : false, @@ -1328,7 +1018,7 @@ renderTo : 'gridDiv', frame : false }, readerDetail, - ExpensiveGoodsTableManager.findDisposableGoodsTableList, + ExpensiveGoodsTableManager.findExpensiveGoodsTableList, null );