鱼C论坛

 找回密码
 立即注册
楼主: 凊风

[已解决]资产管理系统求教~~

  [复制链接]
 楼主| 发表于 2024-5-10 13:26:23 | 显示全部楼层
FishC 发表于 2024-5-10 13:12
这个错误通常是由于`DataFrame`构造函数参数不正确引起的。请确保`data_model`是一个合法的数据列表或 ...

这段代码不完整。。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-5-10 13:26:46 | 显示全部楼层
凊风 发表于 2024-05-10 13:26
这段代码不完整。。。。


非常抱歉,下面是完整的代码示例:
def setup_area_selection(self):
    # 设置combobox的点击事件,当点击时加载相应数据
    self.comboBox.clicked.connect(self.load_data_to_combobox)
    self.comboBox_2.clicked.connect(self.load_data_to_combobox_2)
    self.comboBox_3.clicked.connect(self.load_data_to_combobox_3)
    self.comboBox_4.clicked.connect(self.load_data_to_combobox_4)

def load_data_to_combobox(self):
    level = 2
    selected_code = self.comboBox.currentText()[:2]
    data = self.get_data(level, selected_code)
    self.comboBox_2.clear()
    self.comboBox_2.addItems(data)

def load_data_to_combobox_2(self):
    level = 3
    selected_code = self.comboBox_2.currentText()[:4]
    data = self.get_data(level, selected_code)
    self.comboBox_3.clear()
    self.comboBox_3.addItems(data)

def load_data_to_combobox_3(self):
    level = 4
    selected_code = self.comboBox_3.currentText()[:6]
    data = self.get_data(level, selected_code)
    self.comboBox_4.clear()
    self.comboBox_4.addItems(data)

def load_data_to_combobox_4(self):
    level = 5
    selected_code = self.comboBox_4.currentText()[:9]
    data = self.get_data(level, selected_code)
    self.comboBox_5.clear()
    self.comboBox_5.addItems(data)

def get_data(self, level, selected_code):
    # 根据level和selected_code查询数据库或其他数据源,获取相应的数据
    # 这里假设你有一个名为data_source的数据源,可以根据实际情况进行修改
    data = data_source.query(level, selected_code)
    return data

这段代码假设你的界面中有5个`QComboBox`分别命名为`comboBox`、`comboBox_2`、`comboBox_3`、`comboBox_4`、`comboBox_5`,并且你有一个名为`data_source`的数据源用来获取相应的数据。你需要根据实际情况进行修改和适配。

希望能帮到你!如果你还有其他问题,请随时提问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-5-10 15:08:05 | 显示全部楼层
FishC 发表于 2024-5-10 13:26
非常抱歉,下面是完整的代码示例:

FishC,请问你是迷糊了吗?
Traceback (most recent call last):
   line 1117, in select_folder
    self.setup_area_selection()
  line 1126, in setup_area_selection
    self.comboBox.clicked.connect(self.load_data_to_combobox)
    ^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'PySide6.QtWidgets.QComboBox' object has no attribute 'clicked'
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-5-10 15:08:20 | 显示全部楼层
凊风 发表于 2024-05-10 15:08
FishC,请问你是迷糊了吗?
Traceback (most recent  ...


啊,抱歉,我犯了个错误。确实 `QComboBox` 并没有 `clicked` 信号。我混淆了 `QComboBox` 和 `QPushButton` 的用法。

如果你想要在点击 `QComboBox` 时触发某个操作,可以使用 `activated` 信号。

下面是修正后的代码示例:
def setup_area_selection(self):
    self.comboBox.activated.connect(self.load_data_to_combobox)

def load_data_to_combobox(self):
    # 在这里编写加载数据到 QComboBox 的逻辑
    pass

这样,当用户在 `QComboBox` 中选择一个选项时,`load_data_to_combobox` 函数就会被调用。你可以在这个函数内部编写将数据加载到 `QComboBox` 的逻辑。

对于固定资产管理系统,你还需要考虑存储和管理资产数据的方式,以及其他的交互界面和功能。希望以上代码对你有所帮助!如果还有其他问题,请随时提问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-5-10 16:55:49 | 显示全部楼层
FishC 发表于 2024-5-10 15:08
啊,抱歉,我犯了个错误。确实 `QComboBox` 并没有 `clicked` 信号。我混淆了 `QComboBox` 和 `QPushBu ...

现有代码如下:
self.comboboxes = [self.comboBox, self.comboBox_2, self.comboBox_3,
                             self.comboBox_4, self.comboBox_5]
self.setup_area_selection(self.comboboxes, self.Region_file)

    def setup_area_selection(self, comboboxes, data_model):
        levels = len(comboboxes)
        data_model = pd.read_excel(self.Region_file)
        df = pd.DataFrame(data_model)

        filtered_data = df[df['级别'] == 1]
        self.comboBox.setEnabled(True)
        self.comboBox.clear()
        self.comboBox.addItem("请选择省名:")        
        for index, row in filtered_data.iterrows():
            name = row['名称']
            code = row['区划代码']
            self.comboBox.addItem(name, code)

能不能实现当self.comboBox进行了选择时,把self.comboBox所选择的“名称”储存下来,

然后让self.progressBar显示出来,self.progressBar的百分比居中显示,self.progressBar

从左到右开始滚动。

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-5-10 16:56:26 | 显示全部楼层
凊风 发表于 2024-05-10 16:55
现有代码如下:
self.comboboxes =
self.setup_are ...


当使用 `QComboBox` 进行选择时,我们可以通过 `currentIndexChanged` 信号来获取选择的名称并将其存储下来。然后,我们可以启用 `QProgressBar` 并根据需要配置它的样式和滚动行为。以下是一个示例代码:
from PySide6.QtWidgets import QApplication, QWidget, QVBoxLayout, QComboBox, QProgressBar
from PySide6.QtCore import Qt


class AssetManagementSystem(QWidget):
    def __init__(self):
        super().__init__()
        self.setWindowTitle("资产管理系统")
        self.layout = QVBoxLayout()
        self.comboBox = QComboBox()
        self.progressBar = QProgressBar()
        self.setup_area_selection()

        self.comboBox.currentIndexChanged.connect(self.on_combobox_selection)
        
        self.layout.addWidget(self.comboBox)
        self.layout.addWidget(self.progressBar)
        self.setLayout(self.layout)
    
    def setup_area_selection(self):
        self.comboBox.addItem("请选择省名:")
        self.comboBox.addItem("省名1")
        self.comboBox.addItem("省名2")
        # 添加其他省名...
    
    def on_combobox_selection(self, index):
        if index > 0:  # 当选择了某个省名
            selected_name = self.comboBox.itemText(index)
            print(f"选择的名称是:{selected_name}")
            self.progressBar.setRange(0, 0)  # 设置范围为[0, 0],即无限制
            self.progressBar.setAlignment(Qt.AlignCenter)  # 文字居中显示
            self.progressBar.setStyleSheet("""
                QProgressBar {
                    text-align: center;
                }
                
                QProgressBar::chunk {
                    background-color: #2196F3;
                }
            """)
            self.progressBar.setValue(0)  # 初始值为0
            self.progressBar.setMaximumWidth(200)  # 设置进度条的最大宽度
            self.progressBar.show()


if __name__ == '__main__':
    app = QApplication([])
    window = AssetManagementSystem()
    window.show()
    app.exec()

这是一个简单的示例,当选择了某个省名后,会在控制台打印所选名称,并显示一个带有居中文本和从左到右滚动的无限制进度条。你可以根据实际需求进行修改和调整。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-5-10 17:00:43 | 显示全部楼层
FishC 发表于 2024-5-10 16:56
当使用 `QComboBox` 进行选择时,我们可以通过 `currentIndexChanged` 信号来获取选择的名称并将其存储 ...

报错:
Traceback (most recent call last):
   line 1116, in select_folder
    self.setup_area_selection(self.comboboxes, self.Region_file)
  line 1136, in setup_area_selection
    self.comboBox.currentIndexChanged.connect(self.on_combobox_selection)
                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'Region_Select_Window' object has no attribute 'on_combobox_selection'
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-5-10 17:02:02 | 显示全部楼层
凊风 发表于 2024-05-10 17:00
报错:
Traceback (most recent call last):
   lin ...


抱歉,看来我没有给出完整的代码示例。请尝试在你的类中添加一个 `on_combobox_selection` 方法来处理 `currentIndexChanged` 信号。下面是一个更新的代码示例:
self.comboBox.currentIndexChanged.connect(self.on_combobox_selection)

def on_combobox_selection(self, index):
    selected_name = self.comboBox.itemText(index)
    # 在这里处理所选名称的逻辑

    # 显示进度条
    self.progressBar.setValue(0)
    self.progressBar.setMaximum(100)
    self.progressBar.setAlignment(QtCore.Qt.AlignCenter)
    self.progressBar.show()

    # 启动定时器以滚动进度条
    self.timer = QtCore.QTimer()
    self.timer.timeout.connect(self.scroll_progress_bar)
    self.timer.start(100)  # 每100毫秒滚动一次

def scroll_progress_bar(self):
    value = self.progressBar.value()
    if value >= 100:
        self.timer.stop()
        self.progressBar.hide()
    else:
        self.progressBar.setValue(value + 1)

请注意,在以上示例中,我们假设你已经定义了一个名为 `self.progressBar` 的进度条小部件。如果没有,请根据你的需求进行调整。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-5-10 22:09:12 | 显示全部楼层
FishC 发表于 2024-5-10 13:26
非常抱歉,下面是完整的代码示例:

请问这报错什么意思:
Traceback (most recent call last):
line 1193, in on_combobox_selection
    data = self.get_data(level, selected_code)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  line 1158, in get_data
    data = data_model.query(level, selected_code)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: DataFrame.query() takes 2 positional arguments but 3 were given
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-5-10 22:09:36 | 显示全部楼层
凊风 发表于 2024-05-10 22:09
请问这报错什么意思:
Traceback (most recent call  ...


这个错误提示意味着调用了 `DataFrame.query()` 方法时传递的参数数量不正确。

`DataFrame.query()` 方法的使用方式是 `query(expr, inplace=False)`, 其中 `expr` 是查询表达式,`inplace` 表示是否直接在原数据上进行修改,默认为 `False`。

根据你提供的错误信息,看起来你在调用 `query()` 方法时传递了三个参数,但该方法只需要两个参数。请检查你的代码并确保在使用 `query()` 方法时只传递两个参数。例如:
`python
data_model.query('level == @level and code == @selected_code')
`

在这个例子中,`level` 和 `selected_code` 是变量,你需要根据实际情况将它们替换为你的数据。

希望这能帮助解决问题!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-5-11 18:14:58 | 显示全部楼层
FishC 发表于 2024-5-10 22:09
这个错误提示意味着调用了 `DataFrame.query()` 方法时传递的参数数量不正确。

`DataFrame.query()` ...

请问这是什么问题?
Traceback (most recent call last):
  File "D:\Python\pythonProject\Ylqx20240509\Ylqx2024050903.py", line 24, in <module>
    import pandas as pd
  File "D:\Python\pythonProject\.venv\Lib\site-packages\pandas\__init__.py", line 29, in <module>
    raise ImportError(
ImportError: Unable to import required dependencies:
numpy: Error importing numpy: you should not try to import numpy from
        its source directory; please exit the numpy source tree, and relaunch
        your python interpreter from there.
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-5-11 18:15:12 | 显示全部楼层
凊风 发表于 2024-05-11 18:14
请问这是什么问题?
Traceback (most recent call la ...


这个错误提示意味着在导入 `pandas` 库时出现了问题,具体是由于 `numpy` 的导入问题导致的。

根据错误提示,你应当退出 `numpy` 的源代码目录,然后重新启动 Python 解释器来解决导入问题。这是因为导入 `numpy` 应该在非源代码目录下进行,否则会导致问题。

你可以尝试以下步骤来解决该问题:
1. 关闭当前的 Python 解释器。
2. 确保你在 `numpy` 的源代码目录之外。
3. 重新启动 Python 解释器。
4. 导入 `pandas` 库并检查是否仍然存在导入问题。

如果问题仍然存在,你可能需要检查你的环境配置,确保 `numpy` 安装正确,并且在导入前没有任何问题,例如依赖项或安装路径的冲突。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-5-13 21:16:49 | 显示全部楼层
FishC 发表于 2024-5-8 20:44
明白了,以下是修改后的代码:

我是这样写的:
level = 2
code_length = 2
selected_code = self.comboBox.currentData()                     
filtered_data = df[df['级别'] == level and df['区划代码'].astype(str).str[:code_length] == str(selected_code)[:code_length]]

但是报错:
Traceback (most recent call last):
   line 1199, in on_combobox_selection
    filtered_data = df[df['级别'] == level and df['区划代码'].astype(str).str[:code_length] == str(selected_code)[:code_length]]
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\PycharmProjects\.venv\Lib\site-packages\pandas\core\generic.py", line 1576, in __nonzero__
    raise ValueError(
ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-5-13 21:17:07 | 显示全部楼层
凊风 发表于 2024-05-13 21:16
我是这样写的:
level = 2
code_length = 2
select ...


这个错误是由于你在布尔表达式中使用了 `and` 运算符而导致的。

在 pandas 中,布尔索引需要使用 `&` 运算符代替 `and` 运算符。此外,对于比较操作,应该使用 `==` 而不是 `=`。

你可以按照以下方式修改你的代码:
filtered_data = df[(df == level) & (df.astype(str) == str(selected_code))]

这样就能正确地进行逻辑与和相等比较运算。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-5-13 21:19:38 | 显示全部楼层
FishC 发表于 2024-5-13 21:17
这个错误是由于你在布尔表达式中使用了 `and` 运算符而导致的。

在 pandas 中,布尔索引需要使用 `& ...

报错:
Traceback (most recent call last):
  File "D:\PycharmProjects\.venv\Lib\site-packages\pandas\core\ops\array_ops.py", line 362, in na_logical_op
    result = op(x, y)
             ^^^^^^^^
  File "D:\PycharmProjects\.venv\Lib\site-packages\pandas\core\roperator.py", line 54, in rand_
    return operator.and_(right, left)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: unsupported operand type(s) for &: 'int' and 'str'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "D:\PycharmProjects\.venv\Lib\site-packages\pandas\core\ops\array_ops.py", line 376, in na_logical_op
    result = libops.scalar_binop(x, y, op)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "ops.pyx", line 210, in pandas._libs.ops.scalar_binop
  File "D:\PycharmProjects\.venv\Lib\site-packages\pandas\core\roperator.py", line 54, in rand_
    return operator.and_(right, left)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: unsupported operand type(s) for &: 'bool' and 'str'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "D:\PycharmProjects\Ylqx20240509\Ylqx2024050903.py", line 1199, in on_combobox_selection
    filtered_data = df[df['级别'] == level &
                                   ^^^^^^^
  File "D:\PycharmProjects\.venv\Lib\site-packages\pandas\core\ops\common.py", line 76, in new_method
    return method(self, other)
           ^^^^^^^^^^^^^^^^^^^
  File "D:\PycharmProjects\.venv\Lib\site-packages\pandas\core\arraylike.py", line 74, in __rand__
    return self._logical_method(other, roperator.rand_)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\PycharmProjects\.venv\Lib\site-packages\pandas\core\series.py", line 6121, in _logical_method
    res_values = ops.logical_op(lvalues, rvalues, op)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\PycharmProjects\.venv\Lib\site-packages\pandas\core\ops\array_ops.py", line 454, in logical_op
    res_values = na_logical_op(lvalues, rvalues, op)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\PycharmProjects\.venv\Lib\site-packages\pandas\core\ops\array_ops.py", line 385, in na_logical_op
    raise TypeError(
TypeError: Cannot perform 'rand_' with a dtyped [object] array and scalar of type [bool]
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-5-13 21:19:52 | 显示全部楼层
凊风 发表于 2024-05-13 21:19
报错:
Traceback (most recent call last):
  File ...


这个错误是由于你在逻辑运算中使用了位运算符 `&`,而应该使用逻辑运算符 `and`。此外,还要注意不同数据类型之间的比较可能会导致错误。

请尝试以下代码:
filtered_data = df[(df == level) & (df.astype(str) == str(selected_code))]

在这里,我们使用了逻辑运算符 `and`,并将每个条件括在括号中以确保正确的比较和逻辑运算。同时,我们使用 `astype(str)` 将数据框中的值转换为字符串,以避免不同数据类型之间的比较错误。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-5-13 21:38:00 | 显示全部楼层
FishC 发表于 2024-5-13 21:19
这个错误是由于你在逻辑运算中使用了位运算符 `&`,而应该使用逻辑运算符 `and`。此外,还要注意不同数 ...

我这样写:
filtered_data = df[(df == level) & (df.astype(str).str[:code_length] == str(selected_code)[:code_length])]

但是报错:
Traceback (most recent call last):
   line 1199, in on_combobox_selection
    filtered_data = df[(df == level) & (df.astype(str).str[:code_length] == str(selected_code)[:code_length])]
                                        ^^^^^^^^^^^^^^^^^^
  File "D:\PycharmProjects\.venv\Lib\site-packages\pandas\core\generic.py", line 6296, in __getattr__
    return object.__getattribute__(self, name)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'DataFrame' object has no attribute 'str'. Did you mean: 'std'?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-5-13 21:38:18 | 显示全部楼层
凊风 发表于 2024-05-13 21:38
我这样写:
filtered_data = df[(df == level) & (df ...


这个错误是由于你在DataFrame对象上使用了str属性,而DataFrame没有str属性。

如果你想在DataFrame中进行字符串比较,可以使用`.astype(str)`将列转换为字符串类型,然后再进行比较:
filtered_data = df[(df == level) & (df.astype(str) == str(selected_code))]

如果你想对DataFrame中的某个特定列进行字符串比较,可以使用`.str`属性:
filtered_data = df[df['column_name'].astype(str) == str(selected_code)]

请注意将 `column_name` 替换为你实际的列名。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-5-13 22:28:52 | 显示全部楼层
FishC 发表于 2024-5-13 21:38
这个错误是由于你在DataFrame对象上使用了str属性,而DataFrame没有str属性。

如果你想在DataFrame ...

现有123.txt内容如下:
级别     区划代码              名称
1        110000000000        北京市
2        110100000000        市辖区
3        110101000000        东城区
4        110101001000        东华门街道
5        110101001001        多福巷社区居委会
5        110101001002        银闸社区居委会
5        110101001005        东厂社区居委会
5        110101001006        智德社区居委会
5        110101001007        南池子社区居委会
5        110101001009        灯市口社区居委会
5        110101001010        正义路社区居委会
5        110101001013        台基厂社区居委会
5        110101001014        韶九社区居委会
5        110101001015        王府井社区居委会
4        110101002000        景山街道

请问能不能逐条读取并存入E:\Temp\123.xlsx中,列名就是“级别”、‘区划代码’和“名称”。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-5-13 22:29:15 | 显示全部楼层
凊风 发表于 2024-05-13 22:28
现有123.txt内容如下:
级别     区划代码           ...


可以使用`pandas`库来读取文本文件,并将数据存入Excel文件中。下面是示例代码:
import pandas as pd

# 读取文本文件
df = pd.read_csv('123.txt', sep='\t', header=0)

# 存入Excel文件
df.to_excel('E:/Temp/123.xlsx', index=False)

这段代码首先使用`read_csv`函数从文本文件中读取数据,并指定分隔符为制表符(`\t`)。然后,使用`to_excel`函数将数据存入Excel文件中,其中`index=False`表示不将索引写入Excel文件。

运行以上代码后,你将在`E:/Temp/`目录下找到名为`123.xlsx`的Excel文件,其中包含从文本文件中读取的数据,并按照指定的列名进行了存储。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-15 22:32

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表