|
@@ -4,6 +4,8 @@ namespace app\admin\controller;
|
|
|
|
|
|
use app\common\controller\Backend;
|
|
|
use app\admin\model\Refund as Refund;
|
|
|
+use think\Db;
|
|
|
+
|
|
|
/**
|
|
|
*
|
|
|
*
|
|
@@ -72,15 +74,24 @@ class OrderInfoRefund extends Backend
|
|
|
}
|
|
|
|
|
|
public function audit($ids){
|
|
|
- $refund=$this->model->find($ids);
|
|
|
if($this->request->isGet()){
|
|
|
+ $refund=$this->model->find($ids);
|
|
|
$this->assign('refund',$refund);
|
|
|
return $this->fetch();
|
|
|
}else{
|
|
|
$data=input('row/a');
|
|
|
$this->validate($data,[
|
|
|
- 'refund_status'=>['require','in:'.Refund::REFUND_PASS.','.Refund::REFUND_REJECT],
|
|
|
+ 'refund_status'=>['require','in:1,2'],
|
|
|
]);
|
|
|
+ Db::startTrans();
|
|
|
+ $refund=$this->model->lock(true)->where('id',$ids)->findOrFail();
|
|
|
+ if(!$refund->allowAudit()){
|
|
|
+ Db::rollback();
|
|
|
+ $this->error('该申请已被审核');
|
|
|
+ }
|
|
|
+ $refund->makeAudit($data['refund_status']==1);
|
|
|
+ Db::commit();
|
|
|
+ $this->success();
|
|
|
}
|
|
|
}
|
|
|
}
|