protected int updateByPk(E entity) { return updateByPk(entity.getId(), entity); }
@Override public PK insert(E entity) { if (!StringUtils.isEmpty(entity.getId())) { if ((entity.getId() instanceof String) && !StringUtils.isEmpty(entity.getId())) { tryValidateProperty(entity.getId().toString().matches("[a-zA-Z0-9_\\-]+"), "id", "只能由数字,字母,下划线,和-组成"); } tryValidateProperty(selectByPk(entity.getId()) == null, "id", entity.getId() + "已存在"); } if (StringUtils.isEmpty(entity.getId()) && getIDGenerator() != null) { entity.setId(getIDGenerator().generate()); } if (entity instanceof RecordCreationEntity) { ((RecordCreationEntity) entity).setCreateTimeNow(); } tryValidate(entity, CreateGroup.class); getDao().insert(entity); return entity.getId(); }
@Override public PK saveOrUpdate(E entity) { if (dataExisted(entity)) { updateByPk(entity); } else { insert(entity); } return entity.getId(); }
@PostConstruct public void init() { if (logicPrimaryKeyValidator instanceof DefaultLogicPrimaryKeyValidator) { DefaultLogicPrimaryKeyValidator.registerQuerySuppiler(getEntityInstanceType(), bean -> this.createQuery().not("id", bean.getId())); } }
protected int updateByPk(E entity) { return updateByPk(entity.getId(), entity); }
@Override public PK insert(E entity) { if (!StringUtils.isEmpty(entity.getId())) { if ((entity.getId() instanceof String) && !StringUtils.isEmpty(entity.getId())) { tryValidateProperty(entity.getId().toString().matches("[a-zA-Z0-9_\\-]+"), "id", "只能由数字,字母,下划线,和-组成"); } tryValidateProperty(selectByPk(entity.getId()) == null, "id", entity.getId() + "已存在"); } if (StringUtils.isEmpty(entity.getId()) && getIDGenerator() != null) { entity.setId(getIDGenerator().generate()); } if (entity instanceof RecordCreationEntity) { ((RecordCreationEntity) entity).setCreateTimeNow(); } tryValidate(entity, CreateGroup.class); getDao().insert(entity); return entity.getId(); }
@PostConstruct public void init() { if (logicPrimaryKeyValidator instanceof DefaultLogicPrimaryKeyValidator) { DefaultLogicPrimaryKeyValidator.registerQuerySuppiler(getEntityInstanceType(), bean -> this.createQuery().not("id", bean.getId())); } }
@Override public PK saveOrUpdate(E entity) { if (dataExisted(entity)) { updateByPk(entity); } else { insert(entity); } return entity.getId(); }