package com.ks.goldcorn.service.remote;
|
|
import com.ks.goldcorn.exception.GoldAppException;
|
import com.ks.goldcorn.mapper.GoldCornAppInfoMapper;
|
import com.ks.goldcorn.mapper.GoldCornBalanceMapper;
|
import com.ks.goldcorn.pojo.DO.GoldCornAppInfo;
|
import com.ks.goldcorn.pojo.DO.GoldCornBalance;
|
import org.springframework.stereotype.Service;
|
import org.springframework.transaction.annotation.Transactional;
|
|
import javax.annotation.Resource;
|
import java.util.Date;
|
import java.util.List;
|
|
@Service
|
public class GoldCornBalanceServiceImpl implements GoldCornBalanceService {
|
|
@Resource
|
private GoldCornBalanceMapper goldCornBalanceMapper;
|
|
@Resource
|
private GoldCornAppInfoMapper goldCornAppInfoMapper;
|
|
@Transactional
|
@Override
|
public void init(String appCode, String uid) throws GoldAppException {
|
GoldCornAppInfo app = goldCornAppInfoMapper.selectByAppCode(appCode);
|
if (app == null) {
|
throw new GoldAppException(GoldAppException.CODE_NOT_EXIST, "应用不存在");
|
}
|
|
GoldCornBalance balance = goldCornBalanceMapper.selectByAppIdAndUid(app.getId(), uid);
|
if (balance == null) {
|
balance = new GoldCornBalance();
|
balance.setAppId(app.getId());
|
balance.setBalance(0L);
|
balance.setCreateTime(new Date());
|
balance.setUid(uid);
|
goldCornBalanceMapper.insertSelective(balance);
|
}
|
|
}
|
|
@Override
|
public Long getBalance(Long appId, String uid) {
|
GoldCornBalance balance = goldCornBalanceMapper.selectByAppIdAndUid(appId, uid);
|
if (balance != null) {
|
return balance.getBalance();
|
}
|
return null;
|
}
|
|
@Override
|
public List<GoldCornBalance> getBalanceList(Long appId, List<String> uidList) {
|
return goldCornBalanceMapper.listByUids(appId, uidList);
|
}
|
|
|
}
|