Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/basedatamanager/barcodeinformation/service/BarcodeInformationManagerImpl.java =================================================================== diff -u -r14820 -r14834 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/basedatamanager/barcodeinformation/service/BarcodeInformationManagerImpl.java (.../BarcodeInformationManagerImpl.java) (revision 14820) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/basedatamanager/barcodeinformation/service/BarcodeInformationManagerImpl.java (.../BarcodeInformationManagerImpl.java) (revision 14834) @@ -2,13 +2,16 @@ import java.util.List; +import net.sf.json.JSONObject; + import org.apache.commons.lang.StringUtils; import com.forgon.directory.model.BarcodeDevice; import com.forgon.disinfectsystem.entity.basedatamanager.barcodeinformation.BarcodeInformation; import com.forgon.serialnumber.model.SerialNum; import com.forgon.serialnumber.service.SerialNumManager; import com.forgon.tools.hibernate.ObjectDao; +import com.forgon.tools.json.JSONUtil; /** * @author jeffli 2016年9月6日 上午9:03:54 @@ -35,9 +38,31 @@ barcodeInformation .setType(BarcodeDevice.BARCODE_TYPE_BARCODEINFORMATION); } + // 校验信息 + barcodeInformation.validateForSave(); + // 设置title + setTitle(barcodeInformation); objectDao.saveOrUpdate(barcodeInformation); } + private void setTitle(BarcodeInformation barcodeInformation){ + if(barcodeInformation == null){ + return ; + } + switch(barcodeInformation.getInformationType()){ + case BarcodeInformation.TYPE_DISPOSABLEGOODS_GODOWNENTRY: + setTitleForDisposableGoodsGodownEntry(barcodeInformation); + break; + } + } + private void setTitleForDisposableGoodsGodownEntry(BarcodeInformation barcodeInformation){ + String information = barcodeInformation.getInformation(); + JSONObject obj = JSONObject.fromObject(information); + String disposableGoodsName = JSONUtil.optString(obj, "disposableGoodsName", ""); + String supplierName = JSONUtil.optString(obj, "supplierName", ""); + String title = String.format("%s", disposableGoodsName); + barcodeInformation.setTitle(title); + } public BarcodeInformation getBarcodeInformationById(String id) { return (BarcodeInformation) objectDao.getByProperty( BarcodeInformation.class.getSimpleName(), "id", Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/basedatamanager/barcodeinformation/BarcodeInformation.java =================================================================== diff -u -r14820 -r14834 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/basedatamanager/barcodeinformation/BarcodeInformation.java (.../BarcodeInformation.java) (revision 14820) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/basedatamanager/barcodeinformation/BarcodeInformation.java (.../BarcodeInformation.java) (revision 14834) @@ -19,9 +19,10 @@ @Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE) public class BarcodeInformation extends BarcodeDevice { - public static String TYPE_DISPOSABLEGOODS_GODOWNENTRY = "一次性物品入库"; + public final static String TYPE_DISPOSABLEGOODS_GODOWNENTRY = "一次性物品入库"; private String informationType; + private String title; private String information; // json 字符串 public String getInformationType() { @@ -32,6 +33,14 @@ this.informationType = informationType; } + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + public String getInformation() { return information; }