package com.nq.service.impl;
|
|
import cn.hutool.core.util.ObjectUtil;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.nq.common.ServerResponse;
|
import com.nq.dao.TradingHourMapper;
|
import com.nq.dao.TransactionLogMapper;
|
import com.nq.pojo.TradingHour;
|
import com.nq.pojo.TransactionLog;
|
import com.nq.pojo.User;
|
import com.nq.pojo.UserPositionCheckDz;
|
import com.nq.service.ITradingHourService;
|
import com.nq.service.TransactionLogService;
|
import com.nq.utils.translate.GoogleTranslateUtil;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
|
import javax.servlet.http.HttpServletRequest;
|
import java.util.Date;
|
import java.util.List;
|
|
@Service
|
public class TransactionLogServiceImpl extends ServiceImpl<TransactionLogMapper, TransactionLog> implements TransactionLogService {
|
|
@Autowired
|
UserServiceImpl userService;
|
|
@Override
|
public ServerResponse flowLog(int pageNum, int pageSize, HttpServletRequest request) {
|
|
User user = this.userService.getCurrentRefreshUser(request);
|
if(ObjectUtil.isEmpty(user)){
|
return ServerResponse.createByErrorMsg("登录已失效,请重新登录!",request);
|
}
|
Page<TransactionLog> page = Page.of(pageNum, pageSize);
|
Page<TransactionLog> pageList = page(page,new LambdaQueryWrapper<TransactionLog>()
|
.eq(TransactionLog::getUserId, user.getId())
|
.orderByDesc(TransactionLog::getTransactionTime)
|
);
|
pageList.getRecords().forEach(f->{
|
f.setTransactionType(new GoogleTranslateUtil().translate(f.getTransactionType(),request.getHeader("lang")));
|
f.setDescription(new GoogleTranslateUtil().translate(f.getDescription(),request.getHeader("lang")));
|
});
|
return ServerResponse.createBySuccess(pageList);
|
}
|
|
@Override
|
public void add(Integer userId, String transactionType, String amount, String description) {
|
TransactionLog transactionLog = new TransactionLog();
|
transactionLog.setUserId(userId);
|
transactionLog.setTransactionType(transactionType);
|
transactionLog.setAmount(amount);
|
transactionLog.setDescription(description);
|
transactionLog.setTransactionTime(new Date());
|
save(transactionLog);
|
}
|
}
|