gdoo/app/Gdoo/Index/Controllers/AuditController.php

72 lines
2.1 KiB
PHP

<?php namespace Gdoo\Index\Controllers;
use Gdoo\User\Models\UserAsset;
use Gdoo\Index\Models\Menu;
use View;
use Validator;
use DB;
use Request;
use App\Support\AES;
use App\Support\Hook;
use Gdoo\Model\Models\Bill;
use Gdoo\Model\Models\Model;
class AuditController extends DefaultController
{
public function __construct()
{
parent::__construct();
}
/**
* 审核
*/
public function audit()
{
if (Request::method() == 'POST') {
$key = Request::get('key');
$keys = AES::decrypt($key, config('app.key'));
list($bill_id, $data_id) = explode('.', $keys);
$bill = Bill::find($bill_id);
$model = Model::find($bill->model_id);
DB::beginTransaction();
try {
Hook::fire($model->table.'.onBeforeAudit', ['table' => $model->table, 'id' => $data_id]);
DB::table($model->table)->where('id', $data_id)->update(['status' => 1]);
DB::commit();
return $this->json($bill->name.'审核成功', true);
} catch(\Exception $e) {
DB::rollBack();
return $this->json($e->getMessage());
}
}
}
/**
* 弃审
*/
public function abort()
{
if (Request::method() == 'POST') {
$key = Request::get('key');
$keys = AES::decrypt($key, config('app.key'));
list($bill_id, $data_id) = explode('.', $keys);
$bill = Bill::find($bill_id);
$model = Model::find($bill->model_id);
DB::beginTransaction();
try {
Hook::fire($model->table.'.onBeforeAbort', ['table' => $model->table, 'id' => $data_id]);
DB::table($model->table)->where('id', $data_id)->update(['status' => 0]);
DB::commit();
return $this->json($bill->name.'弃审成功', true);
} catch(\Exception $e) {
DB::rollBack();
return $this->json($e->getMessage());
}
}
}
}