提交审核


上一篇 : 刷手接取任务 下一篇: 处理审核记录



1 新建数据库

CREATE TABLE `up61_task_check` (

  `id` bigint(20) NOT NULL AUTO_INCREMENT,

  `apply_id` bigint(20) NOT NULL COMMENT '接单表id',

  `img_url` varchar(100) NOT NULL COMMENT '图片链接',

  `step` tinyint(1) NOT NULL COMMENT '1 第一次审核 2第二次审核',

  `user_id` bigint(20) NOT NULL COMMENT '用户id',

  `create_time` datetime NOT NULL COMMENT '创建时间',

  `update_time` datetime NOT NULL COMMENT '修改时间',

  `status` tinyint(1) NOT NULL COMMENT '0 已提交 1 通过 2 拒绝',

  PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4;


2 task 数据库 新增 is_finish字段 


3 task控制器中

/**
* 提交审核
* step 1第一次 2 第二次提交审核
*/
public function submitExamine(){
   $user_id = $this->getUserId();
   $validate = new Validate([
       'apply_id' => 'require|integer',
       'step' => 'require|integer|in:1,2',
       'img_url' => 'require',
   ]);
   $validate->message([
       'apply_id.require' => '请选择任务!',
       'step.require' => '无效参数!',
       'apply_id.integer' => '无效参数!',
       'step.integer' => '无效参数!',
       'img_url.integer' => '请上传待审核的图片!',
   ]);

   $data = $this->request->param();
   if (!$validate->check($data)) {
       $this->error($validate->getError());
   }
   $apply_id = $data['apply_id'];
   $step = $data['step'];
   $img_url = $data['img_url'];

   $applyTaskModel = ApplyTaskModel::get($apply_id);
   if(empty($applyTaskModel)){
       $this->error('您没有领取该任务,无权限进行操作');
   }

   if($applyTaskModel->user_id != $user_id){
       $this->error('您没有权限操作');
   }

   $taskModel = TaskModel::get($applyTaskModel->task_id);
   if(empty($taskModel)){
       $this->error('任务不存在');
   }


   if($taskModel->pay_status != 1){
       $this->error('该任务还未支付,不能提交图片审核');
   }
   if($taskModel->is_finish){
       $this->error('任务已结束');
   }
   if($applyTaskModel->status == 6){
       $this->error('任务已完成');
   }

   if($step == 1){
       if( !($applyTaskModel->status == 0 || $applyTaskModel->status == 3) ){
           $this->error('非法操作');
       }
   }
   if($step == 2){
       if( !($applyTaskModel->status == 4 || $applyTaskModel->status == 5) ){
           $this->error('非法操作');
       }
   }

   $taskCheckModel = new TaskCheck();
   $taskCheckFind =  $taskCheckModel
       ->where('apply_id',$apply_id)
       ->where('step',$step)
       ->where('status in (0,1)')
       ->find();
   if($taskCheckFind){
       $this->error('不要重复提交');
   }else{
       //记录提交审核记录
       $taskCheckModel->user_id = $user_id;
       $taskCheckModel->apply_id = $apply_id;
       $taskCheckModel->img_url = $img_url;
       $taskCheckModel->step = $step;
       $taskCheckModel->allowField(true)->isUpdate(false)->save();

       //更新接单状态
       if($step == 1){
           $applyTaskModel->status = 1;
       }
       if($step == 2){
           $applyTaskModel->status = 2;
       }
       $applyTaskModel->allowField(true)->isUpdate(true)->save();
   }

   $this->success('提交成功');

}

4 新增taskCheck模型类

<?php
/**
* Created by PhpStorm.
* User: [一秋]
* Date: 2018/3/29
* Time: 14:43
* Desc: 成功源于点滴
*/

namespace app\index\model;


use think\Model;

class TaskCheck extends Model
{
   protected $autoWriteTimestamp = 'datetime';


}


5 新增路由


//提交审核
Route::post('task/submit','index/Task/submitExamine');


上一篇 : 刷手接取任务 下一篇: 处理审核记录