一种工单任务生成方法、工单指派方法及装置与流程
未命名
07-29
阅读:189
评论:0
1.本发明涉及计算机应用领域,具体而言,涉及一种工单任务生成方法、工单指派方法及装置。
背景技术:
2.随着互联网在医疗问诊应用的发展,越来越多的用户在网终平台提出医疗问题,各个医院、科室也有大量的医生在答题终端在空闲时间参与问题的解答。对于医疗问诊平台来说,需要解决题目分派准确、高效和可靠性都不高的问题。常用的派题流程采用抢单的模式:即一个答题用户p领取到的答题工单a,不允许再被其他答题用户领取到,除非p将a放弃,返还答题工单池;此外,由于医疗问题的专业限定,派题规则还限定:答题用户p只能领取与之匹配的指定标签、指定科室下的答题工单。对于这种模式的实现,从预设的队列中出列来实现。但队列需要预设,因此灵活性较差,无法适配动态调整队列类型的场景。
3.因此,不仅需要实现题目分派准确、高效,还需要突破传统抢单功能的单一性及局限性。
技术实现要素:
4.为实现上述目的,本技术提供了一种工单任务生成方法,包括以下步骤:
5.从用户端获取医疗问题,生成答题工单;
6.为答题工单补充任务信息,生成工单任务,加入工单池;其中,工单池的元素包括:工单id、标签、科室、任务;工单池的元素互相组合构成元素集;
7.通过各元素跨元素集进行有序关联,构成二级关联,生成工单队列。
8.其中,科室支持多级结构,包括:一级科室、二级科室至n级科室。
9.进一步的,元素集包括:工单和任务、任务和科室、科室和标签;
10.其中,通过各元素跨元素集进行有序关联指:为工单id关联科室任务集,为科室任务集匹配科室标签集。
11.另一方面,本技术提供了一种工单指派方法,包括以下步骤:
12.从答题终端获取答题医生信息,通过该医生信息,从数据库提取所属科室和标签,生成“科室_标签”集合s;
13.将“科室_标签”集合s作为参数在工单队列进行索引匹配,提取工单id;
14.锁定所述工单id对应的状态;
15.将所述工单id分配给所述答题终端。
16.其中,将“科室_标签”集合s作为参数在工单队列进行索引匹配包括:
17.定位工单队列的第一级队列,从“任务_科室”集合中提取最适合的元素组合;
18.定位工单队列的第二级队列,出列工单id。
19.与工单任务生成方法相对应,本发明还提供了一种工单任务生成装置,包括:
20.工单信息获取模块:用于从用户端获取医疗问题,生成答题工单;
21.工单任务生成模块:用于为答题工单补充任务信息,生成工单任务,存储入工单池;
22.其中,工单任务生成模块包括存储单元和元素集合生成单元;
23.在存储单元中存储入工单池的元素包括:工单id、标签、科室、任务,支持的存储方式包括内存和数据库存储;
24.元素集合生成单元,则用于通过各元素跨元素集进行有序关联,构成二级关联,生成工单队列。
25.进一步的,本发明中的科室支持多级结构,包括:一级科室、二级科室至n级科室。
26.进一步的,元素集包括:工单和任务、任务和科室、科室和标签;
27.通过各元素跨元素集进行有序关联指:为工单id关联科室任务集,科室任务集匹配科室标签集。
28.另一方面,本发明还提供了一种工单指派装置,包括:
29.答题终端获取模块:用于从答题终端获取答题医生信息,通过该医生信息,从数据库提取所属科室和标签,生成“科室_标签”集合s;
30.工单分配模块,用于将“科室_标签”集合s作为参数在工单队列进行索引匹配,提取工单id;锁定工单id对应的状态,将工单id分配给答题终端。
31.进一步的,工单分配模块匹配工单队列的过程包括:
32.定位工单队列的第一级队列,从“任务_科室”集合中提取最适合的元素组合;
33.定位工单队列的第二级队列,出列工单id。
34.根据本发明提供的方案,实现了医疗问题工单分派准确、高效的目的,突破了传统抢单功能的单一性及局限性,充分利用了元素和队列相组合的优势,又减少了存储资源的损耗;并在应用场景中,降低了检索的成本,提高了管理效率;同时,本方案采用轻量级数据库和内存数据库实现,具有开发成本低、运行代价少,维护灵活的特征。
附图说明
35.图1是根据本发明实施例提供的工单任务生成方法步骤图;
36.图2是根据本发明实施例提供的元素集构成示意图;
37.图3是根据本发明实施例提供的工单指派方法步骤图;
38.图4是根据本发明实施例提供的工单任务生成装置结构图;
39.图5是根据本发明实施例提供的工单指派装置结构图;
40.图6是根据本发明实施例提供的工单与元素集关联示意图。
具体实施方式
41.本发明提出的工单任务生成、工单指派的方案,主要应用场景为:根据普通用户提出的医疗问题生成工单,根据可以答题的医院科室的医生资源进行派单。基于医疗问题的专业限制、医院科室的多级特征,本发明在现有预设队列的基础上,对预设队列进行结构优化:将工单、工单对应科室的特征元素化,再将特征元素根据业务需要求进行组合,构成多级队列,通过队列的结构的灵活度来增加队列本身的灵活性;同时,由于采用了集合概念,充分利用了元素的组合操作,扩展了特征组合的可重用性,减少了存储资源的损耗;并在指
派工单的实现中,通过元素组合在内存的实现方案,降低了检索的成本、避免抢单、重复指派等失误,提高了效率;本方案的实现支持轻量级结构化数据库、缓存相结合,支持灵活简便的脚本开发简单,实体维护灵活、高效。
42.下面结合说明书附图对本发明的具体实现方式做详细描述。
43.图1是工单任务生成方法步骤图,如图所示,包括以下步骤:
44.步骤s100:从用户端获取医疗问题,生成答题工单。
45.作为医疗答题领域的内容生产模块,通过app、小程序或者web网页向普通用户提供提问的接口,在本步骤中,从用户端获取用户提交的医疗问题,对医疗问题进行处理,生成答题工单,处理过程包括分配工单id、对内容进行识别后匹配标签,关联任务;
46.作为医疗类的内容服务,答题工作需要专业的医生提供服务,因此本发明中的标签所属范围,由能够提供服务的医生团队决定,并通过内容识别对工单后进行匹配;
47.本步骤中关联任务时,存在无关联任务的情况,可以步骤s110中新建任务。
48.步骤s110:为答题工单补充任务信息,生成工单任务,加入工单池;
49.对于在步骤s110中未关联任务的工单,可以在此新建任务,补充任务信息,在数据库中存储相关数据,最终加入工单池。工单池中相关元素包括:工单id、标签、科室、任务。每个元素至少包括名称和id的体现如科室包括科室名称和科室id、工单和工单id、标签和标签id。
50.加入工单池的过程,首先在结构化的关系型数据库中存储数据,在内存级数据中按队列结构存储完成后,即入池成功;若入池失败,则会通过定时兜底任务作重入池处理,保证最终入池成功;
51.本技术方案中的关系型数据库支持mysql等轻量级的数据库,内存级数据库支持redis等。
52.由于本发明应用于医疗问题答题工单,答题医生所属的科室支持多级结构,包括:一级科室、二级科室至n级科室;例如内科、肾内科、肾结石、多发性肾结石,其层级关系可通过科室id体现。
53.例如:科室、科室id和标签对应关系如下表:
54.科室科室id标签id集合外科d10[t1,t2,t3,t4]神经外科d110[t2,t3]内科d20[t1,t2,t3]肾内科d210[t1,t2,t3]肾结石科d2110[t1,t2,t3]多发性肾结石科d2111[t1,t2,t3]
[0055]
工单任务清单如下:
[0056][0057][0058]
在本步骤中,所有的工单id组成为工单集,还包括在内存中将工单池的元素互相组合,建立关联关系,构成元素集后,可进行生成队列。
[0059]
建立联系的元素集如图2所示,包括:工单和任务、任务和科室、科室和标签;即图2中s210、s220、s230示意的元素集组合。
[0060]
步骤s130:建立元素集后,再通过各元素跨元素集进行有序关联,构成二级关联,最终以二级关联的结构,生成二级结构的工单队列。
[0061]
本发明实施例中,通过各元素跨元素集进行有序关联的顺序如图1所示,s121为工单id关联科室任务集,s122为所述科室任务集匹配科室标签集。
[0062]
最终根据业务需求生成二级结构的工单队列,如图6所示:以科室和任务为主要关联时,二级队列的第一级为“任务_科室”,第二级为工单集合;第一级队列中,各元素的元素为:科室_标签,任务_科室集合。
[0063]
在本发明中,各元素的组合可根据业务需求进行配置:例如:以科室和任务为主要关联,则任务与科室构成科室任务集、科室与标签构成科室标签集;作为答题用户的医生进行工单池匹配适合的答题工单时,根据医生所属科室标签确定科室集合,匹配相关的科室任务集,再从科室任务集中对应工单集合。
[0064]
另一方面,如果以标签作为主要关联,如图2中s240构成工单标签集代替s210,为答题医生匹配工单时,根据医生所属科室标签确定科室集合,匹配相关的科室标签集,再从科室标签集中对应工单集合。
[0065]
本发明的二级结构的工单队列是一个以空间换时间的二级倒排序索引模型,此模型通过消息队列、内存队列等实现,综合考虑实施成本及可靠性问题,支持内存+脚本的实现,例如以redis+lua脚本的方式为最优,首先,redis的lua脚本执行是原子性线程安全的,杜绝不同用户抢到同一工单的问题;其次,redis的执行效率非常高,并且实施成本也相对较低。
[0066]
通过二级结构的工单队列,可以灵活地将派单规则体现在队列中,最终实现工单
指派。例如,以科室和任务为主要关联时,通过医生的科室匹配任务定位一级队列后,再从二级队列中提取具体工单,如图3所示,包括以下步骤:
[0067]
步骤s300:从答题终端获取答题医生信息,通过该医生信息,从数据库提取所属科室和标签;
[0068]
根据科室和标签信息,生成该答题医生对应的“科室_标签”集合s;
[0069]
步骤s310:将“科室_标签”集合s传入内存数据库,以s作为参数在工单队列进行索引匹配,包括:
[0070]
定位工单队列的第一级队列:即根据与s匹配度,从“任务_科室”集合中提取最适合的元素组合,该元素组合为“任务_科室”的组合信息,例如“任务1_肾内科”;在本步骤的匹配度的计算规则可根据业务进行配置,例如任务的时效、优先级别计算权值。
[0071]
定位工单队列的第二级队列:根据定位工单队列的第一级队列的结果(例如:“任务_科室”为“任务1_肾内科”),对应的二级队列(工单1、工单3)中出列一个工单id,若出列成功,则结束匹配。
[0072]
在步骤s310中,对于出池成功的工单id,在数据库和内存中均将该工单id的状态进行锁定,避免被重复分配。
[0073]
步骤s320:将工单id分配给所述答题终端。
[0074]
对于答题终端,本发明还提供了释放工单接口,用于答题医生在终端提交放弃工单的功能,并实现对该工单id校验通过后,释放在数据库和内存中的锁定状态。
[0075]
图4是本发明提供的工单任务生成装置结构图,如图所示,包括:
[0076]
p410:工单信息获取模块:用于从用户端获取医疗问题,生成答题工单,答题工单的内容至少包括工单id、标签id、任务id;
[0077]
p420:工单任务生成模块:用于为答题工单补充任务信息,生成工单任务,存储入工单池;其中生成工单任务指,为工单id匹配元素集。
[0078]
工单任务生成模块包括p421存储单元和p422元素集合生成单元。
[0079]
在p421存储单元中存储入工单池的元素包括:工单id、标签、科室、任务,支持的存储方式包括内存和数据库存储;每个元素包括id和内容,例如标签内容和标签id,科室和科室id,任务和任务id;
[0080]
元素集合生成单元,用于通过各元素跨元素集进行有序关联,构成二级关联,生成工单队列;本发明中生成的工单队列如图6所示,以科室和任务为主要关联时,二级队列的第一级为“任务_科室”,第二级为工单集合;第一级队列中,各元素的元素为:科室_标签,任务_科室集合。
[0081]
元素集合生成单元生成的工单队列,是一个以空间换时间的二级倒排序索引模型,此模型通过消息队列、内存队列等实现,综合考虑实施成本及可靠性问题,支持内存+脚本的实现,具有原子性线程安全、执行效率高、实施成本低的优势。
[0082]
图5是本发明提供的工单指派装置结构图,如图所示,包括:
[0083]
p510:答题终端获取模块:用于从答题终端获取答题医生信息,通过该医生信息,从数据库提取所属科室和标签,生成“科室_标签”集合s;
[0084]
p520:工单分配模块,用于将“科室_标签”集合s作为参数在工单队列进行索引匹配,提取工单id;锁定所述工单id对应的状态,将所述工单id分配给所述答题终端。
[0085]
工单分配模块匹配所述工单队列的过程包括:
[0086]
定位工单队列的第一级队列,从“任务_科室”集合中提取最适合的元素组合;
[0087]
定位工单队列的第二级队列,出列工单id。
[0088]
在本发明中,通过元素组合,设计了结构灵活的二级队列,充分利用了元素和队列相组合的优势,既保证了灵活性、可重用性,又减少了存储资源的损耗;并在应用场景中,降低了检索的成本、减少了抢单、重复指派的机率,提高了管理效率;同时,本方案采用轻量级数据库和内存数据库实现,具有开发成本低、运行代价少,维护灵活的特征。
[0089]
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
技术特征:
1.一种工单任务生成方法,其特征在于,包括以下步骤:从用户端获取医疗问题,生成答题工单;为所述答题工单补充任务信息,生成工单任务,加入工单池;其中,所述工单池的元素包括:工单id、标签、科室、任务;其中,所述工单池的元素互相组合构成元素集;通过各元素跨元素集进行有序关联,构成二级关联,生成工单队列。2.根据权利要求1所述的工单任务生成方法,其特征在于,所述科室支持多级结构,包括:一级科室、二级科室至n级科室。3.根据权利要求1所述的工单任务生成方法,其特征在于,所述元素集,包括:工单和任务、任务和科室、科室和标签;所述通过各元素跨元素集进行有序关联指:为工单id关联科室任务集,为所述科室任务集匹配科室标签集。4.一种工单指派方法,其特征在于,包括以下步骤:从答题终端获取答题医生信息,通过该医生信息,从数据库提取所属科室和标签,生成“科室_标签”集合s;将“科室_标签”集合s作为参数在工单队列进行索引匹配,提取工单id;锁定所述工单id对应的状态;将所述工单id分配给所述答题终端。5.根据权利要求4所述的工单指派方法,其特征在于,所述将“科室_标签”集合s作为参数在工单队列进行索引匹配包括:定位工单队列的第一级队列,从“任务_科室”集合中提取最适合的元素组合;定位工单队列的第二级队列,出列工单id。6.一种工单任务生成装置,其特征在于,包括:工单信息获取模块:用于从用户端获取医疗问题,生成答题工单;工单任务生成模块:用于为所述答题工单补充任务信息,生成工单任务,存储入工单池;所述工单任务生成模块包括存储单元和元素集合生成单元;在所述存储单元中存储入工单池的元素包括:工单id、标签、科室、任务,支持的存储方式包括内存和数据库存储;所述元素集合生成单元,用于通过各元素跨元素集进行有序关联,构成二级关联,生成工单队列。7.根据权利要求6所述的工单任务生成装置,其特征在于,所述科室支持多级结构,包括:一级科室、二级科室至n级科室。8.根据权利要求6所述的工单任务生成装置,其特征在于,所述元素集,包括:工单和任务、任务和科室、科室和标签;所述通过各元素跨元素集进行有序关联指:为工单id关联科室任务集,所述科室任务集匹配科室标签集。9.一种工单指派装置,其特征在于,包括:答题终端获取模块:用于从答题终端获取答题医生信息,通过该医生信息,从数据库提取所属科室和标签,生成“科室_标签”集合s;
工单分配模块,用于将“科室_标签”集合s作为参数在工单队列进行索引匹配,提取工单id;锁定所述工单id对应的状态,将所述工单id分配给所述答题终端。10.根据权利要求9所述的工单指派装置,其特征在于,所述工单分配模块匹配所述工单队列的过程包括:定位工单队列的第一级队列,从“任务_科室”集合中提取最适合的元素组合;定位工单队列的第二级队列,出列工单id。
技术总结
本发明公开了一种工单任务生成方法,包括以下步骤:从用户端获取医疗问题,生成答题工单;为答题工单补充任务信息,生成工单任务,加入工单池;其中,所述工单池的元素包括:工单ID、标签、科室、任务;其中,工单池的元素互相组合构成元素集;通过各元素跨元素集进行有序关联,构成二级关联,生成工单队列。根据上述技术方案,实现了医疗问题工单分派准确、高效的目的,突破了传统抢单功能的单一性及局限性,充分利用了元素和队列相组合的优势,又减少了存储资源的损耗;并在应用场景中,降低了检索的成本,提高了管理效率;同时,本方案采用轻量级数据库和内存数据库实现,具有开发成本低、运行代价少,维护灵活的特征。维护灵活的特征。维护灵活的特征。
技术研发人员:梁鸿亮 黄凯成
受保护的技术使用者:广州启生信息技术有限公司
技术研发日:2023.04.11
技术公布日:2023/7/28
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
