二维数据处理方法、装置及计算机可读存储介质与流程

文档序号:15932085发布日期:2018-11-14 01:48阅读:185来源:国知局

本发明涉及计算机应用技术,具体而言,涉及一种二维数据处理方法、装置及计算机可读存储介质。

背景技术

二维数据通常承载在二维表格形式中。二维表格以“行”为主要单位,每行内有很多“单元格”;不同行但同一列的“单元格”通常存储的是同一用途的数据。在计算机系统中,二维表格形式的文件类型包括:后缀名为“.xls”或“.xlsx”的excel文件、后缀名为“.csv”的文本文件等。这些文件类型之间的区别仅仅在于数据存储的形式不同或者数据是否经过压缩。数据和承载其的文件之间是相互独立的。通过一些计算机软件,可以从不同文件类型中读取二维数据,也可以将二维数据写入不同的文件类型中。

目前,对于用户的批量数据处理请求,计算机系统通常能够接收用户上传的载体文件,从载体文件中读取二维数据,再对二维数据进行验证、处理后,保存到计算机系统中;之后,向用户返回上传成功或失败的消息。也有一些计算机系统,通过用户界面向用户显示一个页面,来告知用户上传的数据中,哪些成功了,哪些失败了。但如果用户上传的数据内有大量的错误数据,用户需要按照提示,去原始载体文件中找到这些错误数据。在修复了这些错误数据后,还需要剔除已成功上传的数据后,再把修复后的数据重新上传。该过程操作繁琐、且容易出错,用户体验较差。此外,由于数据的上传、修改通常是由两个完全不同的计算机软件进行分别进行处理的,二者不能通用,会导致重复的开发工作(如载体文件的解析、数据的校验等)。

所述背景技术部分公开的上述信息仅用于加强对本发明的背景的理解,因此它可以包括不构成对本领域普通技术人员已知的现有技术的信息。



技术实现要素:

有鉴于此,本发明提供一种二维数据处理方法、装置及计算机可读存储介质,能够有效提升二维数据的处理效率。

本发明的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本发明的实践而习得。

根据本发明的一方面,提供一种二维数据处理方法,包括:接收以一预设模板承载二维数据的第一承载文件,预设模板包括多项功能列,功能列包括:数据信息列、数据内容列及错误信息列;将第一承载文件解析为二维数据;根据各功能列中的内容,逐行对二维数据进行处理;以及当二维数据中存在错误时,返回以预设模板构建的第二承载文件,第二承载文件中的数据内容列及错误信息列分别包括错误数据及错误数据的错误信息。

根据本发明的一实施方式,根据预设模板的各功能列中的内容,逐行对二维数据进行处理包括:当待处理行中仅数据信息列中的系统编号列不为空时,根据系统编号列中的系统编号,请求对待处理行进行相应的数据删除操作;当待处理行中的数据内容列不为空时,对待处理行中的数据内容列中的数据进行数据校验操作。

根据本发明的一实施方式,根据预设模板的各功能列中的内容,逐行对二维数据进行处理还包括:当待处理行中的数据内容列中的数据存在错误时,存储待处理行中的数据内容列中的错误数据及错误信息;当待处理行中的数据内容列中的数据没有错误时,判断待处理行中的系统编号列是否为空;当待处理行中的系统编号列不为空时,根据待处理行中的系统编号列中的系统编号及数据内容列中的数据,请求更新已存储的数据;当待处理行中的系统编号列为空时,请求新增待处理行中的数据内容列中的数据及为待处理行中的数据内容列中的数据生成新的系统编号。

根据本发明的一实施方式,当二维数据中存在错误时,返回以预设模板构建的第二承载文件包括:判断存储的存在数据错误的行数是否大于0;当行数大于0时,根据存储的错误数据及错误信息,以预设模板构建第二承载文件;以及返回第二承载文件。

根据本发明的一实施方式,上述方法还包括:接收预设模板的下载请求;构建数据内容列全部为空的第三承载文件;以及返回第三承载文件。

根据本发明的一实施方式,返回第三承载文件之前,上述方法还包括:判断第三承载文件的文件类型是否支持隐藏列;以及当第三承载文件的文件类型支持隐藏列时,隐藏为空的数据信息列及为空的错误信息列。

根据本发明的另一个方面,提供一种二维数据处理方法,包括:接收二维数据查询请求;根据二维数据查询请求,请求进行数据查询操作;根据查询出的二维数据,以一预设模板构建承载文件;以及返回承载文件;其中,功能列包括:数据信息列、数据内容列及错误信息列。

根据本发明的一实施方式,在返回承载文件之前,上述方法还包括:判断承载文件的文件类型是否支持隐藏列;以及当承载文件的文件类型支持隐藏列时,隐藏为空的错误信息列。

根据本发明的再一个方面,提供一种二维数据处理装置,包括:文件接收模块,用于接收以一预设模板承载二维数据的第一承载文件,预设模板包括多项功能列,功能列包括:数据信息列、数据内容列及错误信息列;数据解析模块,用于将第一承载文件解析为二维数据;数据处理模块,用于根据各功能列中的内容,逐行对二维数据进行处理;以及结果返回模块,用于当二维数据中存在错误时,返回以预设模板构建的第二承载文件,第二承载文件中的数据内容列及错误信息列分别包括错误数据及错误数据的错误信息。

根据本发明的一实施方式,数据处理模块包括:数据删除子模块,用于当待处理行中仅数据信息列中的系统编号列不为空时,根据系统编号列中的系统编号,请求对待处理行进行相应的数据删除操作;以及数据校验子模块,用于当待处理行中的数据内容列不为空时,对待处理行中的数据内容列中的数据进行数据校验操作。

根据本发明的一实施方式,数据处理模块还包括:错误数据处理子模块,用于当待处理行中的数据内容列中的数据存在错误时,存储待处理行中的数据内容列中的错误数据及错误信息;以及正确数据处理子模块,用于当待处理行中的数据内容列中的数据没有错误时,判断待处理行中的系统编号列是否为空;当待处理行中的系统编号列不为空时,根据待处理行中的系统编号列中的系统编号及数据内容列中的数据,请求更新已存储的数据;当待处理行中的系统编号列为空时,请求新增待处理行中的数据内容列中的数据及为待处理行中的数据内容列中的数据生成新的系统编号。

根据本发明的一实施方式,结果返回模块包括:错误行判断子模块,用于判断存储的存在数据错误的行数是否大于0;文件构建子模块,用于当行数大于0时,根据存储的错误数据及错误信息,以预设模板构建第二承载文件;以及文件返回子模块,用于返回第二承载文件。

根据本发明的一实施方式,上述装置还包括:下载请求接收模块,用于接收预设模板的下载请求;承载文件构建模块,用于构建数据内容列全部为空的第三承载文件;以及承载文件返回模块,用于返回第三承载文件。

根据本发明的一实施方式,上述装置还包括:列隐藏判断模块,用于判断第三承载文件的文件类型是否支持隐藏列;以及列隐藏模块,用于当第三承载文件的文件类型支持隐藏列时,隐藏为空的数据信息列及为空的错误信息列。

根据本发明的再一个方面,提供一种二维数据处理装置,包括:请求接收模块,用于接收二维数据查询请求;数据查询模块,用于根据二维数据查询请求,请求进行数据查询操作;文件构建模块,用于根据查询出的二维数据,以一预设模板构建承载文件;以及文件返回模块,用于返回承载文件;其中,功能列包括:数据信息列、数据内容列及错误信息列。

根据本发明的一实施方式,上述装置还包括:列隐藏判断模块,用于判断承载文件的文件类型是否支持隐藏列;以及列隐藏模块,用于当承载文件的文件类型支持隐藏列时,隐藏为空的错误信息列。

根据本发明的再一个方面,提供一种计算机可读存储介质,其上存储有计算机可执行指令,可执行指令被处理器执行时实现如上述任意一项的方法。

根据本发明实施方式的二维数通过在据处理方法,在用户上载的数据出现错误时,将以相同模板构建的文件返回给用户,其中包括错误数据及相应的错误信息。从而使得用户可以直接根据错误信息,修改系统返回的载体文件;并在修改完成后,无需对该文件进行任何其他操作即可再次上传到系统中,提升了用户的数据处理效率。此外,采用统一模板便于用户管理自己的文件。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本发明。

附图说明

通过参照附图详细描述其示例实施例,本发明的上述和其它目标、特征及优点将变得更加显而易见。

图1是根据一示例性实施方式示出的一种二维数据处理方法的流程图。

图2是根据一示例示出的预设模板的示意图。

图3是根据一示例示出的用于实现本发明方法的系统的架构图。

图4是根据一示例性实施方式示出的另一种二维数据处理方法的流程图。

图5是根据一示例性实施方式示出的再一种二维数据处理方法的流程图。

图6是根据一示例性实施方式示出的再一种二维数据处理方法的流程图。

图7是根据一示例性实施方式示出的一种二维数据处理装置的框图。

图8是根据一示例性实施方式示出的另一种二维数据处理装置的框图。

图9是根据一示例性实施方式示出的再一种二维数据处理装置的框图。

具体实施方式

现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本发明将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。附图仅为本发明的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。

此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本发明的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本发明的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知结构、方法、装置、实现或者操作以避免喧宾夺主而使得本发明的各方面变得模糊。

图1是根据一示例性实施方式示出的一种二维数据处理方法的流程图。如图1所示,方法10包括:

在步骤s102中,接收以一预设模板承载二维数据的第一承载文件,其中该预设模板包括多项功能列。

图2是根据一示例示出的预设模板的示意图。如图2所示,该预设模板包含有多列数据,不同列中的数据用于不同的功能,这些功能列可以包括:数据信息列、数据内容列及错误信息列。

数据信息列例如可以包括系统编号列,系统编号是指系统为每一行数据生成的系统内唯一的编号。该列数据可以为空。

数据内容列如图2中的列1、列2、……、列x等,是指根据业务需求预先指定的数据列,用于承载业务数据。业务数据的列数、列名称,都可以按照业务事先确定,本发明不以此为限。这些列的数据也可以为空。

错误信息列例如可以包括错误类型列及错误描述列等,用于承载文件上传时系统给出的错误描述信息,在实际应用中,错误信息列根据用户需求,可以被设计为一列或多列。错误信息列也可以为空。

需要说明的是,图2中各功能列的排序仅为示意之用,而非限制本发明。

在步骤s104中,将第一承载文件解析为二维数据。

读取第一承载文件中的内容,将其解析为二维数据。

在步骤s106中,根据各功能列中的内容,逐行对二维数据进行处理。

在步骤s108中,当二维数据中存在错误时,返回以上述预设模板构建的第二承载文件,该第二承载文件中的数据内容列及错误信息列分别包括错误数据及错误数据的错误信息。

在逐行处理二维数据时,若发现二维数据中存在错误,如为不符合系统要求的数据类型等,则以上述预设模板构建第二承载文件,在该第二承载文件中,分别在数据内容列及错误信息列承载相应的错误数据及错误数据的错误信息。

根据本发明实施方式的二维数通过在据处理方法,在用户上载的数据出现错误时,将以相同模板构建的文件返回给用户,其中包括错误数据及相应的错误信息。从而使得用户可以直接根据错误信息,修改系统返回的载体文件;并在修改完成后,无需对该文件进行任何其他操作即可再次上传到系统中,提升了用户的数据处理效率。此外,采用统一模板便于用户管理自己的文件。

应清楚地理解,本发明描述了如何形成和使用特定示例,但本发明的原理不限于这些示例的任何细节。相反,基于本发明公开的内容的教导,这些原理能够应用于许多其它实施方式。

图3是根据一示例示出的用于实现本发明方法的系统的架构图。如图3所示,该系统1包括:用户接口模块11、载体解析模块12、载体构建模块13、数据验证模块14、数据新增模块15、数据修改模块16、数据删除模块17及数据查询模块18。

其中,数据新增模块15、数据修改模块16、数据删除模块17及数据查询模块18例如可以为数据库或者文件系统,但本发明不以此为限。

下面以图3中所示的系统架构为例,进一步说明本发明实施方式的二维数据处理方法。需要说明的是,图3中的系统架构图仅为便于说明本发明实施例方法的示意之用,而非限制本发明。

图4是根据一示例性实施方式示出的另一种二维数据处理方法的流程图。结合图3和图4,方法20包括:

在步骤s202中,用户接口模块11接收用户上传的以预设模板承载二维数据的第一承载文件。

如图2所示,该预设模板包含有多列数据,不同列中的数据用于不同的功能,这些功能列可以包括:数据信息列、数据内容列及错误信息列。

数据信息列例如可以包括系统编号列,系统编号是指系统为每一行数据生成的系统内唯一的编号。该列数据可以为空。

数据内容列如图2中的列1、列2、……、列x等,是指根据业务需求预先指定的数据列,用于承载业务数据。业务数据的列数、列名称,都可以按照业务事先确定,本发明不以此为限。这些列的数据也可以为空。

错误信息列例如可以包括错误类型列及错误描述列等,用于承载文件上传时系统给出的错误描述信息,在实际应用中,错误信息列根据用户需求,可以被设计为一列或多列。错误信息列也可以为空。

在步骤s204中,用户接口模块11将接收到的第一承载文件发送至载体解析模块12。

用户接口模块11例如为用户提供的可视化用户界面,但本申请不以此为限。

在步骤s206中,载体解析模块12将第一承载文件解析为二维数据。

在一些实施例中,载体解析模块12在将第一承载文件解析为二维数据的同时,删除该第一承载文件中错误信息列中的内容,从而简化用户修改错误数据时的操作。

在步骤s208中,载体解析模块12根据各功能列中的内容,逐行循环处理二维数据。

在一些实施例中,载体解析模块12在逐行循环处理二维数据时,可以不逐行的将数据发送给数据新增模块15、数据修改模块16或数据删除模块17,而是将所有行都处理完成后,再统一将所有符合条件的数据发送给相应模块。因为对于大部分数据库和文件系统而言,批量进行新增、修改及删除数据时通常比逐条处理耗时更短。

在步骤s210中,判断当前待处理行中是否仅数据信息列中的系统编号列不为空;如果是,则进入步骤s212;否则,进入步骤s214。

在步骤s212中,载体解析模块12根据系统编号列中的系统编号,请求数据删除模块17对待处理行进行相应的数据删除操作。

在步骤s214中,载体解析模块12将待处理行发送至数据验证模块14进行数据校验操作。

在步骤s216中,数据验证模块14对待处理行中的数据进行数据有效性校验,并判断待处理行中的数据是否存在错误;如果是,则进入步骤s218;否则,进入步骤s220。

在步骤s218中,数据验证模块14存储待处理行中的错误数据及错误信息。

数据验证模块14暂存错误数据及错误信息,以备后续发送给载体构建模块13。

在步骤s220中,数据验证模块14判断待处理行中的系统编号列是否为空;如果是,则进入步骤s222;否则,进入步骤s224。

在步骤s222中,数据验证模块14将待处理行的数据发送至数据新增模块15,从而请求数据新增模块15为该新增数据生成系统编号并存储该新增数据。

在步骤s224中,数据验证模块14将待处理行的数据发送至数据修改模块16,从而请求数据修改模块16根据数据编号更新已存储的数据。

在步骤s226中,载体解析模块12判断是否处理完所有行的数据;如果是,则进入步骤s228;否则,返回步骤s208。

在步骤s228中,数据验证模块14判断存储的存在数据错误的行数是否大于0;如果是,则进入步骤s230;否则,进入步骤s234。

在步骤s230中,数据验证模块14将存储的错误数据及错误信息发送至载体构建模块13,从而使载体构建模块13根据错误数据及错误信息,以预设模板构建第二承载文件。

该第二承载文件中包括错误数据及相应的错误信息。

在一些实施例中,第二承载文件中包含的错误数据除了未通过数据校验操作的错误数据外,还可以包括其他类型的错误,如数据新增模块、数据修改模块在保存数据时出现了系统异常,如操作超时等。

在步骤s232中,载体构建模块13将第二承载文件通过用户接口模块11返回给用户。

在步骤s234中,通过用户接口模块11向用户返回操作成功消息。

图5是根据一示例性实施方式示出的再一种二维数据处理方法的流程图。在图4所示的方法20之前,还可以通过图5所示的方法30请求下载上述的预设模板。结合图3及图5,方法30包括:

在步骤s302中,通过用户接口模块11接收用户发送的预设模板的下载请求。

在一些实施例中,该下载请求例如可以为空白数据。

在步骤s304中,载体构建模块13根据用户接口模块11接收的数据以预设模板构建第三承载文件。

该第三承载文件中的全部数据内容均为空。

在步骤s306中,通过用户接口模块11将第三承载文件返回给用户。

在一些实施例中,在步骤s304与步骤s306之间,方法30还可以包括:

在步骤s308中,载体构建模块13判断第三承载文件的文件类型是否支持隐藏列,如果是,则进入步骤s310;否则,进入步骤s306。

如excel文件中,可以通过相应操作将不需要显示的列的内容隐藏。

在步骤s310中,载体构建模块13将第三承载文件中内容为空的系统编号列及错误信息列隐藏起来。

图6是根据一示例性实施方式示出的再一种二维数据处理方法的流程图。结合图3和图6,方法40包括:

在步骤s402中,通过用户接口模块11接收二维数据查询请求。

在步骤s404中,用户接口模块11将用户请求查询的数据范围发送给数据查询模块18。

在步骤s406中,数据查询模块18根据用户的请求查询出数据,并将查询出的数据发送至载体构建模块13。

在步骤s408中,载体构建模块13根据查询出的数据,以预设模板构建第四承载文件。

其中的错误信息列的内容为空。

在步骤s410中,通过用户接口模块11将第四承载文件返回给用户。

在一些实施例中,在步骤s408和步骤s410之间,方法40还可以包括:

在步骤s412中,载体构建模块13判断第四承载文件的文件类型是否支持隐藏列,如果是,则进入步骤s414;否则,进入步骤s410。

如excel文件中,可以通过相应操作将不需要显示的列的内容隐藏。

在步骤s414中,载体构建模块13将第四承载文件中内容为空的错误信息列隐藏起来。

根据本发明实施方式的二维数据处理方法,用户下载的载体文件的模板、用户上传数据使用的模板、系统向用户返回错误数据文件的模板及用户请求查询数据的模板均使用同一模板样式,从而使得可以通过同一个载体构建模块来构建载体文件,减少了重复代码,提供了代码开发效率。

本领域技术人员可以理解实现上述实施方式的全部或部分步骤被实现为由cpu执行的计算机程序。在该计算机程序被cpu执行时,执行本发明提供的上述方法所限定的上述功能。所述的程序可以存储于一种计算机可读存储介质中,该存储介质可以是只读存储器,磁盘或光盘等。

此外,需要注意的是,上述附图仅是根据本发明示例性实施方式的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。

下述为本发明装置实施例,可以用于执行本发明方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明方法实施例。

图7是根据一示例性实施方式示出的一种二维数据处理装置的框图。如图7所示,装置50包括:文件接收模块502、数据解析模块504、数据处理模块506、结果返回模块508。

其中,文件接收模块502用于接收以一预设模板承载二维数据的第一承载文件。

预设模板包括多项功能列,功能列包括:数据信息列、数据内容列及错误信息列。

数据解析模块504用于将第一承载文件解析为二维数据。

数据处理模块506用于根据各功能列中的内容,逐行对二维数据进行处理。

结果返回模块508用于当二维数据中存在错误时,返回以预设模板构建的第二承载文件,第二承载文件中的数据内容列及错误信息列分别包括错误数据及错误数据的错误信息。

根据本发明实施方式的二维数通过在据处理装置,在用户上载的数据出现错误时,将以相同模板构建的文件返回给用户,其中包括错误数据及相应的错误信息。从而使得用户可以直接根据错误信息,修改系统返回的载体文件;并在修改完成后,无需对该文件进行任何其他操作即可再次上传到系统中,提升了用户的数据处理效率。此外,采用统一模板便于用户管理自己的文件。

图8是根据一示例性实施方式示出的另一种二维数据处理装置的框图。与图7所示的装置50不同之处在于,装置60中的数据处理模块606包括:数据删除子模块6062、数据校验子模块6064、错误数据处理子模块6066及正确数据处理子模块6068。

其中,数据删除子模块6062用于当待处理行中仅数据信息列中的系统编号列不为空时,根据系统编号列中的系统编号,请求对待处理行进行相应的数据删除操作。

数据校验子模块6064用于当待处理行中的数据内容列不为空时,对待处理行中的数据内容列中的数据进行数据校验操作。

错误数据处理子模块6066用于当待处理行中的数据内容列中的数据存在错误时,存储待处理行中的数据内容列中的错误数据及错误信息。

正确数据处理子模块6068用于当待处理行中的数据内容列中的数据没有错误时,判断待处理行中的系统编号列是否为空;当待处理行中的系统编号列不为空时,根据待处理行中的系统编号列中的系统编号及数据内容列中的数据,请求更新已存储的数据;当待处理行中的系统编号列为空时,请求新增待处理行中的数据内容列中的数据及为待处理行中的数据内容列中的数据生成新的系统编号。

此外,结果返回模块608包括:错误行判断子模块6082、文件构建子模块6084及文件返回子模块6086。

其中,错误行判断子模块6082用于判断存储的存在数据错误的行数是否大于0。

文件构建子模块6084用于当行数大于0时,根据存储的错误数据及错误信息,以预设模板构建第二承载文件。

文件返回子模块6088用于返回第二承载文件。

此外,装置60还包括:下载请求接收模块610、承载文件构建模块612及承载文件返回模块614。

其中,下载请求接收模块610用于接收预设模板的下载请求。

承载文件构建模块612用于构建数据内容列全部为空的第三承载文件。

承载文件返回模块614用于返回第三承载文件。

此外,装置60还包括:列隐藏判断模块616及列隐藏模块618。

其中,列隐藏判断模块616用于判断第三承载文件的文件类型是否支持隐藏列。

列隐藏模块618用于当第三承载文件的文件类型支持隐藏列时,隐藏为空的数据信息列及为空的错误信息列。

需要注意的是,上述附图中所示的框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。

图9是根据一示例性实施方式示出的再一种二维数据处理装置的框图。如图9所示,装置70包括:请求接收模块702、数据查询模块704、文件构建模块706及文件返回模块708。

其中,请求接收模块702用于接收二维数据查询请求。

数据查询模块704用于根据二维数据查询请求,请求进行数据查询操作。

文件构建模块706用于根据查询出的二维数据,以一预设模板构建承载文件。

文件返回模块708用于返回承载文件;其中,功能列包括:数据信息列、数据内容列及错误信息列。

在一些实施例中,装置70还包括:列隐藏判断模块710及列隐藏模块712。其中,列隐藏判断模块710用于判断承载文件的文件类型是否支持隐藏列。列隐藏模块712用于当承载文件的文件类型支持隐藏列时,隐藏为空的错误信息列。

通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本发明实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本发明实施方式的方法。

以上具体地示出和描述了本发明的示例性实施方式。应可理解的是,本发明不限于这里描述的详细结构、设置方式或实现方法;相反,本发明意图涵盖包含在所附权利要求的精神和范围内的各种修改和等效设置。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1