|
|
@@ -298,13 +298,33 @@ class ProcurementController extends Controller
|
|
|
$this->gate('采购管理-财务-对账单');
|
|
|
$id=$request->input('procurementCheckSheetId');
|
|
|
$invoice_number=$request->input('invoice_number');
|
|
|
- $procurementCheckSheet=ProcurementCheckSheet::query()->where('id',$id)
|
|
|
- ->update([
|
|
|
+ $procurementCheckSheet=ProcurementCheckSheet::query()->find($id);
|
|
|
+ $procurementTotalBill=null;
|
|
|
+ $procurementCheckSheet->update([
|
|
|
'invoice_number'=>$invoice_number,
|
|
|
'status'=>3,//3 已完结
|
|
|
]);
|
|
|
- if ($procurementCheckSheet) return ['success' => true,'data' => $invoice_number];
|
|
|
- else return ['success' => false, 'message' => '添加失败'];
|
|
|
+ $supplier_id = $procurementCheckSheet->procurementDelivery->procurement->supplier_id ?? null;
|
|
|
+ $ProcurementQuery = Procurement::query()->select("id")
|
|
|
+ ->where('supplier_id',$supplier_id);
|
|
|
+ $procurementDeliveryQuery= ProcurementDeliverie::query()->select('id')
|
|
|
+ ->whereIn("procurement_id",$ProcurementQuery)
|
|
|
+ ->where("created_at","like",Carbon::parse($procurementCheckSheet['procurementDelivery']['created_at'])->format('Y-m')."%");
|
|
|
+ $count=ProcurementCheckSheet::query()
|
|
|
+ ->with(['procurementDelivery.procurement.ownerMaterial.material','procurementDelivery.procurement.supplier'])
|
|
|
+ ->whereIn('procurement_delivery_id',$procurementDeliveryQuery)->where('status','!=',3)->count();
|
|
|
+ if($count==0){
|
|
|
+ $procurementTotalBill=ProcurementTotalBill::query()
|
|
|
+ ->where('counting_month','like',Carbon::parse($procurementCheckSheet['procurementDelivery']['created_at'])->format('Y-m')."%")
|
|
|
+ ->where('supplier_id',$supplier_id)
|
|
|
+ ->update(['status'=>2]);
|
|
|
+ }
|
|
|
+ if ($procurementTotalBill) {
|
|
|
+ return ['success' => true,'data' => $invoice_number,'status'=>3,'totalStatus'=>2];
|
|
|
+ }
|
|
|
+ elseif ($procurementCheckSheet){
|
|
|
+ return ['success' => true,'data' => $invoice_number,'status'=>3];
|
|
|
+ }else return ['success' => false, 'message' => '添加失败'];
|
|
|
|
|
|
}
|
|
|
|