method()) { case "GET": $params = request()->get(); # $model = (new MaterialProject()) ->query() ->where("org_id", "=", $params["org_id"]); // $first = $model->first(); #我的材料表中是否有数据 // if (!empty($first)) { if (!empty($params["material_name"])) { $model->where("module_basicdata_project_material_old.material_name", "like", "%" . $params["material_name"] . "%"); } $list = $model ->select( "module_basicdata_material_common_old.*", ) ->join( "module_basicdata_material_common_old", "module_basicdata_project_material_old.material_num", "=", "module_basicdata_material_common_old.material_num" ) ->paginate($params["limit"] ?? 10); return $this->success(dataReturn(1, "success", $list)); // } # // $model = (new Materialcommon())->query(); // if (!empty($params["material_name"])) { // $model->where("material_name", "like", "%" . $params["material_name"] . "%"); // } // $list = $model->paginate($params["limit"] ?? 10); // #end // return $this->success(dataReturn(1, "success", $list)); // 发料表中剩余量不为0 的材料列表 // case 'GET': // $params = request()->get(); // $model = (new Receivematerialdetail())->query(); // $model->where("residue_material", '>', 0); // $list = $model->paginate($params["limit"] ?? 10); // return $this->success(dataReturn(1, "success", $list)); } } catch (\Throwable $th) { // var_dump($th); // var_dump($th->getMessage()); return $this->success(dataReturn(-1, $th->getMessage())); } } #获取单一材料库存 public function getMaterialsInventory() { try { //获取收料信息 if (request()->method() == 'GET') { $params = request()->get(); checkEmpty($params, ["material_num" => '材料号码']); $allOrgIds = getOrgSelfAndChildrenIdsById($params['org_id']); $rlist = (new Receive()) ->select('material_num', Receive::raw('SUM(confirm_net_quantity) as quantity')) // ->with("materialcommon") ->where("material_num", '=', $params["material_num"]) ->whereIn("org_id", $allOrgIds) // ->whereIn("source_type", [0, 1, 2, 3, 4, 5]) ->where('is_red', '=', 0) ->where('is_removed', '=', 0) ->groupBy('material_num') ->first(); //2.1直接获取发料配比表 $dlist = (new Delivery()) ->select('material_num', Delivery::raw('SUM(confirm_net_quantity) as quantity')) // ->with("materialcommon") ->where("material_num", '=', $params["material_num"]) ->whereIn("org_id", $allOrgIds) ->where('is_red', '=', 0) ->where('is_removed', '=', 0) ->groupBy('material_num') ->first(); // dump('查询到的数据1'); // dump($rlist); // dump('查询到的数据2'); // dump($dlist); // dump('查询到的数据3'); // dump(isset($rlist["quantity"])); // dump(isset($dlist["quantity"])); // $stock = -((isset($dlistMaterialCode[$material_code]) && !empty($dlistMaterialCode[$material_code])) ? $dlistMaterialCode[$material_code]["quantity"] : 0); // // 将材料名称和库存数量添加到盘点数组 $inventory = [ "should_num" => (isset($rlist["quantity"]) ? ($rlist["quantity"] ?? 0) : 0) - (isset($dlist["quantity"]) ? ($dlist["quantity"] ?? 0) : 0) ]; return sparkSuccess(dataReturn(0, 'success', $inventory)); } else { return $this->success(dataReturn(-1, "请求方式错误")); } } catch (\Throwable $th) { // var_dump($th); // var_dump($th->getMessage()); return $this->success(dataReturn(-1, $th->getMessage())); } } }