|
@@ -13,6 +13,7 @@ use App\Services\api\UserService;
|
|
|
use App\Services\ProcurementService;
|
|
use App\Services\ProcurementService;
|
|
|
use App\Services\SupplierService;
|
|
use App\Services\SupplierService;
|
|
|
use Carbon\Carbon;
|
|
use Carbon\Carbon;
|
|
|
|
|
+use Illuminate\Database\Eloquent\Builder;
|
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Http\Request;
|
|
|
use Illuminate\Support\Facades\Auth;
|
|
use Illuminate\Support\Facades\Auth;
|
|
|
use Illuminate\Support\Facades\DB;
|
|
use Illuminate\Support\Facades\DB;
|
|
@@ -23,19 +24,27 @@ class ProcurementController extends Controller
|
|
|
|
|
|
|
|
public function getWaitQuotation(Request $request): \Illuminate\Http\JsonResponse
|
|
public function getWaitQuotation(Request $request): \Illuminate\Http\JsonResponse
|
|
|
{
|
|
{
|
|
|
|
|
+ $user=Auth::user();
|
|
|
/**@var SupplierService $supplierService*/
|
|
/**@var SupplierService $supplierService*/
|
|
|
$supplierService=app(SupplierService::class);
|
|
$supplierService=app(SupplierService::class);
|
|
|
$supplier_ids=$supplierService->screenSupplierIds();
|
|
$supplier_ids=$supplierService->screenSupplierIds();
|
|
|
$status=$request->input('status');//0:待报价,2:待接单
|
|
$status=$request->input('status');//0:待报价,2:待接单
|
|
|
$procurements=Procurement::query()
|
|
$procurements=Procurement::query()
|
|
|
->withCount('procurementQuotations')
|
|
->withCount('procurementQuotations')
|
|
|
- ->with(['ownerMaterial.material','procurementQuotations'])
|
|
|
|
|
|
|
+ ->with('ownerMaterial.material')
|
|
|
->where('status',$status)
|
|
->where('status',$status)
|
|
|
|
|
+ ->whereHas("ownerMaterial",function (Builder $query)use($supplier_ids){
|
|
|
|
|
+ $query->whereHas("material",function (Builder $query)use($supplier_ids){
|
|
|
|
|
+ $query->whereHas("supplier",function (Builder $query)use($supplier_ids){
|
|
|
|
|
+ $query->whereIn('id',$supplier_ids);
|
|
|
|
|
+ });
|
|
|
|
|
+ });
|
|
|
|
|
+ })
|
|
|
->get();
|
|
->get();
|
|
|
$keys = [];
|
|
$keys = [];
|
|
|
foreach ($procurements as $key=>$procurement){
|
|
foreach ($procurements as $key=>$procurement){
|
|
|
// if ($procurement->procurement_quotations_count>0 && $status==0 )$keys[]= $key;
|
|
// if ($procurement->procurement_quotations_count>0 && $status==0 )$keys[]= $key;
|
|
|
- if ($procurement->procurement_quotations_count>0 ){
|
|
|
|
|
|
|
+ if ($procurement->procurement_quotations_count>0 && !$user->isSuperAdmin()){
|
|
|
foreach ($procurement->procurementQuotations as $procurementQuotation){
|
|
foreach ($procurement->procurementQuotations as $procurementQuotation){
|
|
|
if (in_array($procurementQuotation->supplier_id,$supplier_ids))$keys[]= $key;
|
|
if (in_array($procurementQuotation->supplier_id,$supplier_ids))$keys[]= $key;
|
|
|
}
|
|
}
|