示例#1
0
 protected function saveFinance($client, $sum, $number_of_waybill, $registry, $date_of_registry, $keyStek)
 {
     $finance = new Finance();
     $finance->client = $client;
     $finance->sum = $sum;
     $finance->number_of_waybill = $number_of_waybill;
     $finance->type_of_funding = "Первый платеж";
     //$finance->date_of_funding
     $finance->registry = $registry;
     $finance->date_of_registry = $date_of_registry;
     $finance->status = "К финансированию";
     if ($finance->save()) {
         foreach ($keyStek as $key) {
             $deliveryToFinance = new DeliveryToFinance();
             $deliveryToFinance->delivery_id = $key;
             $deliveryToFinance->finance_id = $finance->id;
             $deliveryToFinance->save();
         }
     }
 }
示例#2
0
 public function toClientRepayment($deliveries, $repayment)
 {
     $messageArray = [];
     $callback = 'success';
     $messageShot = 'Успешно! ';
     foreach ($deliveries as $delivery) {
         $id = $delivery['delivery'];
         $sum = $delivery['sum'];
         $delivery = Delivery::find($id);
         $finance = new Finance();
         $finance->client = $delivery->client->name;
         $finance->sum = $sum;
         $finance->number_of_waybill = 1;
         $finance->type_of_funding = "Перечислено клиенту";
         //$finance->date_of_funding
         $finance->registry = $delivery->registry;
         $finance->date_of_registry = $delivery->date_of_registry;
         $finance->status = "К финансированию";
         if ($finance->save()) {
             $return = $delivery->return;
             $returnType = $repayment->type;
             if ($returnType === 0) {
                 if ($return === '' || $return == 'Д') {
                     $returnHandler = 'Д';
                 } else {
                     $returnHandler = 'К/Д';
                 }
             } else {
                 if ($return === '' || $return == 'К') {
                     $returnHandler = 'К';
                 } else {
                     $returnHandler = 'К/Д';
                 }
             }
             $delivery->return = $returnHandler;
             $delivery->save();
             $deliveryToFinance = new DeliveryToFinance();
             $deliveryToFinance->delivery_id = $delivery->id;
             $deliveryToFinance->finance_id = $finance->id;
             $deliveryToFinance->save();
             if ($sum > $repayment->balance) {
                 $repayment->balance = 0;
             } else {
                 $repayment->balance = $repayment->balance - $sum;
             }
             $repayment->save();
         }
         $message = 'Денежные средства по накладной ' . $delivery->waybill . ' перечислены клиенту';
         array_push($messageArray, ['callback' => $callback, 'message' => $message, 'message_shot' => $messageShot]);
     }
     return $messageArray;
 }