Search in sources :

Example 1 with ChildCost

use of com.code.server.constant.db.ChildCost in project summer by foxsugar.

the class DemoAction method testClear.

// 清除返利
public void testClear() {
    AgentUser agentUser1 = agentUserDao.findOne(17);
    AgentInfo agentInfo = agentUser1.getAgentInfo();
    for (String key : agentInfo.getEveryDayCost().keySet()) {
        ChildCost childCost = agentInfo.getEveryDayCost().get(key);
        childCost.setPartner(1);
    }
    agentUserDao.save(agentUser1);
}
Also used : ChildCost(com.code.server.constant.db.ChildCost) AgentInfo(com.code.server.constant.db.AgentInfo)

Example 2 with ChildCost

use of com.code.server.constant.db.ChildCost in project summer by foxsugar.

the class DemoAction method testTest.

public void testTest() {
    AgentUser agentUser1 = agentUserDao.findOne(17);
    AgentInfo agentInfo = agentUser1.getAgentInfo();
    // 计算累计收入
    double totalMoney = 0;
    double firstLevel = 0;
    double secondLevel = 0;
    for (String key : agentInfo.getEveryDayCost().keySet()) {
        ChildCost childCost = agentInfo.getEveryDayCost().get(key);
        if (childCost.getPartner() - 0d == 1d) {
            totalMoney += childCost.firstLevel;
            totalMoney += childCost.secondLevel;
        } else {
            firstLevel += childCost.getFirstLevel();
            secondLevel += childCost.getSecondLevel();
        }
    }
}
Also used : ChildCost(com.code.server.constant.db.ChildCost) AgentInfo(com.code.server.constant.db.AgentInfo)

Example 3 with ChildCost

use of com.code.server.constant.db.ChildCost in project summer by foxsugar.

the class DemoAction method testRecord.

public void testRecord() {
    AgentUser agentUser1 = agentUserDao.findOne(17);
    AgentInfo agentInfo = agentUser1.getAgentInfo();
    Map<String, ChildCost> rs = new HashMap<>();
    List<Map<String, ChildCost>> list = new ArrayList<>();
    for (String key : agentInfo.getEveryDayCost().keySet()) {
        ChildCost childCost = agentInfo.getEveryDayCost().get(key);
        if (childCost.getPartner() - 0d == 1d) {
            rs.put(key, childCost);
            list.add(rs);
        }
    }
    System.out.println("====");
    System.out.println(list);
}
Also used : ChildCost(com.code.server.constant.db.ChildCost) AgentInfo(com.code.server.constant.db.AgentInfo)

Example 4 with ChildCost

use of com.code.server.constant.db.ChildCost in project summer by foxsugar.

the class TodayChargeAction method showCost.

@AuthChecker
@RequestMapping("/dCost")
public AgentResponse showCost(String start, String end) {
    // 转化为标准字符串
    logger.info("dCost==========start:{},end:{}", start, end);
    start = DateUtil.becomeStandardSTime(start);
    end = DateUtil.becomeStandardSTime(end);
    logger.info("dCost==========start:{},end:{}", start, end);
    ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
    HttpServletRequest request = attributes.getRequest();
    long agentId = AgentUtil.getAgentByRequest(request);
    List<String> list = DateUtil.getDateListIn(end, start);
    AgentBean agentBean = RedisManager.getAgentRedisService().getAgentBean(agentId);
    AgentInfo agentInfo = agentBean.getAgentInfo();
    List<DChildCostVo> li = new ArrayList<>();
    double oneLevel = 0d;
    double twoLevel = 0d;
    double threeLevel = 0d;
    for (String dateStr : list) {
        ChildCost childCost = agentInfo.getEveryDayCost().get(dateStr);
        DChildCostVo dChildCostVo = new DChildCostVo();
        if (childCost != null) {
            BeanUtils.copyProperties(childCost, dChildCostVo);
        }
        dChildCostVo.setDateStr(dateStr);
        li.add(dChildCostVo);
        oneLevel += dChildCostVo.getFirstLevel();
        twoLevel += dChildCostVo.getSecondLevel();
        threeLevel += dChildCostVo.getThirdLevel();
    }
    // double total = oneLevel * 0.2 * 0.01 + twoLevel * 0.1 * 0.01 + threeLevel *0.1 * 0.01;
    double total = (oneLevel + twoLevel + threeLevel) * 0.01;
    Map<String, Object> result = new HashMap<>();
    result.put("li", li);
    result.put("total", total);
    // result.put("oneLevel", oneLevel * 0.2 * 0.01);
    // result.put("twoLevel", twoLevel * 0.1 * 0.01);
    // result.put("threeLevel", threeLevel *0.1 * 0.01);
    result.put("oneLevel", oneLevel * 0.01);
    result.put("twoLevel", twoLevel * 0.01);
    result.put("threeLevel", threeLevel * 0.01);
    result.put("start", list.get(list.size() - 1));
    result.put("end", list.get(0));
    double income = oneLevel * 0.2 * 0.01 + twoLevel * 0.1 * 0.01 + threeLevel * 0.1 * 0.01;
    result.put("income", income);
    AgentResponse agentResponse = new AgentResponse(200, result);
    return agentResponse;
}
Also used : ServletRequestAttributes(org.springframework.web.context.request.ServletRequestAttributes) HttpServletRequest(javax.servlet.http.HttpServletRequest) AgentBean(com.code.server.constant.game.AgentBean) ChildCost(com.code.server.constant.db.ChildCost) AgentInfo(com.code.server.constant.db.AgentInfo) AuthChecker(com.code.server.login.anotation.AuthChecker) RequestMapping(org.springframework.web.bind.annotation.RequestMapping)

Example 5 with ChildCost

use of com.code.server.constant.db.ChildCost in project summer by foxsugar.

the class AgentRedisService method addChildCost.

public void addChildCost(long agentId, double cost, int level, String date, String deleteDay) {
    AgentBean agentBean = getAgentBean(agentId);
    if (agentBean != null) {
        if (cost > 0) {
            if (agentBean.getAgentInfo().getEveryDayCost() == null) {
                agentBean.getAgentInfo().setEveryDayCost(new HashMap<>());
            }
            ChildCost childCost = agentBean.getAgentInfo().getEveryDayCost().getOrDefault(date, new ChildCost());
            switch(level) {
                case 0:
                    childCost.partner += cost;
                    break;
                case 1:
                    childCost.firstLevel += cost;
                    break;
                case 2:
                    childCost.secondLevel += cost;
                    break;
                case 3:
                    childCost.thirdLevel += cost;
                    break;
            }
            agentBean.getAgentInfo().getEveryDayCost().put(date, childCost);
            agentBean.getAgentInfo().getEveryDayRebate().remove(deleteDay);
            // 
            // //历史总返利
            // double allRebate = agentBean.getAgentInfo().getAllRebate();
            // allRebate += rebate;
            // agentBean.getAgentInfo().setAllRebate(allRebate);
            // //每日返利
            // Map<String,Double> everyDayRebate = agentBean.getAgentInfo().getEveryDayRebate();
            // 
            // double todayRebate = everyDayRebate.getOrDefault(date, 0D);
            // todayRebate += rebate;
            // everyDayRebate.putIfAbsent(date, todayRebate);
            // //删除记录
            // everyDayRebate.remove(deleteDay);
            updateAgentBean(agentBean);
        }
    }
}
Also used : AgentBean(com.code.server.constant.game.AgentBean) ChildCost(com.code.server.constant.db.ChildCost)

Aggregations

ChildCost (com.code.server.constant.db.ChildCost)8 AgentInfo (com.code.server.constant.db.AgentInfo)7 AgentBean (com.code.server.constant.game.AgentBean)3 UserBean (com.code.server.constant.game.UserBean)2 ServerConfig (com.code.server.login.config.ServerConfig)2 RequestMapping (org.springframework.web.bind.annotation.RequestMapping)2 ResponseVo (com.code.server.constant.response.ResponseVo)1 AuthChecker (com.code.server.login.anotation.AuthChecker)1 HomeChargeVo (com.code.server.login.vo.HomeChargeVo)1 HomePageVo (com.code.server.login.vo.HomePageVo)1 IOException (java.io.IOException)1 LocalDate (java.time.LocalDate)1 HttpServletRequest (javax.servlet.http.HttpServletRequest)1 Element (org.dom4j.Element)1 ServletRequestAttributes (org.springframework.web.context.request.ServletRequestAttributes)1