一元购使用默认幸运号码中奖

默认幸运号码其实无需中奖,一元购中奖的计算方式也没有漏洞,但是,中奖之后的基础数据会随之公布,只需更改用于计算的基础数据使之和默认幸运号码一致即可。因为用户支付成功的时间存在于系统的数据库中,是不透明的,是可更改的!!! 更改支付的时间,使计算出来的幸运号码和默认中奖的幸运号码一致!

/**
 * 默认中奖用户计算幸运号码
* */
public void defaultCountLuckyNumber(HappyUserRecord insUserRecord,String partakeRecord,HappyCommodityRecord commodityRecordInfo,String jackpotUser, int jackpotLuckyNumber){

    // 抓取最后6条幸运号码记录
    List<HappyUserRecord> LastSixLuckyNumber = userLuckynumberService.getLastSix(Integer.parseInt(partakeRecord));

    double lastSixSum = 0;
    String lastSixInfo = "";
    for (int i = 0; i < LastSixLuckyNumber.size(); i++) {
	lastSixSum = lastSixSum+Float.parseFloat(Tools.getTime(LastSixLuckyNumber.get(i).getUpdatetime()));
			
    // 根据用户参与id查询用户电话号码
    String phoneNumber = LastSixLuckyNumber.get(i).getPhoneNumber();
			
    lastSixInfo += Tools.getCreatetime(LastSixLuckyNumber.get(i).getUpdatetime())+"+"+Tools.getTime(LastSixLuckyNumber.get(i).getUpdatetime())+"+"+phoneNumber+"=";
    }
    int winningnumber = Integer.parseInt(commodityRecordInfo.getWinningnumber());
		
    int luckyNumber = ((int)lastSixSum%winningnumber)+10000001;// 计算幸运号码
		
    //System.out.println("计算出来的幸运号码是:"+luckyNumber);// 计算出来的幸运号码
		
    int number=luckyNumber-jackpotLuckyNumber;
    // 更改时间
    String timeStr = Tools.getTime(LastSixLuckyNumber.get(LastSixLuckyNumber.size()-1).getUpdatetime());
    int timeNumber = Integer.parseInt(timeStr);
    int countTime = timeNumber-number;
		
    String date=Tools.getDate(LastSixLuckyNumber.get(LastSixLuckyNumber.size()-1).getUpdatetime())+countTime;
    String createtime = Tools.getCreatetime(Tools.getDate(date));
		
    String lastSixInfoArr[] = lastSixInfo.split("=");
		
    lastSixInfoArr[lastSixInfoArr.length-1] = createtime+"+"+Tools.getTime(Tools.getDate(date))+"+"+LastSixLuckyNumber.get(LastSixLuckyNumber.size()-1).getPhoneNumber();

    commodityRecordInfo.setLuckynumber(jackpotLuckyNumber+"");// 给存入订单表使用
    commodityRecordInfo.setJackpotuser(jackpotUser);

    // 更新中奖用户时间
    HappyJackpotInfo jackpotInfo = new HappyJackpotInfo();
    jackpotInfo.setPartakeRecord(partakeRecord);
    jackpotInfo.setJackpotUser(jackpotUser);
    jackpotInfo.setJackpotLuckyNumber(jackpotLuckyNumber+"");
    for (int i = 0; i < lastSixInfoArr.length; i++) {
	if(i==0) {jackpotInfo.setCountTime1(lastSixInfoArr[0]);}
	if(i==1) {jackpotInfo.setCountTime2(lastSixInfoArr[1]);}
	if(i==2) {jackpotInfo.setCountTime3(lastSixInfoArr[2]);}
	if(i==3) {jackpotInfo.setCountTime4(lastSixInfoArr[3]);}
	if(i==4) {jackpotInfo.setCountTime5(lastSixInfoArr[4]);}
	if(i==5) {jackpotInfo.setCountTime6(lastSixInfoArr[5]);}
    }
    jackpotInfoService.updateJackpotDate(jackpotInfo);
		

}

转载于:https://my.oschina.net/hehongbo/blog/715607

一元是近年来盛行的一种物方式,它的原理是消费者以一元的价格买某种商品或服务的机会。对于thinkphp这个话题,可以按照以下方式回答: 一元可以通过thinkphp来实现。thinkphp是一款开源的PHP开发框架,具有简单易用、高效稳定等特点。通过使用thinkphp框架,可以快速搭建一元网站,实现商品展示、用户注册登录、参与活动、支付买等功能。 在一元网站中,thinkphp框架可以作为后台开发工具,用来处理用户的请求和数据处理,保证网站的稳定运行。开发人员可以使用框架提供的模块化开发、数据库操作、前后端分离等功能,快速开发出功能完善的一元平台。同时,thinkphp框架还拥有良好的安全性和可扩展性,可以有效保护用户信息和提供更好的用户体验。 在一元的模式中,消费者可以通过支付一元买参与机会,然后通过系统分配的随机生成的号码等方式参与竞商品。如果消费者是幸运的中选者,就可以以仅一元的价格获得商品或服务。这种模式的互动性很高,能够吸引更多用户的参与,同时也能够为商家带来更多的流量和销售机会。 总而言之,通过thinkphp框架可以实现一元的网站开发,搭建一个功能完善、稳定性强的一元平台。这种物方式能够吸引广大消费者的参与,同时也能够为商家带来更多的机会和收益。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值