'require', 'card_name' => 'require|length:2,20', 'card_num' => 'require|length:6,32|checkCardNum', 'signin' => 'checkSignin', 'start' => 'checkMineStart', 'receive' => 'checkMineReceive', ]; protected $message = [ 'code.require' => 'network.parameterAbnormality',//参数缺失 'card_name.require' => 'network.parameterAbnormality',//参数缺失 'card_name.length' => 'auth.realNameError',//请输入正确的姓名 'card_num.require' => 'network.parameterAbnormality',//参数缺失 'card_num.length' => 'auth.realNumError',//请输入正确的证件号 ]; /** * @notes 绑定/变更 手机号 * @return UserValidate * @author BD * @date 2023/9/21 19:15 */ public function sceneBindMobile() { return $this->only(['mobile', 'code']); } /** * @notes Google Authenticator校验 * @return UserValidate * @author BD * @date 2023/9/21 19:15 */ public function sceneVerifyGoogle() { return $this->only(['code']); } /** * @notes 邮箱校验 * @return UserValidate * @author BD * @date 2023/9/21 19:15 */ public function sceneVerifyEmail() { return $this->only(['code']); } /** * @notes 实名认证 * @return UserValidate * @author BD * @date 2023/9/21 19:15 */ public function sceneVerifyRealname() { return $this->only(['card_name','card_num']); } /** * @notes 签到 * @return UserValidate * @author BD * @date 2024/9/21 19:15 */ public function sceneSignin() { return $this->only(['signin']); } /** * @notes 矿机 启动 * @return UserValidate * @author BD * @date 2024/9/21 19:15 */ public function sceneMineStart() { return $this->only(['start']); } /** * @notes 矿机 收益 * @return UserValidate * @author BD * @date 2024/9/21 19:15 */ public function sceneMineReceive() { return $this->only(['receive']); } /** * @notes 校验卡号 * @param $num * @param $rule * @param $data * @return bool|string * @author BD * @date 2023/9/21 19:15 */ protected function checkCardNum($num, $rule, $data) { $userInfo = UserInfo::where(['user_id' => $data['user_id']])->findOrEmpty(); if($userInfo->isEmpty()) { return 'network.parameterAbnormality'; } if($userInfo['auth_card'] != 0 && $userInfo['auth_card'] != 3) { return 'network.parameterAbnormality'; } //查询证件照 if (!isset($data['card_img1'])||!isset($data['card_img2'])||!isset($data['card_img3'])) { return 'network.parameterAbnormality'; } //判断是否绑定过 $info_t = UserInfo::where(['card_num' => $data['card_num']])->findOrEmpty(); if(!$info_t->isEmpty()) { return 'auth.realNumExited';//该证件已使用过 } return true; } /** * @notes 校验签到 * @param $signin * @param $rule * @param $data * @return bool|string * @author BD * @date 2024/9/21 19:15 */ protected function checkSignin($signin, $rule, $data) { //判断是否签到 $todayStart = strtotime("today midnight"); $sign_count = UserSigninRecord::where(['user_id' => $data['user_id']])->where("create_time > $todayStart")->count(); if($sign_count > 0) { return 'network.parameterAbnormality'; } return true; } /** * @notes 校验矿机 启动 * @param $start * @param $rule * @param $data * @return bool|string * @author BD * @date 2024/9/21 19:15 */ protected function checkMineStart($start, $rule, $data) { $user = User::where(['id' => $data['user_id']])->findOrEmpty(); if($user['mine_status'] != 0) { return 'network.parameterAbnormality'; } return true; } /** * @notes 校验矿机 收益 * @param $receive * @param $rule * @param $data * @return bool|string * @author BD * @date 2024/9/21 19:15 */ protected function checkMineReceive($receive, $rule, $data) { $user = User::where(['id' => $data['user_id']])->findOrEmpty(); if($user['mine_status'] != 2) { return 'network.parameterAbnormality'; } return true; } }