import { ryw_Event } from "../../FrameWork/Event/EventEnum"; import EventMgr from "../../FrameWork/Event/EventMgr"; import User from "../../FrameWork/User/User"; import Common5 from "../../Platform/th/Common5"; export default class StockManager{ //每天重新刷新股票的价格数据并写入内存(bForce是否强制刷新) public static refreshAllStocksData(day,bForce){ let stocksConfig = Common5.allStocksConfig let curSaveStockDay = User.getCurSaveStockDay() if(!bForce){ //同一天不用重复刷新 if(curSaveStockDay == day){ return }else{ User.setCurSaveStockDay(day) } } //第一天,将初始价格和涨幅写入内存 if(day == 1){ let tempTab = {} for(var i=0;i0 && day == tomorrowStockData.changeDay){ User.setTomorrowStockData({}) } EventMgr.emitEvent_custom(ryw_Event.updateStockView); } //生成涨跌幅比率 public static createDropOrGainsRate(day,config, curPrice){ let trueRate = this.getTomorrowGainsRateById(day,config.id) if(trueRate != -1){ console.log("读取了明日股票缓存"+config.stockName+trueRate) return trueRate } let randomRate = 0 //随机涨或跌 let riseval = 50 if (curPrice > config.startPrice*1.3){ //涨的概率降低 riseval -= 30 * ((curPrice- config.startPrice*1.3)/(config.startPrice*2.7)) } else if (curPrice < config.startPrice*0.8){ if (curPrice <= config.startPrice*0.05){ riseval = 0 } else{ //涨的概率提升 riseval += (50 * ((config.startPrice*0.8-curPrice)/(config.startPrice*0.8))) * 1.2 } } let bGains = Common5.getRandomNum(0,100) if (bGains <= riseval){ //涨 randomRate = Common5.getRandomNum(config.smallestGains*10,config.biggestGains*10) } else{ //跌 randomRate = Common5.getRandomNum(config.smallestDrop*10,config.biggestDrop*10) } trueRate = (randomRate/10).toFixed(1) //console.log("trueRate=",trueRate) return trueRate } //获取明日涨跌幅比率 public static getTomorrowGainsRateById(day,id){ let tomorrowStockData = User.getTomorrowStockData() if(tomorrowStockData && tomorrowStockData.changeDay >0 && day == tomorrowStockData.changeDay){ for(var i=0;i