refactor
refactor transcation manage