一种实现通用有时序通讯的方法及装置与流程

文档序号:12067767阅读:274来源:国知局
一种实现通用有时序通讯的方法及装置与流程

本申请涉及计算机技术领域,尤其涉及一种实现通用有时序通讯的方法及装置。



背景技术:

当前有很多系统都有着严格的时序要求,如地铁售检票系统站点中心与线路中心间的通讯,或者是涉及到金钱交易的业务系统等,有些系统的业务时序变动的还会比较频繁。

现有技术中,在涉及到有时序控制的系统时,一般是通过在程序中实现业务时序的控制,即根据具体的时序要求在相应的程序代码中进行控制,因而导致如果业务时序有变动时,需要对相应的程序代码进行修改,尤其是针对业务时序变动比较频繁的业务,每次变动都需要对通讯模块的程序做相应的调整,导致开发效率非常低。

综上所述,现有技术在对业务时序进行控制时,无法对需要经常变动的业务时序进行灵活地调整,导致开发效率低。



技术实现要素:

本申请提供一种实现通用有时序通讯的方法,用以解决现有技术中存在的在对业务时序进行控制时,无法对需要经常变动的业务时序进行灵活地调整,而导致开发效率低的技术问题。

一方面,本申请实施例提供的一种实现通用有时序通讯的方法,包括:

在接收到业务后,根据接收到的业务对应的业务执行信息中的业务时序,确定当前需要执行的业务;

判断当前需要执行的业务与接收到的业务是否相同;

在确定当前需要执行的业务与接收到的业务相同后,根据所述业务执行信息中当前需要执行的业务对应的业务处理方式,对接收到的所述业务进行处理。

可选地,根据接收到的业务对应的业务执行信息中的业务时序,确定当前需要执行的业务,包括:

确定接收到的业务对应的业务执行信息对应的标记位的状态;

若确定的标记位状态为业务时序启动状态,则确定所述业务时序中最近处理完毕的业务的下一个业务为当前需要执行的业务;

若确定的标记位状态为业务时序未启动状态,则确定所述业务时序中的第一个业务为当前需要执行的业务;

在确定当前需要执行的业务与接收到的业务相同后之后,还包括:

若所述当前需要执行的业务为所述业务时序中的第一个业务,将业务执行信息对应的标记位设置为业务时序启动状态。

可选地,所述根据所述业务执行信息中当前需要执行的业务对应的业务处理方式,对收到的所述业务进行处理,包括:

若当前需要执行的业务对应的业务处理方式为合并执行,则等待接收需要合并处理的业务;

若当前需要执行的业务对应的业务处理方式为单独执行,则对接收到的业务进行处理。

可选地,所述业务处理方式包含预先设定的执行次数;

所述根据所述业务执行信息中当前需要执行的业务对应的业务处理方式,对接收到的所述业务进行处理,包括:

根据接收到的业务对应的预先设定的执行次数,处理所述接收到的业务。

可选地,在接收到业务后,根据接收到的业务对应的业务执行信息中的业务时序,确定当前需要执行的业务之前,还包括:

确定接收到业务对应的业务执行信息为需要进行时序判断的业务执行信息。

可选地,在接收到业务后,还包括:

若接收到业务对应的业务执行信息为不需要进行时序判断的业务执行信息,则处理所述业务。

另一方面,本申请实施例提供的一种实现通用有时序通讯的装置,包括:

确定单元,用于在接收到业务后,根据接收到的业务对应的业务执行信息中的业务时序,确定当前需要执行的业务;

判断单元,用于判断当前需要执行的业务与接收到的业务是否相同;

处理单元,用于在确定当前需要执行的业务与接收到的业务相同后,根据所述业务执行信息中当前需要执行的业务对应的业务处理方式,对接收到的所述业务进行处理。

可选地,所述确定单元,具体用于:

确定接收到的业务对应的业务执行信息对应的标记位的状态;

若确定的标记位状态为业务时序启动状态,则确定所述业务时序中最近处理完毕的业务的下一个业务为当前需要执行的业务;

若确定的标记位状态为业务时序未启动状态,则确定所述业务时序中的第一个业务为当前需要执行的业务;

在确定当前需要执行的业务与接收到的业务相同后之后,还包括:

若所述当前需要执行的业务为所述业务时序中的第一个业务,将业务执行信息对应的标记位设置为业务时序启动状态。

可选地,所述处理单元,具体用于:

若当前需要执行的业务对应的业务处理方式为合并执行,则等待接收需要合并处理的业务;

若当前需要执行的业务对应的业务处理方式为单独执行,则对接收到的业务进行处理。

可选地,所述业务处理方式包含预先设定的执行次数;

所述处理单元,具体用于:

根据接收到的业务对应的预先设定的执行次数,处理所述接收到的业务。

可选地,所述确定单元,还用于:

确定接收到业务对应的业务执行信息为需要进行时序判断的业务执行信息。

可选地,所述处理单元,还用于:

若接收到业务对应的业务执行信息为不需要进行时序判断的业务执行信息,则处理所述业务。

本申请实施例提供的方法,在接收需要执行的业务时,根据接收到的业务对应的业务执行信息中的业务时序,确定业务时序中当前需要执行的业务并判断当前需要执行的业务与接收到的业务是否相同,若相同,则根据业务执行信息中当前需要执行的业务对应的业务处理方式,对接收到的业务进行处理,该方法中,业务时序是预先设置的,只要判断接收到的业务是否在业务时序中,即可确定是否需要对该业务进行执行,并且由于业务时序是预先设置的,因而是可以调整的,可根据具体的系统要求,设置相应的业务执行信息中的业务时序,因而实现了可针对不同系统要求来对业务时序进行灵活地调整,且可进行跨平台移植使用。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的实现通用有时序通讯的方法流程图;

图2为本申请实施例提供的业务时序配置文件示意图;

图3为本申请实施例提供的实现通用有时序通讯的方法详细流程图;

图4为本申请实施例提供的实现通用有时序通讯的装置示意图。

具体实施方式

为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,显然,所描述的实施例仅仅是本申请一部份实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。

下面结合说明书附图对本申请实施例作进一步详细描述。

如图1所示,为本申请实施例提供的实现通用有时序通讯的方法,包括:

步骤101、在接收到业务后,根据接收到的业务对应的业务执行信息中的业务时序,确定当前需要执行的业务;

步骤102、判断当前需要执行的业务与接收到的业务是否相同;

步骤103、在确定当前需要执行的业务与接收到的业务相同后,根据所述业务执行信息中当前需要执行的业务对应的业务处理方式,对接收到的所述业务进行处理。

如图2所示,为本申请实施例提供的业务时序配置文件示意图。包含业务时序配置信息和其它配置信息,其中业务时序配置信息中包含至少一个业务执行信息,一个业务执行信息中包含至少一个业务,并且一个业务执行信息中还包含了业务的处理方式,以及每个业务执行信息对应一个标记位,用于标记当前业务执行信息中是否有业务正在执行。如图2所示,可用标记位为1表示该标记位对应的业务执行信息处于业务时序启动状态,即业务执行信息中有业务正在执行或者刚执行完一个业务等待下一个要执行的业务;用标记位为0表示该标记位对应的业务执行信息处于业务时序未启动状态,即没有业务被执行过。初始状态时,所有的标记位都为0。图2中业务执行信息0000和业务执行信息0001的业务时序状态为业务时序启动状态,业务执行信息0003~0005为 业务时序未启动状态。

另外,需要说明是,图2中的多个业务执行信息对应的业务时序是可以并行执行的,例如业务执行信息0002中的业务22正在执行,同时业务执行信息0003的业务37也正在执行等等。

下面以第2个业务执行信息为例对本发明人的编码方式进行说明。如图2所示,第2个业务执行信息中包含5个业务标识,分别对应业务21~25。在具体实现的时候,可以对每个业务对应的业务标识进行编码,每个业务对应的业务标识在业务时序配置信息中是唯一的。

例如,本申请实施例对业务时序进行下述方式的编码,用一个8位16进制的数字表示一个业务,例如业务21~25的标识分别为:00405208、04005107、0400520C、01010101、05003101,每个业务执行信息使用一个4位10进制数字进行表示,如第2条业务执行信息用0002来表示。对于每个业务的处理方式,即业务的执行属性信息,可以用一些符号来表示,例如,可以“-”号表示该业务需要执行0或1次,“+”号表示该业务需要执行1或N次(N大于1),“*”表示该业务需要执行0,1或N次,“()”表示括号内的业务必须成对出现,括号里面的业务标识可以是两个,或者三个,具体视实际需要而定。

例如,使用上述编码方式,如果业务执行信息0002的编码为:0002=+00405208,-04005107,*(0400520C,01010101),+05003101,则表示业务执行信息中第一个执行的应该是00405208对应的业务21,并且该业务需要执行至少一次;业务执行信息中第二个执行的应该是04005107对应的业务22,并且该业务不执行或者只执行一次;业务执行信息中第三个执行的应该是0400520C对应的业务23和01010101对应的业务24,即业务23和业务24需要成对地执行,只要一个失败,则该执行工作失败,并且该两个业务为都不执行或者都只执行一次或者都执行N次;业务执行信息中第四个执行的应该是05003101对应的业务25,并且该业务需要执行至少一次。

因此,通过上述编码方式,即可实现对业务执行信息中的业务的具体处理 方式和执行顺序进行了预先编码,当有业务需要执行时,只要使用该业务与业务时序配置文件进行比较,即可知晓接收到的业务是不是按照正确的顺序或者正确的方式在执行。

需要说明的是,上述编码方式只是本发明的一种实现方式,对于具体业务时序配置信息中的业务执行信息如何编码,本发明不做任何限定。

本申请实施例提供的方法,在接收需要执行的业务时,根据接收到的业务对应的业务执行信息中的业务时序,确定业务时序中当前需要执行的业务并判断当前需要执行的业务与接收到的业务是否相同,若相同,则根据业务执行信息中当前需要执行的业务对应的业务处理方式,对接收到的业务进行处理,该方法中,业务时序是预先设置的,只要判断接收到的业务是否在业务时序中,即可确定是否需要对该业务进行执行,并且由于业务时序是预先设置的,因而是可以调整的,可根据具体的系统要求,设置相应的业务执行信息中的业务时序,因而实现了可针对不同系统要求来对业务时序进行灵活地调整,且可进行跨平台移植使用。

下面结合图2所示的业务时序配置文件,对本申请实施例提供的实现通用有时序通讯的方法做具体说明。

在接收到业务之后,可以直接确定接收到的业务是在属于业务时序配置信息中的哪一个业务执行信息,或者是直接确定接收到的业务不属于任何一个业务执行信息,例如,接收到业务52,可以直接确定业务52属于业务执行信息0005,如果接收到业务66,则可以直接确定业务66不属于任何一个业务执行信息,具体确定方式如下:

系统启动时,所有有时序要求业务记录到一个信息列表,列表信息包括时序编号,时序业务号,接收到业务后,通过比对业务编号,确认是否是时序中业务。例如:信息列表为{0001(11,12,13,14),0003(31,32,36,39),0005(51,52,53,55)},根据接收到的业务是否在该信息列表中,即可确定接收到的业务属于哪个业务执行信息或者不属于任何业务执行信息。

根据接收的业务是否在业务时序配置信息中,可分为以下两种情形:

情形1、接收到的业务不在业务时序配置信息中

若接收到的业务不在业务时序配置信息中,例如参照图2,接收到业务66,经查找业务时序配置信息,确定不在任何一个业务执行信息中,则可以不对该业务执行,或者立刻执行该业务,或者是等待固定时间再执行该业务,具体处理方式,本发明实施例不做限定。

情形2、接收到的业务在业务时序配置信息中

若接收到的业务在业务时序配置信息中,例如参照图2,有接收到业务11,经查找业务时序配置信息,在业务执行信息0001中;或者接收到业务23,经查找业务时序配置信息,在业务执行信息0002中。

进一步地,在确定接收到的业务属于某个业务执行后,可根据以下方法来确定当前需要执行的业务:

可选地,根据接收到的业务对应的业务执行信息中的业务时序,确定当前需要执行的业务,包括:

确定接收到的业务对应的业务执行信息对应的标记位的状态;

若确定的标记位状态为业务时序启动状态,则确定所述业务时序中最近处理完毕的业务的下一个业务为当前需要执行的业务;

若确定的标记位状态为业务时序未启动状态,则确定所述业务时序中的第一个业务为当前需要执行的业务;

在确定当前需要执行的业务与接收到的业务相同后之后,还包括:

若所述当前需要执行的业务为所述业务时序中的第一个业务,将业务执行信息对应的标记位设置为业务时序启动状态。

上述方法,在确定接收到的业务属于某个业务执行信息后,根据接收到的业务对应的业务执行信息对应的标记位的状态,若确定当前业务执行信息是时序未启动状态,则直接将第一个业务确定为当前需要执行的业务,若确定当前业务执行信息是时序启动状态,则确定业务时序中最近处理完毕的业务的下一 个业务为当前需要执行的业务,参照图2,比如接收到的业务是业务17,则在确定业务17属于业务执行信息0001之后,先检查业务执行信息0001对应的标记位的状态,由于为1,表明业务执行信息0001处于业务时序启动状态,当前有业务在执行,则将业务时序中最近处理完毕的业务的下一个业务为当前需要执行的业务,例如刚执行完毕的业务为业务14,则确定业务14为当前需要执行的业务,再比如,接收到的业务为业务44,在确定业务41属于业务执行信息0004之后,先检查业务执行信息0004对应的标记位的状态,由于为0,表明业务执行信息0004处于业务时序未启动状态,当前没有业务在执行,则将第一个业务,即业务41确定当前需要执行的业务。该方法,通过将每个业务执行信息对应一个标记位,可以很快地判断出当前需要执行的业务是哪一个,以方便更快判断出当前需要执行的业务是否与接收到的业务相同,提高了系统性能。

此外,在确定当前需要执行的业务与接收到的业务相同后,并且当前需要执行的业务为业务时序中的第一个业务,则将业务执行信息对应的标记位设置为业务时序启动状态。

下面根据接收到的业务位于相应的业务执行信息中的位置来分别说明。

情形2-1、接收到的业务位于相应的业务执行信息中的第一个位置

由于默认状态下,标记位都为0,即标记位分别对应的业务执行信息的状态为未启动,因此当确定当前需要执行的业务在业务执行信息的业务时序中为第一个业务时,表明当前业务执行信息中还没有业务被执行过,此时首先需要将业务执行信息对应的标记为设置为业务时序启动状态,即设置为1。例如图2所示,接收到业务31,确定业务31位于业务执行信息0003中,由于业务执行信息0003对应的标记位为0,表明业务执行信息0003中没有业务被执行过,并且确定接收到的业务与业务执行信息0003的第一个业务相同,此时首先需要将业务执行信息0003对应的标记位设置为1,表明业务执行信息0003对应的业务时序已经启动,并执行接收到的业务31。

情形2-2、接收到的业务不在相应的业务执行信息中的第一个位置

例如,业务执行信息0001中当前需要执行的为业务13,即业务11和业务12已经执行过了,若此时接收到一个属于业务执行信息0001的业务,则首先确定业务执行信息0001对应的标记位是否为业务时序启动状态,即确定业务执行信息0001对应的标记位是否为1,由于是1,表明业务执行信息0001可以接收业务并执行,然后再判断当前需要执行的业务与接收到的业务是否相同,由于当前需要执行的业务为13,若接收到的业务也为13,因此可对业务13进行执行,若此时接收到业务为14,则确定不执行业务14。

具体地,若确定可对接收到的业务进行处理,则处理方式可根据实际应用的需求而定,对于本申请实施例,可通过以下方式进行执行。

可选地,所述根据所述业务执行信息中当前需要执行的业务对应的业务处理方式,对收到的所述业务进行处理,包括:

若当前需要执行的业务对应的业务处理方式为合并执行,则等待接收需要合并处理的业务;

若当前需要执行的业务对应的业务处理方式为单独执行,则对接收到的业务进行处理。

上述方法,根据本申请实施例提供的编码方式,当接收到相应业务之后,若确定可对该业务执行,则根据业务时序配置信息中预先设定的业务处理方式进行处理,例如业务执行信息0002的编码为:0002=+00405208,-04005107,*(0400520C,01010101),+05003101,若确定接收到的可处理的业务为业务23,由于业务23和业务24需要成对地执行,即需要合并执行,此时需要等待接收到业务24再进行处理;若确定接收到的可处理的业务为业务22,由于业务22为单独执行的业务,因此可在接收到业务22后立即执行。该方法,可对接收到的业务的处理方式预先设定,在确定接收的业务可执行后,即可根据预先设定的业务执行方式进行执行,因而该方法具有更加灵活的应用方式,视实际需要对业务处理方式进行预先设定,具有很好的扩展性。

另外,如果业务时序配置信息中包含了业务执行的次数信息,则还可以根据业务执行信息,对业务进行处理。

可选地,所述业务处理方式包含预先设定的执行次数;

所述根据所述业务执行信息中当前需要执行的业务对应的业务处理方式,对接收到的所述业务进行处理,包括:

根据接收到的业务对应的预先设定的执行次数,处理所述接收到的业务。

上述方法,业务处理方式中还包含有预先设定的执行次数,因此可根据接收到的业务对应的预先设定的执行次数,处理接收到的业务。例如业务执行信息0002的编码为:0002=+00405208,-04005107,*(0400520C,01010101),+05003101,若接收到的为业务21并确定可执行,则对业务21执行至少一次,即执行1次或者N次(N大于1),具体执行多少次,不做限定,可根据实际需要而定,例如执行的业务为发送消息,若消息发送1次失败,可还可以发送第2次,若再失败,则发送第3次,直到成功为止,因此发送的次数为1次或者N次。该方法,对于接收到的业务的执行次数也可以是预先设定的,因此进一步丰富了业务时序配置信息,提高了应用能力和扩展能力。

另外,在业务时序配置信息中还可以进一步增加一些特殊需求的业务处理方式,例如有的业务优先级比较高,来了之后要立刻执行,对于此类业务,就不能由时序的限制,对于此类不受时序控制的业务,本申请实施例给出了一种应用示例,如图2所示,可将业务执行信息0000确定为特殊的业务执行信息,当接收到的业务属于业务执行信息0000时,则进行特殊处理。

可选地,在接收到业务后,还包括:

若接收到业务对应的业务执行信息为不需要进行时序判断的业务执行信息,则处理所述业务。

上述方法,对于不受时序约束的业务,在接收到之后,即直接执行,例如,业务执行信息0000中有业务05刚执行完,此时接收到业务09,由于业务09属于业务执行信息0000,可直接对业务09执行,而无需确定必须在业务08 执行完之后再执行业务09。该方法增加了对不受时序约束的业务的处理方式,对于有时序约束和不受时序约束的业务都可以处理,因此扩展了本方法的应用能力。

由于业务时序配置信息中包含不受时序约束的业务执行信息,比如业务执行信息0000,由于步骤101~103是针对需要进行时序判断的业务的处理方式,因此在接收到一个业务之后,还需要判断接收到的业务是否需要时序判断。

可选地,在接收到业务后,根据接收到的业务对应的业务执行信息中的业务时序,确定当前需要执行的业务之前,还包括:

确定接收到业务对应的业务执行信息为需要进行时序判断的业务执行信息。

下面对本申请实施例提供的实现通用有时序通讯的方法做详细描述。如图3所示,为本申请实施例提供的实现通用有时序通讯的方法的详细流程图。

步骤301、读取业务时序配置信息;

步骤302、解析业务时序配置信息;

步骤303、开始接收业务;

步骤304、判断时序是否已经启动,若是,则转到步骤305,否则结束;

该步骤在确定接收到的业务对应的业务执行信息后,通过业务执行信息对应的标记位的状态,来确定该业务执行信息中的业务时序是否已经启动,若未启动则结束流程。

步骤305、判断是否为第一业务,若是,则转到步骤306,否则转到步骤307;

该步骤判断接收到的业务是否为第一个要执行的业务,若是,则需要通过步骤306修改接收到的业务对应的业务执行信息所对应的标记位的状态。

步骤306、修改标记位,进入时序;

步骤307、判断时序是否正常,若是,则转到步骤308,否则结束流程;

该步骤通过判断接收到的业务是否与当前需要执行的业务相同,来确定时 序是否正常,例如,图2中,若接收到的业务为13,业务执行信息0001中当前需要执行的业务为13,则确定时序正常,否则确定时序不正常。

步骤308、处理业务;

步骤309、判断是否为最后一个业务,若是,则结束流程,否则转到步骤303。

若所处理的是业务执行信息的业务时序中的最后一个业务,则结束流程,否则继续接收下一个业务进入流程。例如,业务执行信息0001中当前已经执行完业务19,由于业务19为业务执行信息0001的业务时序中的最后一个业务,则确定业务执行信息0001中的业务执行完毕,结束流程。

基于相同的技术构思,本申请实施例还提供一种实现通用有时序通讯的装置。本申请实施例提供的实现通用有时序通讯的装置如图4所示。

确定单元401,用于在接收到业务后,根据接收到的业务对应的业务执行信息中的业务时序,确定当前需要执行的业务;

判断单元402,用于判断当前需要执行的业务与接收到的业务是否相同;

处理单元403,用于在确定当前需要执行的业务与接收到的业务相同后,根据所述业务执行信息中当前需要执行的业务对应的业务处理方式,对接收到的所述业务进行处理。

可选地,所述确定单元401,具体用于:

确定接收到的业务对应的业务执行信息对应的标记位的状态;

若确定的标记位状态为业务时序启动状态,则确定所述业务时序中最近处理完毕的业务的下一个业务为当前需要执行的业务;

若确定的标记位状态为业务时序未启动状态,则确定所述业务时序中的第一个业务为当前需要执行的业务;

在确定当前需要执行的业务与接收到的业务相同后之后,还包括:

若所述当前需要执行的业务为所述业务时序中的第一个业务,将业务执行信息对应的标记位设置为业务时序启动状态。

可选地,所述处理单元403,具体用于:

若当前需要执行的业务对应的业务处理方式为合并执行,则等待接收需要合并处理的业务;

若当前需要执行的业务对应的业务处理方式为单独执行,则对接收到的业务进行处理。

可选地,所述业务处理方式包含预先设定的执行次数;

所述处理单元403,具体用于:

根据接收到的业务对应的预先设定的执行次数,处理所述接收到的业务。

可选地,所述确定单元401,还用于:

确定接收到业务对应的业务执行信息为需要进行时序判断的业务执行信息。

可选地,所述处理单元403,还用于:

若接收到业务对应的业务执行信息为不需要进行时序判断的业务执行信息,则处理所述业务。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使 得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。

显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

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