/** * @return \yii\db\ActiveQuery */ public function getCqssc() { return $this->hasOne(Cqssc::className(), ['id' => 'cqssc_id']); }
/** * 查询重庆时时彩 中三 组3形态 设定的号码 最后一次出现的位置 * @param $newest; 重庆时时彩最新的数据位置; * @param $number; 设定的报警号码值; * @param $qishu; 设定的报警期数; * @return string|void */ private function cq_after_three_three_show($newest, $number, $qishu) { //设定号码 中三 组3 最新出现的位置 $result = Cqssc::find()->andWhere(['after_three_type' => 2])->andFilterWhere(['or', "three={$number}", "four={$number}", "five={$number}"])->orderBy('time DESC')->one(); //数据中 暂无 此号码在 出现过 - 数据库刚创建的情况才会出现 if (!$result) { echo '重庆时时彩 后三 组3,当前数据库中暂没有出现过 ' . $number . ' 的号码' . "\r\n"; return false; } //计算有多少期没有开过 设定号码的奖了 $interval = Cqssc::find()->andWhere(['>', 'qishu', $result->qishu])->andWhere(['<=', 'qishu', $newest->qishu])->count(); //间隔期数 大于 或 等于 报警期数就报警 if ($interval >= $qishu) { echo '警告: 重庆时时彩 - 后三 组3 - 预定号码:' . $number . ' 已经有' . $interval . ' 期未开奖了' . "\r\n"; //报警操作 return '警告: 重庆时时彩 - 后三 组3 - 预定号码:' . $number . ' 已经有' . $interval . ' 期未开奖了' . "<br>"; } else { echo '重庆时时彩 - 中三 后3 - 预定号码:' . $number . ' 已经有' . $interval . '期未开奖了' . "\r\n"; } return false; }
/** * 记录到 mysql */ private function insert_mysql() { $exists = Cqssc::findOne(['qishu' => $this->data['qihao'], 'code' => $this->data['code']]); if ($exists) { exit("重庆时时彩数据已经采集过了 时间:" . date('Y-m-d H:i:s') . "\r\n"); } //开奖前三 号码 $q3 = $this->data['code'][0] . $this->data['code'][1] . $this->data['code'][2]; //开奖中三 号码 $z3 = $this->data['code'][1] . $this->data['code'][2] . $this->data['code'][3]; //后奖中三 号码 $h3 = $this->data['code'][2] . $this->data['code'][3] . $this->data['code'][4]; $this->analysisCode(); list($q3_data1_lucky, $q3_data1_regert, $q3_data2_lucky, $q3_data2_regert) = $this->isLucky($q3); //前三中奖情况 list($z3_data1_lucky, $z3_data1_regert, $z3_data2_lucky, $z3_data2_regert) = $this->isLucky($z3); //中三是否中奖 list($h3_data1_lucky, $h3_data1_regert, $h3_data2_lucky, $h3_data2_regert) = $this->isLucky($h3); //侯三是否中奖 //前三是组6还是组3 $q3_type = $this->is_type($q3); //中三是组6还是组3 $z3_type = $this->is_type($z3); //后三是组6还是组3 $h3_type = $this->is_type($h3); //开启事物 $innerTransaction = Yii::$app->db->beginTransaction(); try { /* 插入 开奖记录表数据 */ $cqsscModel = new Cqssc(); $cqsscModel->qishu = $this->data['qihao']; $cqsscModel->one = $this->data['code'][0]; $cqsscModel->two = $this->data['code'][1]; $cqsscModel->three = $this->data['code'][2]; $cqsscModel->four = $this->data['code'][3]; $cqsscModel->five = $this->data['code'][4]; $cqsscModel->code = $this->data['code']; $cqsscModel->front_three_type = $q3_type; $cqsscModel->center_three_type = $z3_type; $cqsscModel->after_three_type = $h3_type; $cqsscModel->kj_time = $this->data['kjsj']; $cqsscModel->time = time(); $cqsscModel->save(); /* 插入 开奖记录关联的 数据分析表 数据包1解析的结果 */ $analysisCqsscModel = new AnalysisCqssc(); $analysisCqsscModel->cqssc_id = $cqsscModel->id; $analysisCqsscModel->front_three_lucky_txt = $q3_data1_lucky; $analysisCqsscModel->front_three_regret_txt = $q3_data1_regert; $analysisCqsscModel->center_three_lucky_txt = $z3_data1_lucky; $analysisCqsscModel->center_three_regret_txt = $z3_data1_regert; $analysisCqsscModel->after_three_lucky_txt = $h3_data1_lucky; $analysisCqsscModel->after_three_regret_txt = $h3_data1_regert; $analysisCqsscModel->data_txt = $this->data_packet_txt; $analysisCqsscModel->type = 1; //数据包1解析的数据 $analysisCqsscModel->time = time(); $analysisCqsscModel->save(); /* 插入 开奖记录关联的 数据分析表 数据包2解析的结果 */ $analysisCqsscModel = new AnalysisCqssc(); $analysisCqsscModel->cqssc_id = $cqsscModel->id; $analysisCqsscModel->front_three_lucky_txt = $q3_data2_lucky; $analysisCqsscModel->front_three_regret_txt = $q3_data2_regert; $analysisCqsscModel->center_three_lucky_txt = $z3_data2_lucky; $analysisCqsscModel->center_three_regret_txt = $z3_data2_regert; $analysisCqsscModel->after_three_lucky_txt = $h3_data2_lucky; $analysisCqsscModel->after_three_regret_txt = $h3_data2_regert; $analysisCqsscModel->data_txt = $this->data_packet_txt_2; $analysisCqsscModel->type = 2; //数据包2解析的数据 $analysisCqsscModel->time = time(); $analysisCqsscModel->save(); $innerTransaction->commit(); //事物提交 $this->setLog(true, '重庆时时彩数据抓取成功'); echo "重庆时时彩数据抓取成功 时间:" . date('Y-m-d H:i:s') . "\r\n"; } catch (\Exception $e) { $innerTransaction->rollBack(); $this->setLog(false, '重庆时时彩数据与数据分析存入失败'); exit("重庆时时彩数据分析存入失败 时间:" . date('Y-m-d H:i:s') . "\r\n"); } }
/** * 获取分组数据 */ private function getdate($type) { //查询选择时间的前2天数据 $name = $this->getUnit(\Yii::$app->request->post('cp_unit')); $val = \Yii::$app->request->post('cp_unit_val'); if ($type == 1) { //重庆时时彩 //查询选择号码 最新出现的位置 $newest = Cqssc::find()->where([$name => $val])->orderBy('time DESC')->limit(1)->select('time')->one(); if (!$newest) { //还没有出现过此号码 return false; } $end_time = $newest->time; $start_time = $end_time - 86400 * 2; // 比此号码出现的时间 - 2天的时间 $cqssc = Cqssc::find()->andWhere(['>=', 'time', $start_time])->andWhere(['<', 'time', $end_time])->orderBy('time ASC')->all(); $newCqssc = []; $number = 0; foreach ($cqssc as $key => $m) { if ($m->{$name} == $val) { $newCqssc[] = $m; $number = 1; } else { if ($number > 0 && $number < 2) { $newCqssc[] = $m; $number += 1; } if ($number == 2) { $number = 0; } } } /* $cqssc = Codeold::find()->andWhere(['>=','time',$start_time])->andWhere(['<','time',$end_time])->orderBy('time ASC')->all(); $newCqssc = []; $number = 0; foreach ($cqssc as $key=>$m){ //将开奖号中间的空格去掉 $code = str_replace(" ", '', $m->code); if($code[\Yii::$app->request->post('cp_unit') -1 ] == $val){ $newCqssc [] = $m; $number = 1; }else{ if($number>0 && $number<2){ $newCqssc [] = $m; $number += 1; } if($number == 2){ $number = 0; } } } */ return $newCqssc; } if ($type == 2) { //天津时时彩 //查询选择号码 最新出现的位置 $newest = Tjssc::find()->where([$name => $val])->orderBy('time DESC')->limit(1)->select('time')->one(); if (!$newest) { //还没有出现过此号码 return false; } $end_time = $newest->time; $start_time = $end_time - 86400 * 2; // 比此号码出现的时间 - 2天的时间 $tjssc = Tjssc::find()->andWhere(['>=', 'time', $start_time])->andWhere(['<=', 'time', $end_time])->orderBy('time ASC')->all(); $newTjssc = []; $number = 0; foreach ($tjssc as $key => $m) { if ($m->{$name} == $val) { $newTjssc[] = $m; $number = 1; } else { if ($number > 0 && $number < 2) { $newTjssc[] = $m; $number += 1; } if ($number == 2) { $number = 0; } } } return $newTjssc; } if ($type == 3) { //新疆时时彩 //查询选择号码 最新出现的位置 $newest = Tjssc::find()->where([$name => $val])->orderBy('time DESC')->limit(1)->select('time')->one(); if (!$newest) { //还没有出现过此号码 return false; } $end_time = $newest->time; $start_time = $end_time - 86400 * 2; // 比此号码出现的时间 - 2天的时间 $xjssc = Xjssc::find()->andWhere(['>=', 'time', $start_time])->andWhere(['<', 'time', $end_time])->orderBy('time ASC')->all(); $newXjssc = []; $number = 0; foreach ($xjssc as $key => $m) { if ($m->{$name} == $val) { $newXjssc[] = $m; $number = 1; } else { if ($number > 0 && $number < 2) { $newXjssc[] = $m; $number += 1; } if ($number == 2) { $number = 0; } } } return $newXjssc; } }