addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $task_type=$_POST['taskType']; $page = $_POST['page']; $one_size = empty($_POST['pageSize'])?30:$_POST['pageSize']; //每頁30行記錄 $page_one = ($page - 1) * $one_size; $uid = $user_info["id"]; if(empty($task_type)) { $this->returnDataAndSendMsg("任务类型不能为空"); die(); } $data_list = M("dy_ks_task")->where("type='$task_type' AND status=0 AND amount>0 AND task_type = 0")->order("date DESC")->LIMIT($page_one, $one_size)->select(); if($task_type==TaskManagerController::SHIPNGHAO_TYPE) { //视频号 foreach ($data_list as $key => $value) { $task_id = $value['id']; $data_list[$key]['is_ing']=false; $is_lock_info = M("dy_ks_sucai_video")->field('id')->where("uid='$uid' AND task_id='$task_id' AND is_lock=1")->find(); if(!empty($is_lock_info)) { $data_list[$key]['is_ing']=true; } } }elseif ($task_type==TaskManagerController::DOUYIN_TYPE) { //抖音视频 foreach ($data_list as $key => $value) { $task_id = $value['id']; $data_list[$key]['is_ing']=false; $is_lock_info = M(TaskManagerController::DOUYIN_SU_CAI_BIAO_NAME)->field('id')->where("uid='$uid' AND task_id='$task_id' AND is_lock=1")->find(); if(!empty($is_lock_info)) { $data_list[$key]['is_ing']=true; } } }elseif ($task_type==TaskManagerController::KUAISHOU_TYPE) { //抖音视频 foreach ($data_list as $key => $value) { $task_id = $value['id']; $data_list[$key]['is_ing']=false; $is_lock_info = M(TaskManagerController::KUAISHOU_SU_CAI_BIAO_NAME)->field('id')->where("uid='$uid' AND task_id='$task_id' AND is_lock=1")->find(); if(!empty($is_lock_info)) { $data_list[$key]['is_ing']=true; } } } $data['code'] = '200'; $data['message'] = 'ok'; $data['all_num'] =M("dy_ks_task")->where("type='$task_type' AND status=0 AND amount>0 AND task_type = 0")->count(); $data['data'] = $data_list; echo json_encode($data); } /** * 检查任务是否还有素材库 * @return void */ public function has_sucai_by_task_id() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $taskId=$_POST['taskId']; if(empty($taskId)) { $this->returnDataAndSendMsg("任务ID不能为空"); die(); } $task_info = M("dy_ks_task")->where("id='$taskId' AND status=0")->find(); if(empty($task_info)) { $this->returnDataAndSendMsg("此任务已不存在"); die(); } $ret_flg =0; $app_id = $task_info['sc_id']; $sucai_info = M("dy_ks_sucaiku")->where("appid='$app_id'")->field("id")->find(); if(empty($sucai_info)) { $this->returnDataAndSendMsg("素材库[appid]已不存在"); die(); } $sucai_id=$sucai_info['id']; $ret_flg = M("dy_ks_sucai_video")->where("sc_id=$sucai_id AND `status` =0 AND is_lock=0")->count(); $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = $ret_flg; echo json_encode($data); } /** * 查询用户详情 * @return void */ public function get_task_detail() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $id=$_POST['id']; $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = M("dy_ks_task")->where("id='$id'")->find(); echo json_encode($data); } /** * 获取视频号详情 * @return void */ public function get_task_video_detail() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $id=$_POST['id']; $uid = $user_info["id"]; $data_info = M("dy_ks_task")->where("id='$id'")->find(); $data_info["isDown"]=false;//是否下载视频 $data_info["countdown"]=0;//倒计时 $data_info["isFengjin"]=false;//是否封禁 $data_info["descripe"]="";//是否封禁 $tabe_name = 'dy_ks_sucai_video'; $tishi_ci = "视频号"; if($data_info["type"]==TaskManagerController::DOUYIN_TYPE) { $tabe_name = TaskManagerController::DOUYIN_SU_CAI_BIAO_NAME; $tishi_ci = TaskManagerController::DOUYING_TI_SHI_CI; } if($data_info["type"]==TaskManagerController::KUAISHOU_TYPE) { $tabe_name = TaskManagerController::KUAISHOU_SU_CAI_BIAO_NAME; $tishi_ci = TaskManagerController::KUAISHOU_TI_SHI_CI; } if($data_info["type"]==TaskManagerController::WX_SHARE_TYPE) { $tabe_name = TaskManagerController::WX_SHARE_SU_CAI_BIAO_NAME; $tishi_ci = TaskManagerController::WX_SHARE_SHI_CI; } //检测封禁 $check_info = $this->is_check_shipinhao($uid,$data_info["type"],$tabe_name,$tishi_ci); $data_info["isFengjin"]=$check_info["isFengjin"]; $data_info["descripe"]=$check_info["descripe"]; $data_info["isDown"]=$check_info["isDown"]; $data_info["sucaiInfo"]=$check_info["sucaiInfo"]; //倒计时 if(!empty($check_info) && !$check_info["isFengjin"]) { //计划完成时间 if($check_info["finsh_time"]>=$check_info["curent_time"]) { //倒计时 $data_info["countdown"]=$check_info["finsh_time"]-$check_info["curent_time"];//倒计时 } } //填充话题 $huati_type = $data_info['jd_require']; if(!empty($huati_type) && "不要话题"!=$huati_type) { $huati_list = M("dy_wx_huati")->where("type='$huati_type'")->order("rand()")->limit(3)->select(); //$data_info['jd_require']= $huati_list ; // $data_info['jd_require']= empty($data_info['task_copy'])?"":$data_info['task_copy'] ; $data_info['jd_require']=''; foreach ($huati_list as $v) { $data_info['jd_require']=$data_info['jd_require'].$v["content"]; } } //一句话随机,v2.5 $yijuhua=$data_info['task_copy']; if(!empty($yijuhua) && $yijuhua=='x一句话' || !empty($yijuhua) && $yijuhua=='体育一句话') { $yijuhua_info = M("dy_wx_yijuhua")->field("word_content")->where("word_type='$yijuhua'")->order("rand()")->find(); if(!empty($yijuhua_info)) { $data_info['task_copy'] = $yijuhua_info['word_content']; } } $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = $data_info; echo json_encode($data); } /** * 文件上传 * @return void */ public function file_upload() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $task_require_img= $this->dealFiles($_FILES['task_require_img']); $uploadPath = '/home2/task/user/'; // 头图片和内容图片的上传目录 // 判断目标路径是否存在,如果不存在则创建 if (!file_exists($uploadPath)) { mkdir($uploadPath, 0777, true); } $path = "https://nb.9169kkxstzsjkdd222.app/task/user/"; $task_require_img_str=''; $upload = new \Think\Upload(); // 实例化图片上传类 $upload->maxSize = 0; //设置附件上传大小 $upload->exts = array('jpg', 'gif', 'png', 'jpeg',"PNG","JPG","GIF","JPEG");// 设置附件上传类型 $upload->rootPath = "/home2/task/user/"; // 设置附件上传根目录 $info_task_yaoqiu = $upload->upload($task_require_img); if (!$info_task_yaoqiu){ // 上传错误提示错误信息 $this->error($upload->getError()); }else{ foreach ($info_task_yaoqiu as $key => $value) { $task_require_img_str .= $path . $value['savepath'] . $value['savename'] . ','; } } $arr['task_require_img']=trim($task_require_img_str,','); $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = $arr; echo json_encode($data); } /** * 提交任务 * @return void */ public function submit_task() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $task_id = $_POST['taskId']; $pt_id = $_POST['ptId'];//平台ID $pt_name = $_POST['ptName'];//平台名字 $video_url = $_POST['videoUrl'];// 视频地址 $wcrwImg = $_POST['images'];// 截图 $pt = $_POST['pt'];// 平台 $uid=$user_info['id']; if (empty($task_id) || empty($pt_id) || empty($video_url) || empty($wcrwImg)) { $this->returnDataAndSendMsg("平台ID或视频地址或截图信息不能为空"); die(); } //判断名字只能包含中文和字符 $pattern = '/^[\x{4e00}-\x{9fa5}a-zA-Z0-9]+$/u'; if (!preg_match($pattern, $pt_name)) { // $this->returnDataAndSendMsg("名称必须是中文、字母、数字"); // die(); } //封号处理 $is_dis_info = $this->check_pinglun_fenghao_rules("$uid"); if($is_dis_info['isFengjin']) { $this->returnDataAndSendMsg($is_dis_info["descripe"]); die(); } $task_info = M("dy_ks_task")->where("id='$task_id' AND status=0")->find(); if(empty($task_info)) { $this->returnDataAndSendMsg("任务已不存在"); die(); } $task_type = $task_info['type'];//任务类型,抖音视频发布、快手视频发布、抖音评论、快手评论 $type_info = M("dy_ks_task_type")->where("type='$task_type'")->find(); $max_push_num = $type_info['max_push_num']; //每天最大提交数量 $delayed_show_num = $type_info['delayed_show']; //延迟显示小时数 if(!empty($max_push_num) && $max_push_num>0) { //验证一天内提交次数 $check_num = M("dy_ks_orders")->where("pt_id = '$pt_id' and type = '$task_type' AND status_ != 3 AND DATE(apply_date) = CURDATE()")->count(); if($check_num>=$max_push_num) { $this->returnDataAndSendMsg($max_push_num); die(); } } //账号信息检查,1个69账号绑定多个抖音/快手号(排他) $check_exist = M("dy_ks_orders")->where("uid!='$uid' AND pt_id = '$pt_id' and type = '$task_type' or uid!='$uid' AND pt_id = '$pt_id' and type = '$task_type' AND pt_name='$pt_name'")->field("id")->find(); if(!empty($check_exist)) { $this->returnDataAndSendMsg("此账号已被其他9169账号绑定"); die(); } //防止重复提交 $check_rep = M("dy_ks_orders")->where("pt_id = '$pt_id' and type = '$task_type' AND video_url='$video_url' AND status_ != 3")->count(); if($check_rep>0) { $this->returnDataAndSendMsg("同视频下面同账号
只能评论1次
1个=待审核+审核通过,不包含被驳回"); die(); } $add_info['uid']=$user_info['id']; $add_info['t_id']=$task_id; $add_info['type']=$task_type; $add_info['amount']=$task_info['amount']; $add_info['pt']=$pt; $add_info['pt_id']=$pt_id; $add_info['pt_name']=$pt_name; $add_info['video_url']=$video_url; $add_info['wc_rw_img']=$wcrwImg; $add_info['apply_date']=date('Y-m-d H:i:s'); $show_data = date('Y-m-d H:i:s', strtotime("+$delayed_show_num hour")); $add_info['show_date']=$show_data; $add_info['pt_and_id']=$pt.$pt_id; $rs = M("dy_ks_orders")->add($add_info); $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = $rs; echo json_encode($data); } /** * 视频号任务提交 * @return void */ public function submit_task_for_video() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $task_id = $_POST['taskId']; $pt_id = $_POST['ptId'];//视频号名字 $wcrwImg = $_POST['images'];// 截图 $pt = $_POST['pt'];// 平台 $sucai_number = $_POST['sucaiNumber'];// 素材编码 $uid=$user_info['id']; if (empty($task_id)|| empty($pt) || empty($pt_id) || empty($wcrwImg)) { $this->returnDataAndSendMsg("视频号名或截图信息不能为空,请正确添加交单内容"); die(); } //非空检查 $task_info = M("dy_ks_task")->where("id='$task_id'")->find(); if(empty($task_info)) { $this->returnDataAndSendMsg("任务已不存在"); die(); } $sucai_number_info = M("dy_ks_sucai_video")->where("id='$sucai_number'")->find(); if(empty($sucai_number_info)) { $this->returnDataAndSendMsg("素材不存在"); die(); } //判断用户是否被封禁了 $is_fenjin = $this->is_check_shipinhao($uid,$task_info['type'],"dy_ks_sucai_video","视频号"); if(!empty($is_fenjin) && $is_fenjin["isFengjin"]) { $this->returnDataAndSendMsg($is_fenjin["descripe"]); die(); } //视频号需要和绑定的素材一致 if($sucai_number_info['weixinhao_name']!=$pt_id) { $this->returnDataAndSendMsg("请用".$sucai_number_info['weixinhao_name']."视频号提交任务"); die(); } //判断是否在30分钟以内提交 $lock_time = strtotime($sucai_number_info["down_date"]); $now = time(); $difference = $now - $lock_time; if ($difference > 30 * 60) { $this->returnDataAndSendMsg("超时提交"); die(); } $task_type = $task_info['type'];//视频号视频发布 //判断是否有其他用户提交相同视频号名 $order_check = M("dy_ks_orders")->where("uid != '$uid' AND pt_id = '$pt_id' AND type='$task_type'")->find(); if(!empty($order_check)) { $this->returnDataAndSendMsg("已有其他用户提交该视频号"); die(); } //流程没有审核完成,不允许提交 $order_check_rp = M("dy_ks_orders")->where("uid = '$uid' AND pt_id = '$pt_id' AND type = '$task_type' AND status_ not in(2,3,5) ")->find(); if(!empty($order_check_rp)) { $this->returnDataAndSendMsg("您的视频号还有正在进行中的任务暂未完成,请勿重复提交"); die(); } $add_info['uid']=$user_info['id']; $add_info['t_id']=$task_id; $add_info['type']=$task_type; $add_info['amount']=$task_info['amount']; $add_info['pt']=$pt; $add_info['pt_id']=trim($pt_id); $add_info['wc_rw_img']=$wcrwImg; $add_info['apply_date']=date('Y-m-d H:i:s'); $add_info['pt_and_id']=$pt.$pt_id; $add_info['sucai_id']=$task_info['sc_id']; $add_info['sucai_number']=$sucai_number; $rs = M("dy_ks_orders")->add($add_info); if($rs>0) { //解锁素材 $sucai_unlock["status"]=1;//是否可用 0 可用 1 不可用 $sucai_unlock["is_lock"]=0;//解锁 $sucai_unlock["task_order_id"]=$rs;//订单ID $rs = M("dy_ks_sucai_video")->where("id='$sucai_number'")->save($sucai_unlock); } $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = $rs; echo json_encode($data); } /** * 申诉 * @return void */ public function submit_task_for_video_appeal() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $orderId=$_POST['orderId']; $appeal_images=$_POST['appealImages']; if(empty($orderId)) { $this->returnDataAndSendMsg("任务标识不能为空"); die(); } if(empty($appeal_images)) { $this->returnDataAndSendMsg("申诉证明不能为空"); die(); } $order_info = M("dy_ks_orders")->where("id='$orderId'")->find(); if(empty($order_info)) { $this->returnDataAndSendMsg("无效数据"); die(); } if($order_info['status_']!=3) { $this->returnDataAndSendMsg("非驳回状态,请勿申诉"); die(); } $dateToCheck = strtotime($order_info['bh_date']); $currentTime = time(); $difference = $currentTime - $dateToCheck; if ($difference > 86400) { $this->returnDataAndSendMsg("申诉必须在驳回24小时内"); die(); } $order_info['status_']=4; $order_info['appeal_time']=date('Y-m-d H:i:s'); $order_info['appeal_images']=$appeal_images; $rs = M("dy_ks_orders")->where("id='$orderId'")->save($order_info); $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = $rs; echo json_encode($data); } /** * 查询用户任务 * @return void */ public function get_user_task_info() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $id = $_POST['id']; $uid = $user_info['id']; $order_info = M("dy_ks_orders")->where("id = '$id' AND uid = '$uid'")->find(); $task_id = $order_info['t_id']; if(!empty($task_id)) { $order_info['task_info'] = M("dy_ks_task")->where("id='$task_id'")->find(); } //通过或者驳回24是否超过24小时 $order_info['isPass24h'] = false; $currentTimestamp = time(); // Now if($order_info['status_']==1 || 2==$order_info['status_']) { //通过 $givenTimestamp = strtotime($order_info['tg_date']); $timeDifference = $currentTimestamp - $givenTimestamp; if ($timeDifference > 86400) { $order_info['isPass24h'] = true; } } if($order_info['status_']==3 ) { //通过 $givenTimestamp = strtotime($order_info['bh_date']); $timeDifference = $currentTimestamp - $givenTimestamp; if ($timeDifference > 86400) { $order_info['isPass24h'] = true; } } $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = $order_info; echo json_encode($data); } /** * 查询审核列表 * @return void */ public function query_audit_list() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $uid = $user_info['id']; $status=$_POST['status']; //'0 待审核 1视频1轮通过 2视频2轮通过/评论通过审核 3 被驳回 4.申诉中 5 申诉被再次驳回 $page = $_POST['page']; $one_size = empty($_POST['pageSize'])?30:$_POST['pageSize']; //每頁30行記錄 $page_one = ($page - 1) * $one_size; $status_sql = "AND status_='$status'"; if($status==-1) { $status_sql = ""; } if($status==-2) { //状态为0和1(审核中) $status_sql = "AND status_=0 OR uid = '$uid' AND status_=1 OR uid = '$uid' AND status_=4"; } if($status==3) { //状态为0和1 $status_sql = "AND status_=3 OR uid = '$uid' AND status_=5"; } $data_list = M("dy_ks_orders")->where("uid = '$uid' ".$status_sql)->LIMIT($page_one, $one_size)->order("apply_date DESC")->select(); $data['code'] = '200'; $data['message'] = 'ok'; $data['all_num'] = M("dy_ks_orders")->where("uid = '$uid' ".$status_sql)->count(); // //状态汇总数量 // $data['full_num']=M("dy_ks_orders")->where("uid = '$uid'")->count(); // $data['auditing_num']=M("dy_ks_orders")->where("uid = '$uid' AND status_=0 OR status_=1")->count(); // $data['pass_num']=M("dy_ks_orders")->where("uid = '$uid' AND status_=2")->count(); // $data['reject_num']=M("dy_ks_orders")->where("uid = '$uid' AND status_=3")->count(); $data['data'] = $data_list; echo json_encode($data); } /** * 获取审核状态条目汇总 * @return void */ public function query_satus_number() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $uid = $user_info['id']; $data['code'] = '200'; $data['message'] = 'ok'; $data['full_num']=M("dy_ks_orders")->where("uid = '$uid'")->count(); $data['auditing_num']=M("dy_ks_orders")->where("uid = '$uid' AND status_=0 OR uid = '$uid' AND status_=1 OR uid = '$uid' AND status_=4")->count(); $data['pass_num']=M("dy_ks_orders")->where("uid = '$uid' AND status_=2")->count(); $data['reject_num']=M("dy_ks_orders")->where("uid = '$uid' AND status_=3 OR uid = '$uid' AND status_=5")->count(); echo json_encode($data); } /** * 获取验证码 * @return void */ public function getSms() { $this->addHeaders(); //添加头部请求 $this->checkUserIsExist($_POST['uid']); //检查用户 $telPhone = $_POST['telPhone']; $uid= $_POST['uid']; if(empty($telPhone)) { $this->returnDataAndSendMsg("手机号码不能为空"); die(); } //这几个前缀的手机号是虚拟号码 $phoneDuan=array("162","165","167","170","171"); if (in_array(substr($telPhone,0,3),$phoneDuan)) { $this->returnDataAndSendMsg("手机号格式错误"); die; } $user_info = M("user_info")->where("tk_phone = '$telPhone' AND id!='$uid'")->find(); if(!empty($user_info)) { $this->returnDataAndSendMsg("该手机号码已被其他用户绑定,请更换号码"); die(); } //判断重复发送 $sms_info_check = M("sms")->where("tel_phone='$telPhone' AND type_='用户信息绑定' AND create_at > NOW() - interval sms_valid_time second")->find(); if(!empty($sms_info_check)) { $this->returnDataAndSendMsg("在60秒内请勿重复发送"); die(); } //下发短信 $random_number = mt_rand(100000, 999999); $rs = $this->sendMessage($telPhone,$random_number); //存库 $sms_info['tel_phone']=$telPhone; $sms_info['type_']="用户信息绑定"; $sms_info['sms_code']=$random_number; $sms_info['sms_valid_time']=60; $sms_info['create_at']=date('Y-m-d H:i:s'); M("sms")->add($sms_info); $data['code'] = '200'; $data['message'] = 'ok'; echo json_encode($data); } /** * 绑定手机号 * @return void */ public function bind_tel() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $uid = $user_info['id']; $telPhone = $_POST['telPhone']; $smsNumber= $_POST['smsNumber']; if(empty($telPhone)) { $this->returnDataAndSendMsg("手机号码不能为空"); die(); } if(empty($smsNumber)) { $this->returnDataAndSendMsg("短信验证码不能为空"); die(); } //验证短信 $sms_info_check = M("sms")->where("sms_code='$smsNumber' AND create_at > NOW() - interval sms_valid_time second")->find(); if(empty($sms_info_check) || $sms_info_check['sms_code']!=$smsNumber) { $this->returnDataAndSendMsg("短信验证码过期或输入有误"); die(); } $user_info = M("user_info")->where("tk_phone = '$telPhone' AND id!='$uid'")->find(); if(!empty($user_info)) { $this->returnDataAndSendMsg("该手机号码已被其他用户绑定,请更换号码"); die(); } $user_info['tk_phone'] = $telPhone; $rs = M("user_info")->where("id='$uid'")->save($user_info); $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = $rs; echo json_encode($data); } /** * 获取用户信息 * @return void */ public function get_user_info() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $uid = $user_info['id']; $rs_info['uid']= $user_info['id']; $rs_info['note_phone']= $user_info['tk_phone']; $rs_info['balance']= $user_info['balance']; $count_info = M("dy_ks_tixian")->field("SUM(amount_) as amount_")->where("uid='$uid' and status_>=3 and tongji=0")->find(); $rs_info['total_money']= $count_info['amount_']; $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = $rs_info; echo json_encode($data); } /** * 提现条目汇总 * @return void */ public function query_tx_satus_number() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $uid = $user_info['id']; $data['code'] = '200'; $data['message'] = 'ok'; $data['un_pay_num']=M("dy_ks_tixian")->where("uid = '$uid' AND status_=1")->count(); $data['un_draw_num']=M("dy_ks_tixian")->where("uid = '$uid' AND status_=3")->count(); $data['finsh_num']=M("dy_ks_tixian")->where("uid = '$uid' AND status_=5")->count(); echo json_encode($data); } /** * * 获取提现列表 * @return void */ public function query_tx_list() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $uid = $user_info['id']; $status=$_POST['status']; //1 待打款 3 待领取(后台已发红包) 5.已完成(24小时后自动刷新)' $page = $_POST['page']; $one_size = empty($_POST['pageSize'])?30:$_POST['pageSize']; //每頁30行記錄 $page_one = ($page - 1) * $one_size; $data_list = M("dy_ks_tixian") ->LIMIT($page_one, $one_size) ->where("uid = '$uid' AND status_ = $status") ->order("apply_time DESC") ->select(); $data['code'] = '200'; $data['message'] = 'ok'; $data['all_num'] =M("dy_ks_tixian") ->where("uid = '$uid' AND status_ = $status")->count(); $data['data'] = $data_list; echo json_encode($data); } /** * * 检查任务是否已经开始 * @return void */ public function check_task_start() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $type = $_POST['type']; if(empty($type)) { $this->returnDataAndSendMsg("任务类型不能为空."); die(); } $type_info = M("dy_ks_task_type")->where("type='$type'")->find(); if(empty($type_info)) { $this->returnDataAndSendMsg("该任务类型已不存在."); die(); } $start_time = strtotime(date("Y-m-d")." ".$type_info["start_time"]); $end_time = strtotime(date("Y-m-d")." ".$type_info["end_time"]); $curent_data = strtotime(date('Y-m-d H:i:s')); $is_start = false; if($start_time<=$curent_data && $curent_data<=$end_time) { //时间范围内 $is_start = true; } $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = $is_start; $data['startTime'] = $type_info["start_time"]; $data['endTime'] = $type_info["end_time"]; echo json_encode($data); } /** * 素材下载 * @return void */ public function down_sucai() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $scId = $_POST['scId']; //素材ID $type = $_POST['type']; //任务类型 $task_id = $_POST['taskId']; //任务ID $uid = $user_info["id"]; $weixin_name = $_POST['wxName']; //微信号 if(empty($scId)) { $this->returnDataAndSendMsg("素材ID不能为空."); die(); } if(empty($task_id)) { $this->returnDataAndSendMsg("任务ID不能为空"); die(); } if(empty($type)) { $this->returnDataAndSendMsg("任务类型不能为空"); die(); } if(empty($weixin_name)) { $this->returnDataAndSendMsg("微信名不能为空"); die(); } $type_info = M("dy_ks_task_type")->where("type='$type'")->find(); if(empty($type_info)) { $this->returnDataAndSendMsg("该任务类型已不存在"); die(); } //判断用户是否被封禁了 $is_fenjin = $this->is_check_shipinhao($uid,$type,"dy_ks_sucai_video","视频号"); if(!empty($is_fenjin) && $is_fenjin["isFengjin"]) { $this->returnDataAndSendMsg($is_fenjin["descripe"]); die(); } //判断时间,需要再结束时间倒退30分钟 $start_time = strtotime(date("Y-m-d")." ".$type_info["start_time"]); $end_time = strtotime('-30 minutes', strtotime(date("Y-m-d")." ".$type_info["end_time"])); $curent_data = strtotime(date('Y-m-d H:i:s')); if($curent_data<$start_time || $curent_data>$end_time) { //不在做任务时间 //$this->returnDataAndSendMsg("每天19:00~1:30开启,请下次再来."); //die(); } //判断用户是否已经在做任务 $this->check_task_ing($uid,null); //流程没有审核完成,不允下载素材 $this->check_rept_down_in_flow($uid,$weixin_name,$type); //获取素材库 $app_info = M("dy_ks_sucaiku")->field("id")->where("appid='$scId'")->find(); $scId=$app_info['id']; $sucai_info = M("dy_ks_sucai_video")->where("status = 0 AND is_lock=0 AND sc_id='$scId'")->find(); if(empty($sucai_info)) { //没有有效素材 $this->returnDataAndSendMsg("视频素材已被抢空
请稍后再来下载吧"); die(); } $sucai_info["down_date"]=date('Y-m-d H:i:s'); $sucai_info["is_lock"]=1; $sucai_info["uid"]=$uid; $sucai_info["task_id"]=$task_id; $sucai_info["weixinhao_name"]=$weixin_name; M("dy_ks_sucai_video")->save($sucai_info); $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = $sucai_info; echo json_encode($data); } /** * 判断用户是否有正在做的任务,如果正在做任务则中断(一个用户有且只能同时做一个视频号任务) * @param $uid * @return void */ protected function check_task_ing($uid,$tab_name) { if(empty($tab_name)) { $tab_name = "dy_ks_sucai_video"; } $check_info = M($tab_name)->where(" uid = '$uid' AND is_lock =1")->find(); if(!empty($check_info)) { $this->returnDataAndSendMsg("您已下载素材,请尽快提交任务"); die(); } } /** * 当审核流程未审配通过或驳回,不允许重复下载任务 * @param $uid * @param $pt_id * @param $type * @return void */ protected function check_rept_down_in_flow($uid,$pt_id,$type) { //流程没有审核完成,不允下载素材 $order_check_rp = M("dy_ks_orders")->where("uid = '$uid' AND pt_id = '$pt_id' AND type = '$type' AND status_ not in(2,3,5) ")->find(); if(!empty($order_check_rp)) { $this->returnDataAndSendMsg("您的任务正在审核中,请勿重复任务"); die(); } } /** * 通过ID查询素材 * @return void */ public function get_sucai_by_id() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $id = $_POST['id']; $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = M("dy_ks_sucai_video")->where("id='$id'")->find(); echo json_encode($data); } /** * 用户提现 * @return void */ public function user_tx() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $uid = $user_info['id']; $money = $_POST['money']; //封号不能提现 // $check_info = $this->get_is_disabled_account($uid); // if($check_info['isDisable']) // { // $this->returnDataAndSendMsg("账号已被封
禁止提现"); // die(); // } //下午3点到晚上9点不允许提现,2.38 // $current_time = strtotime(date("H:i")); // $afternoon_start = strtotime("15:00"); // $evening_end = strtotime("21:00"); // if ($current_time >= $afternoon_start && $current_time <= $evening_end) { // $this->returnDataAndSendMsg("21:00~15:00,之间的18小时
可以进行提款"); // die(); // } $arra_money =array(50,100,200,300); if(!in_array($money,$arra_money)) { $this->returnDataAndSendMsg("请输入正确取款金额"); die(); } //十分钟内提交 AND status_=1 $check_info = M("dy_ks_tixian")->where("uid = '$uid' AND apply_time > NOW() - INTERVAL 1 MINUTE")->order("apply_time desc")->find(); if(!empty($check_info)) { $this->returnDataAndSendMsg("提款需间隔1分钟"); die(); } if($money>$user_info['balance']) { $this->returnDataAndSendMsg("余额不足"); die(); } //减掉用户余额 $user_balance = $user_info['balance']; $is_ok = M("user_info")->where("id='$uid' AND balance = $user_balance")->setDec("balance",$money); if(!$is_ok) { $this->returnDataAndSendMsg("余额扣减失败"); die(); } $add_info['uid']=$uid; $add_info['amount_']=$money; $add_info['apply_time']= date("Y-m-d H:i:s"); $add_info['status_']=1; $rs = M("dy_ks_tixian")->add($add_info); $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = $rs; echo json_encode($data); } /** * * 判断用户是否被封禁 * @return void */ public function query_satus_by_uid() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $uid = $user_info['id']; $type = $_POST['type']; $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = $this->is_check_shipinhao($uid,$type,"dy_ks_sucai_video","视频号"); echo json_encode($data); } /** * * 验证视频号是否可用 * @return void */ public function yanz_video_task() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $uid = $user_info['id']; $wxName = $_POST['wxName']; $type = $_POST['type'];//视频类型,抖音或者视频号 $tishi_ci = $_POST['prompt'];//提示词 if(empty($tishi_ci)) { //默认视频号 $tishi_ci = '视频号'; } if(empty($type)) { $type = TaskManagerController::SHIPNGHAO_TYPE; } if(empty($wxName)) { $this->returnDataAndSendMsg($tishi_ci."不能为空"); die(); } //判断视频号名是否被其他用户绑定 $check_info = M("dy_ks_orders")->field("id")->where("uid!='$uid' AND pt_id='$wxName'")->find(); if(!empty($check_info)) { $this->returnDataAndSendMsg($tishi_ci."已被其他人绑定"); die(); } $tab_name = null; if($type==TaskManagerController::DOUYIN_TYPE) { $tab_name = TaskManagerController::DOUYIN_SU_CAI_BIAO_NAME; } if($type==TaskManagerController::KUAISHOU_TYPE) { $tab_name = TaskManagerController::KUAISHOU_SU_CAI_BIAO_NAME; } if($type==TaskManagerController::WX_SHARE_TYPE) { $tab_name = TaskManagerController::WX_SHARE_SU_CAI_BIAO_NAME; } $this->check_task_ing($uid,$tab_name); //判断视频号名是否有正在进行中的任务 $check_info = M("dy_ks_orders")->field("id")->where("uid='$uid' AND pt_id='$wxName' AND status_ NOT IN (2,3,5) AND type='$type'")->find(); if(!empty($check_info)) { $this->returnDataAndSendMsg($tishi_ci."有进行中的任务"); die(); } $data['code'] = '200'; $data['data'] = 'ok'; $data['message'] = $tishi_ci.'可用'; echo json_encode($data); } /** * 判断用户是否被禁用 * @param $uid * @param $type 任务类型 * @param $sucai_tabe_name 素材表名 * @param $tishi_ci 类型提示词 * @return array */ protected function is_check_shipinhao($uid,$type,$sucai_tabe_name,$tishi_ci) { $data_info["isFengjin"]=false;//是否封禁 $data_info["descripe"]="";//是否封禁 $data_info["isDown"]=false;//是否下载视频 $data_info["sucaiInfo"]=null;//素材信息 //tabname:dy_ks_sucai_video $lock_info = M($sucai_tabe_name)->where("uid='$uid' AND is_lock=1")->find(); if(!empty($lock_info)) { $data_info["isDown"]=true;//是否下载视频 $data_info["sucaiInfo"]=$lock_info; } //判断封禁 $context_num = M("dy_ks_orders")->field("id") ->where("uid = '$uid' AND status_ >=3 AND appeal_result in ('虚假垃圾达到1次,账号已被封','被驳回,账号已被封') AND type='$type'") ->count(); if($context_num>0) { $data_info["isFengjin"]=true; $data_info["descripe"]="虚假垃圾达到1次
已永久禁止做".$tishi_ci."代发任务"; } $data_info["finsh_time"] = strtotime("+30 minutes",strtotime($lock_info["down_date"])); $data_info["curent_time"] = strtotime(date('Y-m-d H:i:s')); if(!empty($lock_info) && $data_info["curent_time"]>$data_info["finsh_time"]) { //长期不提交任务 $data_info["isFengjin"]=true;//是否封禁=true; $data_info["descripe"]="未按照规定时间提交任务
已永久禁止做".$tishi_ci."代发任务"; $data_info["isDown"]=true;//是否下载视频 } //按照IP全局封禁 $data_info["isGlobalFj"]=false; //全局封禁 $user_info = M("user_info")->field("userip")->where("id='$uid'")->find(); $user_ip = $user_info["userip"]; $count_fj = M("dy_ks_beifeng")->field("id")->where("userip = '$user_ip'")->count(); if($count_fj>=5) { $data_info["isGlobalFj"]=true; //全局封禁 $data_info["isFengjin"]=true;//是否封禁 $data_info["descripe"]="您涉及作弊已被封禁"; } return $data_info; } /** * * 品论是否被封号 * @param $uid * @return void */ private function check_pinglun_fenghao_rules($uid) { $data_info["isFengjin"]=false;//是否封禁 $data_info["descripe"]="";//是否封禁 $context_num = M("dy_ks_orders")->field("id")->where("uid = '$uid' AND status_ =3 AND bh_reasons = '虚假/垃圾内容,3次以上将被封号' AND type!='视频号视频发布'")->count(); if($context_num>=3) { $data_info["isFengjin"]=true;//是否封禁 $data_info["descripe"]="提交3次以上虚假/垃圾内容
已永久停止做任务"; } return $data_info; } /** * 判斷用戶是否被封禁 * @param $uid * @return void */ protected function get_is_disabled_account($uid) { $rs["isDisable"]=false; $rs["hasAppeal"]=false; //是否申诉过 //检查评论是否被封 $is_dis_info = $this->check_pinglun_fenghao_rules("$uid"); if($is_dis_info['isFengjin']) { $rs["isDisable"]=true; $rs['评论']["isFengjin"]=$is_dis_info["isFengjin"]; $rs['评论']["descripe"]=$is_dis_info["descripe"]; } //检查视频号是被封 $is_dis_info = $this->is_check_shipinhao("$uid","视频号视频发布","dy_ks_sucai_video","视频号"); if($is_dis_info['isFengjin']) { $rs["isDisable"]=true; $rs['视频号']["isFengjin"]=$is_dis_info["isFengjin"]; $rs['视频号']["descripe"]=$is_dis_info["descripe"]; } //抖音视频是被封 $is_dis_info = $this->is_check_shipinhao("$uid",TaskManagerController::DOUYIN_TYPE,TaskManagerController::DOUYIN_SU_CAI_BIAO_NAME,TaskManagerController::DOUYING_TI_SHI_CI); if($is_dis_info['isFengjin']) { $rs["isDisable"]=true; $rs['抖音视频']["isFengjin"]=$is_dis_info["isFengjin"]; $rs['抖音视频']["descripe"]=$is_dis_info["descripe"]; } //快手视频是被封 $is_dis_info = $this->is_check_shipinhao("$uid",TaskManagerController::KUAISHOU_TYPE,TaskManagerController::KUAISHOU_SU_CAI_BIAO_NAME,TaskManagerController::KUAISHOU_TI_SHI_CI); if($is_dis_info['isFengjin']) { $rs["isDisable"]=true; $rs['快手视频']["isFengjin"]=$is_dis_info["isFengjin"]; $rs['快手视频']["descripe"]=$is_dis_info["descripe"]; } //微信分享 $is_dis_info = $this->is_check_shipinhao("$uid",TaskManagerController::WX_SHARE_TYPE,TaskManagerController::WX_SHARE_SU_CAI_BIAO_NAME,TaskManagerController::WX_SHARE_SHI_CI); if($is_dis_info['isFengjin']) { $rs["isDisable"]=true; $rs['微信群分享']["isFengjin"]=$is_dis_info["isFengjin"]; $rs['微信群分享']["descripe"]=$is_dis_info["descripe"]; } //按照IP全局封禁 $rs["isGlobalFj"]=false; //全局封禁 $user_info = M("user_info")->field("userip")->where("id='$uid'")->find(); $user_ip = $user_info["userip"]; $count_fj = M("dy_ks_beifeng")->field("id")->where("userip = '$user_ip'")->count(); if($count_fj>=5) { $rs["isGlobalFj"]=true; //全局封禁 } return $rs; } /** * 检查账号是否被封 * @return void */ public function is_disabled_account($uid) { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $uid = $user_info['id']; $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = $this->get_is_disabled_account($uid); echo json_encode($data); } /** * 用户申诉 * @return void */ public function appeal_for_user() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $uid = $user_info['id']; $content_txt = $_POST['content']; $images = $_POST['images']; if(empty($content_txt)) { $this->returnDataAndSendMsg("申诉内容不能为空"); die(); } if(empty($images)) { // $this->returnDataAndSendMsg("申诉图片不能为空"); // die(); } //只有一次申诉机会 $check_info = M("dy_ks_task_shensu")->where("uid='$uid'")->field("id")->find(); if(!empty($check_info)) { $this->returnDataAndSendMsg("已申诉,请勿重复申请"); die(); } $add_info["uid"]=$uid; $add_info["content_txt"]=trim($content_txt); $add_info["images_"]=$images; $add_info["creater_at"]=date("Y-m-d H:i:s");; $rs= M("dy_ks_task_shensu")->add($add_info); $data['code'] = '200'; $data['data'] = $rs; $data['message'] = 'ok'; echo json_encode($data); } /** * 自动解封 * @return void */ public function task_auto_pass() { $this->addHeaders(); //添加头部请求 $data_list = M("dy_ks_task_shensu")->field("id,uid")->where("audit_status = 0 AND creater_at <= NOW() - INTERVAL 24 HOUR")->select(); foreach ($data_list as $key=>$value) { $uid = $value["uid"]; $rule_info = $this->get_is_disabled_account($uid); //检查评论是否被封 if(!empty($rule_info["评论"]) && $rule_info["评论"]["isFengjin"]) { $this->pinglun_jiesuo($uid); }//end 评论 if(!empty($rule_info["视频号"]) && $rule_info["视频号"]["isFengjin"]) { $this->shiph_jiesuo($uid); } $update_info["audit_status"]=1; $id = $value["id"]; M("dy_ks_task_shensu")->where("id=$id")->save($update_info); }//end for $data['code'] = '200'; $data['message'] = 'ok'; echo json_encode($data); } /** * 评论解锁 * @param $uid * @return void */ private function pinglun_jiesuo($uid) { $update_info["bh_reasons"]="虚假/垃圾内容,3次以上将被封号+1"; $rs = M("dy_ks_orders")->where("uid = '$uid' AND status_ >=3 AND bh_reasons = '虚假/垃圾内容,3次以上将被封号' AND type!='视频号视频发布'")->save($update_info); return $rs; } /** * 视频号解锁 * @param $uid * @return void */ private function shiph_jiesuo($uid) { $update_info["bh_reasons"]="虚假垃圾达到1次,账号已被封+1"; $rs = M("dy_ks_orders")->where("uid = '$uid' AND status_ =3 AND bh_reasons = '虚假垃圾达到1次,账号已被封' AND type='视频号视频发布'")->save($update_info); $rs1 = M("dy_ks_sucai_video")->where("uid='$uid' AND is_lock=1")->delete(); return $rs1; } public function get_sai_dan() { $this->addHeaders(); $data_top_100 = M("dy_ks_tixian")->field("uid ,SUM(amount_) AS amount_")->group("uid")->order("rand()")->limit(30)->select(); foreach ($data_top_100 as $key=>$value) { $uid = $value['uid']; $user_info = M("user_info")->field("name")->where("id=$uid")->find(); $data_top_100[$key]['name']=$user_info['name']; } $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = $data_top_100; echo json_encode($data); } /** * 判断用户是否封禁 * @return void */ public function is_fj_for_user() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $uid = $user_info["id"]; $type = $_POST['type']; if(empty($type)) { $this->returnDataAndSendMsg("任务类型不能为空"); die(); } $rs = false; //没有封禁 $fj_info = M("dy_ks_beifeng")->field("id")->where("uid='$uid' AND type='$type'")->find(); if(!empty($fj_info)) { $rs = true; //封禁 } $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = $rs; echo json_encode($data); } }