This commit is contained in:
2023-03-08 09:16:04 +08:00
commit e78454540f
1318 changed files with 210569 additions and 0 deletions

View File

@@ -0,0 +1,25 @@
<?php
namespace Modules\Mall\Http\Controllers\Admin\Action\Order;
use Encore\Admin\Actions\Response;
use Encore\Admin\Actions\RowAction;
use Modules\Mall\Models\Order;
class Audit extends RowAction
{
public $name = '通过审核';
public function handle(Order $order): Response
{
try {
$order->pay();
return $this->response()->success('审核通过')->refresh();
} catch (\Exception $exception) {
return $this->response()->error($exception->getMessage())->refresh();
}
}
}

View File

@@ -0,0 +1,46 @@
<?php
namespace Modules\Mall\Http\Controllers\Admin\Action\Order;
use Encore\Admin\Actions\Response;
use Encore\Admin\Actions\RowAction;
use Illuminate\Http\Request;
use Modules\Mall\Models\Express;
use Modules\Mall\Models\Order;
use Modules\Mall\Models\OrderExpress;
class Delivered extends RowAction
{
public $name = '商品发货';
public function handle(Order $order, Request $request): Response
{
if ($request->type == OrderExpress::TYPE_EXPRESS && (empty($request->express_id) || empty($request->express_no))) {
return $this->response()->error('缺少快递公司或快递单号');
}
$result = $order->deliver($request->express_id, $request->express_no, $request->type, $request->person);
if ($result === true) {
return $this->response()->success('发货成功')->refresh();
} else {
return $this->response()->error('失败');
}
}
public function form()
{
$order = Order::find($this->getKey());
$expresses = $order->shop->expresses()->pluck('name', 'id');
$this->select('type', '方式')
->options(OrderExpress::TYPE_MAP)
->required();
$this->select('express_id', '物流')
->options($expresses);
$this->text('express_no', '物流单号');
$this->text('person', '经办人');
}
}

View File

@@ -0,0 +1,25 @@
<?php
namespace Modules\Mall\Http\Controllers\Admin\Action\Order;
use Encore\Admin\Actions\Response;
use Encore\Admin\Actions\RowAction;
use Modules\Mall\Models\Order;
class Pay extends RowAction
{
public $name = '支付测试-正式版本移除';
public function handle(Order $order): Response
{
try {
$order->pay();
return $this->response()->success('支付状态调整成功')->refresh();
} catch (\Exception $exception) {
return $this->response()->error($exception->getMessage())->refresh();
}
}
}

View File

@@ -0,0 +1,57 @@
<?php
namespace Modules\Mall\Http\Controllers\Admin\Action\Order;
use Encore\Admin\Actions\Response;
use Encore\Admin\Actions\RowAction;
use Encore\Admin\Facades\Admin;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Http\Request;
class RefundAudit extends RowAction
{
public $name = '审核';
public function handle(Model $model, Request $request): Response
{
$admin = Admin::user();
$state = $request->state;
$remark = $request->remark;
$res = false;
if (!$model->can('agree')) {
return $this->response()->error('不可操作')->refresh();
}
if ($state == 'agree') {
$res = $model->setOperator($admin)->agree($remark);
}
if ($state == 'refuse') {
$res = $model->setOperator($admin)->refuse($remark);
}
if ($res === true) {
return $this->response()->success('操作成功')->refresh();
}
return $this->response()->error('操作失败')->refresh();
}
public function form(Model $model)
{
$this->select('state', '状态')
->options([
'agree' => '通过',
'refuse' => '驳回',
])
->required();
$this->text('remark', '说明')
->default($express->number ?? '')
->required();
}
}

View File

@@ -0,0 +1,44 @@
<?php
namespace Modules\Mall\Http\Controllers\Admin\Action\Order;
use Encore\Admin\Actions\Response;
use Encore\Admin\Actions\RowAction;
use Encore\Admin\Facades\Admin;
use Modules\Mall\Models\Refund;
class RefundReturns extends RowAction
{
public $name = '退款';
public function handle(Refund $refund): Response
{
try {
$admin = Admin::user();
if (!$refund->can('completed')) {
return $this->response()->error('不可操作')->refresh();
}
$res = $refund->setOperator($admin)->returns();
if ($res === true) {
$refund->setOperator($admin)->complete();//设置完成
return $this->response()->success('操作成功')->refresh();
}
return $this->response()->error('操作失败')->refresh();
} catch (\Exception $exception) {
return $this->response()->error($exception->getMessage())->refresh();
}
}
public function dialog()
{
$this->confirm('您确定要打款吗');
}
}

View File

@@ -0,0 +1,42 @@
<?php
namespace Modules\Mall\Http\Controllers\Admin\Action\Order;
use Encore\Admin\Actions\Response;
use Encore\Admin\Actions\RowAction;
use Encore\Admin\Facades\Admin;
use Illuminate\Database\Eloquent\Model;
class RefundSign extends RowAction
{
public $name = '签收';
public function handle(Model $model): Response
{
try {
$admin = Admin::user();
if (!$model->can('sign')) {
return $this->response()->error('不可操作')->refresh();
}
$res = $model->setOperator($admin)->receive();
if ($res === true) {
return $this->response()->success('操作成功')->refresh();
}
return $this->response()->error('操作失败')->refresh();
} catch (\Exception $exception) {
return $this->response()->error($exception->getMessage())->refresh();
}
}
public function dialog()
{
$this->confirm('您确定已经收到货了吗');
}
}

View File

@@ -0,0 +1,32 @@
<?php
namespace Modules\Mall\Http\Controllers\Admin\Action\Shop;
use Encore\Admin\Actions\Response;
use Encore\Admin\Actions\RowAction;
use Modules\Mall\Models\Shop;
class Close extends RowAction
{
public $name = '关闭店铺';
public function handle(Shop $shop): Response
{
try {
if ($shop->close()) {
return $this->response()->success('店铺关闭成功')->refresh();
} else {
return $this->response()->error('店铺关闭失败')->refresh();
}
} catch (\Exception $exception) {
return $this->response()->error($exception->getMessage())->refresh();
}
}
public function dialog()
{
$this->confirm('确定关闭店铺吗?');
}
}

View File

@@ -0,0 +1,32 @@
<?php
namespace Modules\Mall\Http\Controllers\Admin\Action\Shop;
use Encore\Admin\Actions\Response;
use Encore\Admin\Actions\RowAction;
use Modules\Mall\Models\Shop;
class Open extends RowAction
{
public $name = '开启店铺';
public function handle(Shop $shop): Response
{
try {
if ($shop->open()) {
return $this->response()->success('店铺开启成功')->refresh();
} else {
return $this->response()->error('店铺开启失败')->refresh();
}
} catch (\Exception $exception) {
return $this->response()->error($exception->getMessage())->refresh();
}
}
public function dialog()
{
$this->confirm('确定开启店铺吗?');
}
}

View File

@@ -0,0 +1,32 @@
<?php
namespace Modules\Mall\Http\Controllers\Admin\Action\Shop;
use Encore\Admin\Actions\Response;
use Encore\Admin\Actions\RowAction;
use Modules\Mall\Models\Shop;
class Pass extends RowAction
{
public $name = '审核通过';
public function handle(Shop $shop): Response
{
try {
if ($shop->pass()) {
return $this->response()->success('审核通过成功')->refresh();
} else {
return $this->response()->error('审核通过失败')->refresh();
}
} catch (\Exception $exception) {
return $this->response()->error($exception->getMessage())->refresh();
}
}
public function dialog()
{
$this->confirm('确定审核通过?');
}
}

View File

@@ -0,0 +1,33 @@
<?php
namespace Modules\Mall\Http\Controllers\Admin\Action\Shop;
use Encore\Admin\Actions\Response;
use Encore\Admin\Actions\RowAction;
use Illuminate\Http\Request;
use Modules\Mall\Models\Shop;
class Reject extends RowAction
{
public $name = '驳回申请';
public function handle(Shop $shop, Request $request): Response
{
try {
if ($shop->reject($request->reject_reason)) {
return $this->response()->success('驳回申请成功')->refresh();
} else {
return $this->response()->error('驳回申请失败')->refresh();
}
} catch (\Exception $exception) {
return $this->response()->error($exception->getMessage())->refresh();
}
}
public function form()
{
$this->textarea('reject_reason', '驳回原因')->rules('required');
}
}