| | |
| | | import java.lang.reflect.Method; |
| | | |
| | | /** |
| | | * 拦截虚拟卡表的更新操作,设置占用状态操作的使不能 |
| | | * 拦截虚拟卡表的更新操作,使不能设置占用状态操作。 |
| | | */ |
| | | @Intercepts({ |
| | | @Signature( |
| | |
| | | if (entity instanceof SeVirtualCard) { |
| | | MappedStatement mappedStatement = (MappedStatement) invocation.getArgs()[MAPPED_STATEMENT_INDEX]; |
| | | SqlCommandType commandType = mappedStatement.getSqlCommandType(); |
| | | if (commandType.equals(SqlCommandType.INSERT)) { |
| | | if (commandType.equals(SqlCommandType.UPDATE)) { |
| | | Class<?> entityClass = entity.getClass(); |
| | | Method setInUse = null; |
| | | try { |
| | | setInUse = entityClass.getMethod(BASE_FIELD_SET_PRIMARY_KEY_FUNTION_SETINUSE, Long.class); |
| | | setInUse = entityClass.getMethod(BASE_FIELD_SET_PRIMARY_KEY_FUNTION_SETINUSE, Byte.class); |
| | | } catch (Exception e) { |
| | | //当entityClass没有setInUse方法时,会抛出异常 |
| | | } |