|
|
@@ -2,6 +2,7 @@
|
|
|
|
|
|
namespace App\Services;
|
|
|
|
|
|
+use App\Http\Controllers\Controller;
|
|
|
use App\OracleDOCOrderHeader;
|
|
|
use App\OrderIssue;
|
|
|
use App\OrderIssueRejectedBill;
|
|
|
@@ -12,7 +13,8 @@ use Illuminate\Database\Eloquent\Model;
|
|
|
Class OrderIssueRejectedBillService
|
|
|
{
|
|
|
/**
|
|
|
- * @param $orderIssue
|
|
|
+ * 添加连接
|
|
|
+ * @param OrderIssue $orderIssue
|
|
|
* @param $logistic_number_return
|
|
|
* @return Builder|Model|object|null|boolean
|
|
|
*/
|
|
|
@@ -22,13 +24,16 @@ Class OrderIssueRejectedBillService
|
|
|
->where('order_issue_id',$orderIssue->id)
|
|
|
->where('logistic_number_return',$logistic_number_return)->first();
|
|
|
if($orderIssueRejectedBill)return null;
|
|
|
+ if(!OrderIssueRejectedBill::isExit($orderIssue->id,$logistic_number_return)) $orderIssue->update(['is_new_rejecting' => '有']);
|
|
|
$orderIssue->joinRejectedBill($logistic_number_return);
|
|
|
+ $orderIssue->syncRejectingStatus();
|
|
|
return OrderIssueRejectedBill::query()->with('rejectedBill')
|
|
|
->where('order_issue_id',$orderIssue->id)
|
|
|
->where('logistic_number_return',$logistic_number_return)->first() ?? false;
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
+ * 删除连接
|
|
|
* @param OrderIssue $orderIssue
|
|
|
* @param $logistic_number_return
|
|
|
* @return void|null|boolean
|
|
|
@@ -39,10 +44,14 @@ Class OrderIssueRejectedBillService
|
|
|
->where('order_issue_id',$orderIssue->id)
|
|
|
->where('logistic_number_return',$logistic_number_return)->first();
|
|
|
if(!$orderIssueRejectedBill)return null;
|
|
|
- return $orderIssue->unJoinRejectedBill($logistic_number_return);
|
|
|
+
|
|
|
+ $bool = $orderIssue->unJoinRejectedBill($logistic_number_return);
|
|
|
+ $orderIssue->syncRejectingStatus();
|
|
|
+ return $bool;
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
+ * 修改连接
|
|
|
* @param OrderIssue $orderIssue
|
|
|
* @param $logistic_number_return
|
|
|
* @param $logistic_number_return_update
|
|
|
@@ -54,6 +63,7 @@ Class OrderIssueRejectedBillService
|
|
|
->where('logistic_number_return',$logistic_number_return)->first();
|
|
|
if($orderIssueRejectedBill) return null;
|
|
|
$orderIssue->reviseJoinRejectedBill($logistic_number_return,$logistic_number_return_update);
|
|
|
+ $orderIssue->syncRejectingStatus();
|
|
|
return OrderIssueRejectedBill::query()->with('rejectedBill')
|
|
|
->where('order_issue_id',$orderIssue->id)
|
|
|
->where('logistic_number_return',$logistic_number_return)->first() ?? false;
|
|
|
@@ -86,6 +96,7 @@ Class OrderIssueRejectedBillService
|
|
|
})->first();
|
|
|
}
|
|
|
if(!$orderIssue)return;
|
|
|
+ if(!OrderIssueRejectedBill::isExit($orderIssue->id,$rejectedBill->logistic_number_return)) $orderIssue->update(['is_new_rejecting' => '有']);
|
|
|
$orderIssue->joinRejectedBill($rejectedBill->logistic_number_return);
|
|
|
$this->syncOrderIssueRejectingStatus($orderIssue);
|
|
|
}
|
|
|
@@ -108,21 +119,35 @@ Class OrderIssueRejectedBillService
|
|
|
|
|
|
/**
|
|
|
* 问题件更新退单状态
|
|
|
- * @param OrderIssue $orderIssue
|
|
|
+ * @param OrderIssue|Controller $order_issues
|
|
|
*/
|
|
|
- public function syncOrderIssueRejectingStatus($orderIssue)
|
|
|
+ public function syncOrderIssueRejectingStatus($order_issues)
|
|
|
{
|
|
|
- $orderIssue->syncRejectingStatus();
|
|
|
+ /**@var OrderIssue $orderIssue */
|
|
|
+ if(!$order_issues)return;
|
|
|
+ if(is_array($order_issues)){
|
|
|
+ foreach ($order_issues as $orderIssue) {
|
|
|
+ $orderIssue->syncRejectingStatus();
|
|
|
+ }
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ $order_issues->syncRejectingStatus();
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 根据问题件信息
|
|
|
- * @param RejectedBill $rejectedBill
|
|
|
+ * @param RejectedBill|Controller $rejectedBills
|
|
|
*/
|
|
|
- public function updateByOrderIssue($rejectedBill)
|
|
|
+ public function updateByOrderIssue($rejectedBills)
|
|
|
{
|
|
|
- $rejectedBill->syncOrderInfo();
|
|
|
+ if(!$rejectedBills)return;
|
|
|
+ if(is_array($rejectedBills)){
|
|
|
+ foreach ($rejectedBills as $rejectedBill) {
|
|
|
+ $rejectedBill->syncOrderInfo();
|
|
|
+ }
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ $rejectedBills->syncOrderInfo();
|
|
|
}
|
|
|
|
|
|
-
|
|
|
}
|