| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- <?php
- namespace App\Services;
- use App\Authority;
- use App\Logistic;
- use App\OracleDOCOrderHeader;
- use App\OrderIssue;
- use App\Owner;
- use App\Shop;
- use App\Sign;
- use App\Order;
- use Illuminate\Http\Request;
- use Illuminate\Support\Facades\Auth;
- use Illuminate\Support\Facades\DB;
- class OrderIssueService
- {
- public function __construct()
- {
- app()->bind("OrderService", OrderService::class);
- }
- public function orderIssueTag(Request $request)
- {
- $orderNos = $request->input('orderNos');
- $meg = ['success' => false];
- if ($this->verifyOrderIssue($request)) {
- $meg['fail_info'] = '传入订单编号中对应的订单问题已有生成';
- return $meg;
- }
- foreach ($orderNos as $orderNo) {
- $this->createOrFind($orderNo);
- }
- $meg['success'] = '选中订单已标记为问题订单';
- return $meg;
- }
- public function verifyOrderIssue(Request $request)
- {
- $orderIds = $request->input('orderNos');
- $orders = Order::whereIn('code', $orderIds)->get();
- if (count($orders) == 0) {
- return false;
- }
- foreach ($orders as $order) {
- $order_ids[] = $order->id;
- }
- $count = OrderIssue::whereIn('order_id', $order_ids)->count();
- return $count != 0;
- }
- public function createOrFind($ordeNo)
- {
- $orderService = app('OrderService');
- $order = $orderService->createOrFindByOrderHead($ordeNo);
- $arr = [
- 'order_id' => $order->value('id'),
- ];
- return OrderIssue::create($arr);
- }
- }
|