@Override
 @Transactional(propagation = Propagation.NOT_SUPPORTED)
 public QueryResult<TradeRecord> getTradeRecords(String accountId, int skip, int num) {
   QueryResult<UserTradeRecord> userTradeRecordResult =
       userTradeRecordDAO.getTradeRecords(accountId, skip, num);
   QueryResult<TradeRecord> tradeRecordResult = new QueryResult<TradeRecord>();
   tradeRecordResult.setTotalRecord(userTradeRecordResult.getTotalRecord());
   List<TradeRecord> list = new ArrayList<TradeRecord>();
   for (UserTradeRecord userTradeRecord : userTradeRecordResult.getList()) {
     list.add(userTradeRecord.getTradeRecord());
   }
   tradeRecordResult.setList(list);
   return tradeRecordResult;
 }
 @Override
 public double getSumMoneyByAccount(String accountId, ConsumptionType consumption) {
   return userTradeRecordDAO.countMoneyByAccountId(accountId, consumption);
 }
 @Override
 public boolean deleteTradeRecord(String accountId, String orderId) {
   return userTradeRecordDAO.deleteTradeRecord(accountId, orderId) > 0;
 }
 @Override
 public void addUserTradeRecord(UserTradeRecord userTradeRecord) {
   userTradeRecordDAO.add(UserTradeRecord.class, userTradeRecord);
 }