Index: ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/service/ExpensiveGoodsManagerImpl.java =================================================================== diff -u -r22010 -r22094 --- ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/service/ExpensiveGoodsManagerImpl.java (.../ExpensiveGoodsManagerImpl.java) (revision 22010) +++ ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/service/ExpensiveGoodsManagerImpl.java (.../ExpensiveGoodsManagerImpl.java) (revision 22094) @@ -11,6 +11,7 @@ import java.util.Date; import java.util.HashMap; import java.util.HashSet; +import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Set; @@ -99,6 +100,7 @@ import com.forgon.tools.excel.ParerUtils; import com.forgon.tools.format.FormatString; import com.forgon.tools.hibernate.BasePoManagerImpl; +import com.forgon.tools.json.JSONUtil; import com.forgon.tools.string.StringTools; import com.forgon.tools.util.SqlUtils; import com.forgon.disinfectsystem.entity.expensivegoods.ExpensiveGoodsAuthorization; @@ -186,29 +188,63 @@ * 保存高值耗材定义 */ @Override - public void save(ExpensiveGoods expensiveGoodss) { - expensiveGoodss.setSpelling(GB2Alpha.string2Alpha(expensiveGoodss.getName())); - expensiveGoodss.setWbCode(GB2WB.getWBCode(expensiveGoodss.getName())); + public void save(ExpensiveGoods expensiveGoods) { + expensiveGoods.setSpelling(GB2Alpha.string2Alpha(expensiveGoods.getName())); + expensiveGoods.setWbCode(GB2WB.getWBCode(expensiveGoods.getName())); // 处理“” - if (StringUtils.isBlank(expensiveGoodss.getSpecification())) { - expensiveGoodss.setSpecification(null); + if (StringUtils.isBlank(expensiveGoods.getSpecification())) { + expensiveGoods.setSpecification(null); } + + createDefaultModel(expensiveGoods); + + //如果是新建的model,则添加barcode + Iterator it = expensiveGoods.getExpensiveGoodsModelList().iterator(); + while(it.hasNext()){ + ExpensiveGoodsModel expensiveGoodsModel = it.next(); + if(expensiveGoodsModel.getBarcode() == null){ //新建的model + String barcode = serialNumManager + .getSerialNumberStr(SerialNum.TYPE_BARCODE); + expensiveGoodsModel.setBarcode(barcode); + } + } + + //查出对应的一次性物品库存数据,并将最小申请数量等属性更新为与一次性物品的一致 // 更新ExpensiveGoodsStock的属性 - if(DatabaseUtil.isPoIdValid(expensiveGoodss.getId())){ - List expensiveGoodssStockList = getExpensiveGoodsStockByExpensiveGoodsId(expensiveGoodss.getId()); + if(DatabaseUtil.isPoIdValid(expensiveGoods.getId())){ + List expensiveGoodssStockList = getExpensiveGoodsStockByExpensiveGoodsId(expensiveGoods.getId()); if(CollectionUtils.isNotEmpty(expensiveGoodssStockList)){ for(ExpensiveGoodsStock expensiveGoodssStock : expensiveGoodssStockList){ - updateExpensiveGoodsStockProperties(expensiveGoodssStock, expensiveGoodss); + updateExpensiveGoodsStockProperties(expensiveGoodssStock, expensiveGoods); objectDao.saveOrUpdate(expensiveGoodssStock); } } + } + objectDao.saveOrUpdate(expensiveGoods); + } + + /** + * 查找在model集合中,对应于modelId的对象,如果没有,则返回null + * @param toList 查找的集合范围 + * @param modelId 被查找的model的id + * @return + */ + private ExpensiveGoodsModel existModel(List toList,Long modelId){ + Iterator it = toList.iterator(); + while(it.hasNext()){ + ExpensiveGoodsModel expensiveGoodsModel = it.next(); + Long id = expensiveGoodsModel.getId(); + if(id == null || id == 0){ + return null; + } + if(modelId.equals(id)){ + return expensiveGoodsModel; + } } - // 创建空的型号 - objectDao.saveOrUpdate(expensiveGoodss); - createDefaultModel(expensiveGoodss); + return null; } private void createDefaultModel(ExpensiveGoods expensiveGoods){ @@ -219,8 +255,9 @@ .getSerialNumberStr(SerialNum.TYPE_BARCODE); expensiveGoodsModel.setBarcode(barcode); expensiveGoodsModel.setExpensiveGoods(expensiveGoods); - expensiveGoodsModel.setManufacturer(expensiveGoods.getManufacturer(objectDao)); - objectDao.save(expensiveGoodsModel); +// expensiveGoodsModel.setManufacturer(expensiveGoods.getManufacturer(objectDao)); +// objectDao.save(expensiveGoodsModel); + expensiveGoods.getExpensiveGoodsModelList().add(expensiveGoodsModel); } } @@ -256,8 +293,43 @@ curExpensiveGoods.setChargeCode(expensiveGoodss.getChargeCode()); curExpensiveGoods.setPlatformCode(expensiveGoodss.getPlatformCode()); curExpensiveGoods.setIsImplant(expensiveGoodss.getIsImplant()); + //复制脱离对象拥有的型号到持久化对象中 + copyEnpensiveGoodsModelList(curExpensiveGoods,expensiveGoodss); } + private void copyEnpensiveGoodsModelList( + ExpensiveGoods curExpensiveGoods, + ExpensiveGoods expensiveGoods) { + + //处理删除的model + Iterator it = curExpensiveGoods.getExpensiveGoodsModelList().iterator(); + while(it.hasNext()){ + ExpensiveGoodsModel curexpensiveGoodsModel = it.next(); + ExpensiveGoodsModel expensiveGoodsModel = existModel(expensiveGoods.getExpensiveGoodsModelList(),curexpensiveGoodsModel.getId()); + if(expensiveGoodsModel == null){ + it.remove(); + } + } + + //处理新添加和修改的model + it = expensiveGoods.getExpensiveGoodsModelList().iterator(); + while(it.hasNext()){ + ExpensiveGoodsModel expensiveGoodsModel = it.next(); + if(expensiveGoodsModel.getId() == null || expensiveGoodsModel.getId() == 0L){ //新添加 + String barcode = serialNumManager + .getSerialNumberStr(SerialNum.TYPE_BARCODE); + expensiveGoodsModel.setBarcode(barcode); + expensiveGoodsModel.setExpensiveGoods(curExpensiveGoods); + curExpensiveGoods.getExpensiveGoodsModelList().add(expensiveGoodsModel); + }else{ + ExpensiveGoodsModel curExpensiveGoodsModel = existModel(curExpensiveGoods.getExpensiveGoodsModelList(),expensiveGoodsModel.getId()); + curExpensiveGoodsModel.setModel(expensiveGoodsModel.getModel()); + curExpensiveGoodsModel.setDescription(expensiveGoodsModel.getDescription()); + curExpensiveGoodsModel.setSurfaceStatus(expensiveGoodsModel.getSurfaceStatus()); + } + } + } + /** * 更新一次性物品批次库存的属性. * @param curExpensiveGoods @@ -2287,5 +2359,48 @@ } return authorization; } + + @Override + public void setExpensiveGoodsModelListbyJSONString( + String jsonString, ExpensiveGoods expensiveGoods) { + JSONArray modelArray = JSONArray.fromObject(jsonString); + List modelList = new ArrayList(); + for(int i=0;i it = expensiveGoods.getExpensiveGoodsModelList().iterator(); + while(it.hasNext()){ + JSONObject jsonObject = new JSONObject(); + ExpensiveGoodsModel expensiveGoodsModel = it.next(); + jsonObject.put("id", expensiveGoodsModel.getId()); + jsonObject.put("expensiveGoodsModel", expensiveGoodsModel.getModel()); + jsonObject.put("expensiveGoodsModelDescription", expensiveGoodsModel.getDescription()); + jsonObject.put("expensiveGoodsModelSurfaceStatus", expensiveGoodsModel.getSurfaceStatus()); + jsonArray.add(jsonObject); + } + return jsonArray.toString(); + } + } Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/assestmanagement/ExpensiveGoods.java =================================================================== diff -u -r22016 -r22094 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/assestmanagement/ExpensiveGoods.java (.../ExpensiveGoods.java) (revision 22016) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/assestmanagement/ExpensiveGoods.java (.../ExpensiveGoods.java) (revision 22094) @@ -6,11 +6,14 @@ import java.util.List; import java.util.Map; +import javax.persistence.CascadeType; import javax.persistence.Column; import javax.persistence.Entity; +import javax.persistence.FetchType; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; +import javax.persistence.OneToMany; import javax.persistence.Transient; import org.apache.commons.lang.StringUtils; @@ -219,6 +222,11 @@ * 是否植入物 */ private String isImplant = Constants.STR_NO; + /** + * 型号列表 + */ + @JsonIgnore + private List expensiveGoodsModelList = new ArrayList(); @JsonIgnore public static Map ColumnNameAndPoPropertyNameMap = new LinkedHashMap( @@ -719,6 +727,14 @@ return null; } + @OneToMany(mappedBy = "expensiveGoods", fetch = FetchType.LAZY, cascade = {CascadeType.ALL}) + public List getExpensiveGoodsModelList() { + return expensiveGoodsModelList; + } + + public void setExpensiveGoodsModelList(List expensiveGoodsModelList){ + this.expensiveGoodsModelList = expensiveGoodsModelList; + } /** * 获取型号 * @return List Index: ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/action/ExpensiveGoodsAction.java =================================================================== diff -u -r22027 -r22094 --- ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/action/ExpensiveGoodsAction.java (.../ExpensiveGoodsAction.java) (revision 22027) +++ ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/action/ExpensiveGoodsAction.java (.../ExpensiveGoodsAction.java) (revision 22094) @@ -2,6 +2,7 @@ import java.io.IOException; import java.io.PrintWriter; +import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Map; @@ -219,7 +220,8 @@ // 保存高值耗材定义 - public String saveExpensiveGoods() { + public String saveExpensiveGoods() { + JSONObject obj = new JSONObject(); obj.put("success", true); try { @@ -240,6 +242,11 @@ // 设置五笔码 expensiveGoods.setWbCode(GB2WB.getWBCode(expensiveGoods.getName())); expensiveGoods.setNotInventoryGoods(StrutsParamUtils.getPraramValue("isInventoryGoods", "")); + + //获取型号列表 + String expensiveGoodsModelLists = StrutsParamUtils.getPraramValue("expensiveGoodsModelLists",""); + expensiveGoodsManager.setExpensiveGoodsModelListbyJSONString(expensiveGoodsModelLists,expensiveGoods); + if(DatabaseUtil.isPoIdValid(expensiveGoods.getId())){ ExpensiveGoods origineDG = expensiveGoodsManager.getExpensiveGoodsById_ForUpdate(expensiveGoods.getId().toString()); // 记录日志 @@ -281,6 +288,7 @@ if(expensiveGoods == null){ expensiveGoods = new ExpensiveGoods(); } + RegistrationCertification registrationCertification = expensiveGoods.getRegistrationCertification(objectDao); ExpensiveGoodsSupplier expensiveGoodsSupplier = null; @@ -291,7 +299,11 @@ return null; } }); + jsonConfig.setExcludes(new String[]{"expensiveGoodsModelList"}); JSONObject expensiveGoodsObj = JSONObject.fromObject(expensiveGoods,jsonConfig); + +// String[] excludeProperties = {"expensiveGoodsModelList"}; +// JSONObject expensiveGoodsObj = JSONUtil.toJSONStringEx(expensiveGoods, true, excludeProperties); // JSONObject expensiveGoodsObj = JSONObject.fromObject(expensiveGoods); if(registrationCertification != null){ expensiveGoodsSupplier = registrationCertification.getExpensiveGoodsSupplier(); @@ -301,6 +313,9 @@ expensiveGoodsObj.put("expensiveGoodsSupplierId",expensiveGoodsSupplier.getId()); } } + String modelListJSONString = expensiveGoodsManager.getJSONStringOfModelList(expensiveGoods); + expensiveGoodsObj.put("expensiveGoodsModelLists",modelListJSONString); + JSONObject map = new JSONObject(); map.put("success", true); map.put("data", expensiveGoodsObj); Index: ssts-web/src/main/webapp/disinfectsystem/assestManagement/expensiveGoods/expensiveGoodsView.js =================================================================== diff -u -r22010 -r22094 --- ssts-web/src/main/webapp/disinfectsystem/assestManagement/expensiveGoods/expensiveGoodsView.js (.../expensiveGoodsView.js) (revision 22010) +++ ssts-web/src/main/webapp/disinfectsystem/assestManagement/expensiveGoods/expensiveGoodsView.js (.../expensiveGoodsView.js) (revision 22094) @@ -9,8 +9,24 @@ var registrationCertificationBatchNumStore = null; var batchRecord = null; +var expensiveGoodsModelStoreRecord = null; var selCertification = null; +var expensiveGoodsModelColumnModel = null; +//高值耗材型号store +var expensiveGoodsModelStore = new top.Ext.data.Store({ + reader : new Ext.data.JsonReader({ + fields : [ + {name : 'id'}, + {name : 'expensiveGoodsModel'}, + {name : 'expensiveGoodsModelDescription'}, + {name : 'expensiveGoodsModelSurfaceStatus'} + ] + }) +}); + + + //根据厂家id来查询对应的注册证号,并填入 function fillCertificationsByExpensiveGoodsSupplierId(expensiveGoodsSupplierId){ if(isUndefinedOrNullOrEmpty(expensiveGoodsSupplierId)) @@ -25,6 +41,31 @@ }); } +//根据高值耗材id来查询对应的型号,并填入 +function fillModelByExpensiveGoodsId(expensiveGoodsModelList){ + if(isUndefinedOrNullOrEmpty(expensiveGoodsModelList)) + return false; + expensiveGoodsModelStore.removeAll(); +// var Models = top.Ext4.JSON.decode(expensiveGoodsModelList); + for(var i = 0;i 0){ +// setBatchNumbers(batches,true); +// } +// }); +} + function addExpensiveGoods(id) { autoFillExternalCodeOfDisposableGoods = getBoolValueFromJs('sstsConfig.autoFillExternalCodeOfDisposableGoods',autoFillExternalCodeOfDisposableGoods); var dType = document.getElementById("parm_s_type").value; @@ -33,6 +74,65 @@ url : WWWROOT + '/disinfectSystem/expensiveGoodsAction!getExpensiveGoodsType.do' }); + + function newRow(){ + var n = top.Ext.getCmp('expensiveGoodsModelGirdId').getStore().getCount();// 获得总行数 + var p = new expensiveGoodsModelStoreRecord({ + expensiveGoodsModel : '', + expensiveGoodsModelDescription : '', + expensiveGoodsModelSurfaceStatus : '' + }); + top.Ext.getCmp('expensiveGoodsModelGirdId').stopEditing();// 停止编辑 + expensiveGoodsModelStore.add(p);// 插入到最后一行 + top.Ext.getCmp('expensiveGoodsModelGirdId').startEditing(n, 0);// 开始编辑0单元格 + } + + + expensiveGoodsModelColumnModel = new top.Ext.grid.ColumnModel([ + { + header : '型号规格', + dataIndex : 'expensiveGoodsModel', + width : 60, + editor : new top.Ext.form.TextField({ + allowBlank : false, + listeners : { + change : function(textField, newValue, oldValue) { + var rowIndex = top.Ext.getCmp('expensiveGoodsModelGirdId').getStore().getCount();//grid的行数 + var configStore = top.Ext.getCmp('expensiveGoodsModelGirdId').getStore(); + var judge = []; + for(var i =0 ;i < rowIndex ; i++ ){ + var electRecord = configStore.getAt(i); + var certification = configStore.getAt(i).data.expensiveGoodsModel; + var type = configStore.getAt(i).data.type; + if(certification != ''){ + if(judge.contains(newValue)){ + showResult('已包含相同型号:'+ newValue +',不可重复添加!'); + judge.splice(0,judge.length); //数组清空 + textField.setValue(oldValue); + return false; + }else{ + judge.push(electRecord.get('expensiveGoodsModel')); + } + } + } + } + } + }) + },{ + header : '说明', + dataIndex : 'expensiveGoodsModelDescription', + width : 60, + editor : new top.Ext.form.TextField() + },{ + header : '表面状态', + dataIndex : 'expensiveGoodsModelSurfaceStatus', + width : 60, + editor : new top.Ext.form.TextField() + } + ]); + + + //能否作为器械包材料 var isPartOfTousseMaterialStore = new Ext.data.SimpleStore( { fields : [ 'value'], @@ -60,6 +160,7 @@ fields : [ 'value' ], data : [ ['否' ], ['是' ]] }); + supplierStore = new Ext.data.Store({ pageSize : 100, proxy : new Ext.data.HttpProxy({ @@ -75,7 +176,7 @@ ]) }); - + //注册证store registrationCertificationBatchNumStore = new Ext.data.Store({ reader : new Ext.data.JsonReader({ fields : [ @@ -87,6 +188,21 @@ }) }); + + expensiveGoodsModelStoreRecord = Ext.data.Record.create([ + {name : 'id'}, + {name : 'expensiveGoodsModel'}, + {name : 'expensiveGoodsModelDescription'}, + {name : 'expensiveGoodsModelSurfaceStatus'} + ]); + +// var modelrecord = new expensiveGoodsModelStoreRecord({id: 1,expensiveGoodsModel: 'name1',expensiveGoodsModelDescription:'description1',expensiveGoodsModelSurfaceStatus:'status1'}); +// var modelrecord1 = new expensiveGoodsModelStoreRecord({id: 1,expensiveGoodsModel: 'name2',expensiveGoodsModelDescription:'description2',expensiveGoodsModelSurfaceStatus:'status2'}); +// var modelrecord2 = new expensiveGoodsModelStoreRecord({id: 1,expensiveGoodsModel: 'name3',expensiveGoodsModelDescription:'description3',expensiveGoodsModelSurfaceStatus:'status3'}); +// expensiveGoodsModelStore.add(modelrecord); +// expensiveGoodsModelStore.add(modelrecord1); +// expensiveGoodsModelStore.add(modelrecord2); + batchRecord = Ext.data.Record.create([ {name : 'id'}, {name : 'certification'} @@ -99,13 +215,13 @@ labelAlign:'right', labelSeparator : ':', bodyStyle : 'padding:5px 5px 0px 5px', - // autoHeight : true, +// autoHeight : true, height : 350, // autoScroll : true, items:[{ layout : 'column', items : [{ - columnWidth : 0.5, + columnWidth : 0.3, layout : 'form', labelWidth : 70, items : [{ @@ -421,7 +537,7 @@ }] }] },{ - columnWidth : 0.5, + columnWidth : 0.3, // title: 'Hrp高值耗材数据', id :'hrpContrastDefinition', // hidden:true, @@ -636,7 +752,56 @@ } ] }] - }] + } + ,{ + columnWidth : 0.4, + layout : 'column', + // labelWidth : 70, + items : [{ + id : 'expensiveGoodsModelGirdId', + columnWidth : 1, + height: 400, + frame : false, + xtype : 'editorgrid', + store : expensiveGoodsModelStore, + title : "型号列表", + viewConfig: {forceFit:true}, + selModel : new top.Ext.grid.RowSelectionModel({ + singleSelect : false + }), + colModel : expensiveGoodsModelColumnModel, + tbar : [{ + text : '新增', + width : 70 , + iconCls : 'btn_ext_add', + handler : function() { + newRow(); + } + }, { + text : '删除', + iconCls : 'btn_remove', + handler : function() { + var selectModel = top.Ext.getCmp('expensiveGoodsModelGirdId').getSelectionModel(); + var rows = selectModel.getSelections();// 返回值为 Record 数组 + if (rows.length == 0) { + showResult('最少选择一条信息,进行删除!'); + } else { + top.Ext.MessageBox.confirm('提示框', '您确定要进行该操作?', function(btn) { + if (btn == 'yes') { + if (rows) { + for ( var i = 0; i < rows.length; i++) { + expensiveGoodsModelStore.remove(rows[i]); + selectModel.selectPrevious(true); + } + } + } + }); + } + } + }] //tbar + }] + } + ] }], buttons : [{ @@ -660,7 +825,7 @@ id : 'expensiveGoodsWin', layout : 'fit', title : '高值耗材信息', - width : 700, + width : 1000, // height : 620, height : top.screen.height > 800 ? 420 : 420, modal : true, @@ -738,9 +903,15 @@ } function submitForSaveExpensiveGoods(){ + + var lstAddRecord=new Array(); + expensiveGoodsModelStore.each(function(record) { + lstAddRecord.push(record.data); + }); formObj.form.submit( { url : WWWROOT + '/disinfectSystem/expensiveGoodsAction!saveExpensiveGoods.do', method : 'POST', + params:{expensiveGoodsModelLists:top.Ext4.JSON.encode(lstAddRecord)}, waitMsg : '正在保存数据,请稍候', waitTitle : '提交表单', success : function(form, action) { @@ -964,6 +1135,7 @@ top.Ext.getCmp("orginalSpecification").setValue(expensiveGoods.specification); var expensiveGoodsSupplierId = top.Ext.getCmp("expensiveGoodsSupplierId").getValue(); fillCertificationsByExpensiveGoodsSupplierId(expensiveGoodsSupplierId); + fillModelByExpensiveGoodsId(expensiveGoods.expensiveGoodsModelLists); // top.Ext.getCmp("registrationCertification").setValue(expensiveGoods.registrationCertification); // top.Ext.getCmp("manufactor").setValue(expensiveGoods.expensiveGoodsSupplier); }, Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/expensivegoods/ExpensiveGoodsModel.java =================================================================== diff -u -r21468 -r22094 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/expensivegoods/ExpensiveGoodsModel.java (.../ExpensiveGoodsModel.java) (revision 21468) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/expensivegoods/ExpensiveGoodsModel.java (.../ExpensiveGoodsModel.java) (revision 22094) @@ -5,6 +5,7 @@ import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; +import com.fasterxml.jackson.annotation.JsonIgnore; import com.forgon.directory.model.BarcodeDevice; import com.forgon.disinfectsystem.entity.assestmanagement.ExpensiveGoods; @@ -15,11 +16,24 @@ @Entity public class ExpensiveGoodsModel extends BarcodeDevice { +// @JsonIgnore private ExpensiveGoods expensiveGoods; + /** + * 型号规格 + */ private String model; + + /** + * 描述 + */ + private String description; /** + * 表面状态 + */ + private String surfaceStatus; + /** * 供应商 */ private String supplierName; @@ -33,7 +47,8 @@ setType(BarcodeDevice.BARCODE_TYPE_EXPENSIVEGOODS_Model); } - @ManyToOne(cascade = CascadeType.REFRESH) +// @ManyToOne(cascade = CascadeType.REFRESH) + @ManyToOne @JoinColumn(name = "expensiveGoods_id", referencedColumnName = "id") public ExpensiveGoods getExpensiveGoods() { return expensiveGoods; @@ -67,4 +82,20 @@ this.manufacturer = manufacturer; } + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public String getSurfaceStatus() { + return surfaceStatus; + } + + public void setSurfaceStatus(String surfaceStatus) { + this.surfaceStatus = surfaceStatus; + } + } Index: ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/service/ExpensiveGoodsManager.java =================================================================== diff -u -r22010 -r22094 --- ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/service/ExpensiveGoodsManager.java (.../ExpensiveGoodsManager.java) (revision 22010) +++ ssts-expensivegoods/src/main/java/com/forgon/disinfectsystem/expensiveGoods/service/ExpensiveGoodsManager.java (.../ExpensiveGoodsManager.java) (revision 22094) @@ -315,4 +315,8 @@ String expensiveGoodsIds, String expensiveGoodsName); public List> findExpensiveGoodsList(String simpleSpell); + + public void setExpensiveGoodsModelListbyJSONString(String jsonString,ExpensiveGoods expensiveGoods); + + public String getJSONStringOfModelList(ExpensiveGoods expensiveGoods); }