差别
这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录 前一修订版 后一修订版 | 前一修订版 | ||
公告:报销中心:商旅系统和出差申请报销数据规则 [2024/08/07 11:26] – 张恒 | 公告:报销中心:商旅系统和出差申请报销数据规则 [2024/08/08 09:02] (当前版本) – [业务规则] 中材科技朱瑞楠 | ||
---|---|---|---|
行 1: | 行 1: | ||
===== 商旅系统和出差申请报销数据规则 ===== | ===== 商旅系统和出差申请报销数据规则 ===== | ||
+ | <alert type=" | ||
+ | <alert type=" | ||
==== 组织架构和人员数据表 ==== | ==== 组织架构和人员数据表 ==== | ||
行 24: | 行 26: | ||
=== 超标审批表 === | === 超标审批表 === | ||
- | 超标审批表由各公司商旅管理员维护。审批按公司差旅制度。 | ||
- | 超表审批规则入口:管理中心> | + | - 超标审批表由各公司商旅管理员按公司内部控制制度维护 |
+ | - 超表审批规则入口:管理中心> | ||
^超标类型^适用公司^审批人^ | ^超标类型^适用公司^审批人^ | ||
|国内机票|XX公司|审批人姓名| | |国内机票|XX公司|审批人姓名| | ||
行 33: | 行 36: | ||
|酒店|XX公司|审批人姓名| | |酒店|XX公司|审批人姓名| | ||
==== OA数据表 ==== | ==== OA数据表 ==== | ||
+ | === 公共数据表 === | ||
+ | 公共数据表由【】统一维护。 | ||
+ | |||
+ | ^ **序号** ^ **表名** | ||
+ | | OASLGG1 | ||
+ | | OASLGG2 | ||
+ | | OASLGG3 | ||
+ | | OASLGG4 | ||
+ | |||
+ | === 各公司差异化数据表 === | ||
+ | 各公司差异化数据表由【各公司指定专人】维护。 | ||
+ | |||
+ | ^ **序号** ^ **表名** | ||
+ | | OASLCY1 | ||
+ | | OASLCY2 | ||
+ | | OASLCY3 | ||
+ | | OASLCY4 | ||
+ | | OASLCY5 | ||
+ | |||
+ | === 中材叶片专用数据表 === | ||
+ | |||
+ | ^ **序号** ^ **表名** | ||
+ | | OASLYP1 | ||
+ | | OASLYP2 | ||
+ | | 1 | 有效订单状态 | ||
+ | | 2 | ?工号信息 | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ==== 出差标准控制字段 ==== | ||
+ | ===出差类型=== | ||
+ | |||
+ | ^序号^出差类型^ | ||
+ | |1|公务城市间出差| | ||
+ | |2|公司间出差| | ||
+ | |3|售后/ | ||
+ | |4|会议(含餐食)| | ||
+ | |5|会议(不含餐食)| | ||
+ | |6|因公出境| | ||
+ | |7|市内出差| | ||
+ | |8|×售后/ | ||
+ | |||
+ | ===出行方式=== | ||
+ | ^**序号**^**出行方式**^**订出行**^**订酒店**^**不通过商旅预订**^ | ||
+ | |1 | ||
+ | |2 | ||
+ | |3 | ||
+ | |4 | ||
+ | |||
+ | | ||
+ | |||
+ | |||
+ | ==== 不完整行程规则 ==== | ||
+ | === 业务规则 === | ||
+ | |||
+ | 以下为不完整行程 | ||
+ | |||
+ | **出差类型** | ||
+ | |||
+ | * 公司代码 <> { 中材叶片公司代码 } | ||
+ | * 出差类型 = 市内出差 | ||
+ | * 出差类型 = 因公出境 | ||
+ | * 公司代码 = { 中材叶片公司代码 } | ||
+ | * 出差类型 = 市内出差 | ||
+ | * 出差类型 = 因公出境 | ||
+ | * 出差类型 = 市内出差-城六区 | ||
+ | |||
+ | * (EB表叶片公司代码下,市内出差-城六区,不完整行程-流程条件出口直接到共享付款节点。) | ||
+ | |||
+ | **出差人工号** | ||
+ | * 出差人工号 = { 领导/ | ||
+ | |||
+ | **是否通过差旅壹号预订** | ||
+ | * 是否通过差旅壹号预订 = { 不通过商旅预订 } | ||
+ | |||
+ | **出行方式** | ||
+ | * 出行方式 = { 长途客运汽车,机场大巴 } | ||
+ | |||
+ | **住宿天数数** | ||
+ | * 住宿天数 < 可住宿天数 | ||
+ | * × 可住宿天数 = max(申请单日期) -min(申请单日期)(0807不严谨) | ||
+ | * 遍历计算隔夜交通工具天数 = | ||
+ | * 当 出行方式 <> 机场大巴 , | ||
+ | * 消费明细表[到达日期] - 消费明细表[出发日期] | ||
+ | * 可住宿天数 = MAX(消费明细表日期) - MIN(消费明细表日期) - 隔夜交通工具天数 | ||
+ | * 住宿天数 = SUM (消费明细住宿天数) | ||
+ | |||
+ | < | ||
+ | *不完整行程类别 | ||
+ | *出行无法识别 | ||
+ | *无消费记录——最终申请明细未匹配到商旅平台消费记录——在明细表显示【商旅无出行消费记录】 | ||
+ | *重复消费——有消费明细记录但是最终申请明细表没有明细——在主表显示【未申请出行消费】 | ||
+ | *出行校验逻辑 | ||
+ | -报销流程自动填充最终申请行程明细——表A不可编辑 | ||
+ | -拉取的商旅该订单下全部消费明细——表B | ||
+ | -填充主表总行程起始日期:表A最早出发日期正负1天内的时间范围去表B找相同出发地目的地的最早日期,若表B无,则用户可编辑 | ||
+ | -填充主表总行程终止日期:表A最晚出发日期正负1天内的时间范围去表B找相同出发地目的地的最早日期,若表B无,则用户可编辑 | ||
+ | -表A逐行去表B匹配消费记录:预计出发日期正负1天,相同出发地目的地,逐行反馈校验结果【商旅无出行消费记录】/ | ||
+ | -表B消费出行消费记录返匹配表A:已校验过的明细外,剩余出行消费记录条数大于表A有校验结果条数,在主表反馈校验结果【未申请出行消费】 | ||
+ | *住宿无法识别 | ||
+ | *住宿天数少——消费明细住宿天数< | ||
+ | *住宿天数多——消费明细住宿天数> | ||
+ | *住宿校验逻辑 | ||
+ | -根据主表总行程起始和总行程终止日期,计算行程允许住宿天数=终止日期-起始日期 | ||
+ | -根据消费明细拉取总的消费住宿天数与允许住宿天数比对:在明细表下方反馈校验结果【住宿天数少】/ | ||
+ | *报销流程的【刷新】按键 | ||
+ | *用户点击刷新会重新拉取消费明细,重新进行完整/ | ||
+ | *用户手工赋值的总行程起终止日期不能被覆盖 | ||
+ | |||
+ | ---- | ||
+ | === 开发规则-完整不完整逻辑 === | ||
+ | |||
+ | * 首先赋值为不完整 | ||
+ | * 查询建模维护的有效状态————后面有硬代码所以目前非强校验 | ||
+ | * 查询流程中oa流程编号,出差类型,时分秒 | ||
+ | * 出差类型=市内出差 赋值为不完整,行程类别赋值为室内出差人工审核 | ||
+ | * 出差类型=因公出境 赋值为不完整,行程类别赋值为因公出境人工审核 | ||
+ | * 出差类型=其他情况,开始查商旅明细 | ||
+ | * 调用商旅接口全部信息存到详细信息明细表 | ||
+ | * 将之后需要赋值的字段的主表,明细表和各辅助明细表字段清空 | ||
+ | * 查询详细信息明细表 | ||
+ | == 消费数据-火车 == | ||
+ | |||
+ | * 查询火车的商旅唯一值数量和唯一值根据商旅的唯一值分组。 | ||
+ | * 数量=1 代表是出票是有效状态要数据封装 | ||
+ | * 数量=2 代表是出票退票是无效状态不需要数据封装 | ||
+ | * 数量>2 代表存在改签情况,根据操作日期排序取最后一次操作数据记录, | ||
+ | * 当订单子类型=5,代表最后一条是改签退原票情况,此时这条数据是有效要封装。 | ||
+ | * 当订单子类型!=5, | ||
+ | == 消费数据-飞机 、酒店、用车 == | ||
+ | |||
+ | * 将不是火车的数据并且不是退票的数据打上标识代表接下来需要查询的数据。 | ||
+ | * 依次查询类型为飞机 国内酒店 用车 商旅唯一值数量和唯一值根据标识是需要查询的 类型不是火车的 商旅的唯一值分组。 | ||
+ | * 根据查到的商旅唯一值查询操作时间最近的那条数据。 | ||
+ | * 其中飞机的金额需要多条相加,其他正常封装数据。 | ||
+ | * 分别封装为行程有效数据存入行程有效明细表,酒店有效数据存入酒店有效明细表,用车有效数据存入用车有效明细表 | ||
+ | == 操作有效行程数据 == | ||
+ | |||
+ | * 查询有效最早出行时间和最晚出行时间,赋值给【?主表?】总行程起始终止日期。 | ||
+ | * 计算总行程天数 = 最晚日期-最早日期+1 | ||
+ | * 计算{预计住宿天数} = 最晚日期-最早日期,与实际住宿天数做对比 | ||
+ | * 依次遍历流程明细表(出差申请)中出行方式,和有效行程明细表做对比数量,其中飞机要用出发地目的地,火车要用出发地城市和目的地城市。 | ||
+ | * 相同出发地and目的地 出行消费明细数量=1 -》【校验结果】=成功 xyjg 0成功 并赋值订单金额 订单状态 使用状态(当前时间和出行时间作比较赋值为已使用或未使用) | ||
+ | * 相同出发地and目的地 商旅出行消费明细数量> | ||
+ | * 相同出发地and目的地 商旅出行消费明细数量< | ||
+ | |||
+ | == 操作有效酒店数据 == | ||
+ | |||
+ | | ||
+ | * 查询住宿天数相加总和、金额相加总和 | ||
+ | * 消费明细住宿天数 = {预计住宿天数} -》【校验结果zsxyjg】=成功; | ||
+ | * 消费明细住宿天数 > {预计住宿天数} -》【校验结果】=失败; | ||
+ | * 消费明细住宿天数 < {预计住宿天数} -》【校验结果】=失败; | ||
- | ^ **序号** ^ **事项** | + | ==操作有效打车数据== |
- | | 1 | 因公出境地区包干库 | + | |
- | | 2 | 国家和地区 | + | |
- | | 3 | 出差补助标准 | + | |
- | | 4 | 工号信息 | + | |
- | | 5 | 共享中心用银行账号 | + | |
- | | 6 | 差旅-费用类型生成规则 | 用于维护科目、功能泛微和原因代码 | + | |
- | | 7 | 研发订单信息 | + | |
- | | 8 | 有效订单状态 | + | |
- | | 9 | 差旅地点 | + | |
- | | 10 | 领导/ | + | |
- | | 11 | 税率税码 | + | |
- | | 12 | 因公出境补助比例 | + | |
- | ==== 不完整行程 ==== | + | ==操作最后数据== |
- | 完整不完整逻辑 | + | |
- | 1.首先赋值为不完整 | + | |
- | 2.查询建模维护的有效状态 | + | |
- | 3.查询流程中oa流程编号,出差类型,时分秒 | + | |
- | 4.出差类型=市内出差 赋值为不完整,行程类别赋值为室内出差人工审核 | + | |
- | 出差类型=因公出境 赋值为不完整,行程类别赋值为因公出境人工审核 | + | |
- | 出差类型=其他情况,开始查商旅明细 | + | |
- | 5.调用商旅接口全部信息存到详细信息明细表 | + | |
- | 6.将之后需要赋值的字段的主表,明细表和各辅助明细表字段清空 | + | |
- | 7.查询详细信息明细表 | + | |
- | (1)火车 | + | |
- | 《1》查询火车的商旅唯一值数量和唯一值根据商旅的唯一值分组。1.数量=1 代表是出票是有效状态要数据封装 2.数量=2 代表是出票退票是无效状态不需要数据封装 3.数量> | + | |
- | (2)飞机 、酒店、用车 | + | |
- | 将不是火车的数据并且不是退票的数据打上标识代表接下来需要查询的数据。 | + | |
- | 依次查询类型为飞机 国内酒店 用车 商旅唯一值数量和唯一值根据标识是需要查询的 类型不是火车的 商旅的唯一值分组。 | + | |
- | 根据查到的商旅唯一值查询操作时间最近的那条数据。 | + | |
- | 其中飞机的金额需要多条相加,其他正常封装数据。 | + | |
- | 分别封装为行程有效数据存入行程有效明细表,酒店有效数据存入酒店有效明细表,用车有效数据存入用车有效明细表 | + | |
- | 8.操作有效行程数据 | + | |
- | (1)查询有效最早出行时间和最晚出行时间,赋值给主表总行程起始终止日期。还需要计算总行程天数=最晚-最早+1 ,还需要计算个时间=最晚-最早 为了之后和酒店住宿天数相比。 | + | |
- | (2)依次遍历流程明细表中数据和有效行程明细表做对比数量,其中飞机要用出发地目的地,火车要用出发地城市和目的地城市。 | + | |
- | 《1》相同出发地and目的地 出行消费明细数量=1 -》【校验结果】=成功 xyjg 0成功 并赋值订单金额 订单状态 使用状态(当前时间和出行时间作比较赋值为已使用或未使用) | + | |
- | 《2》相同出发地and目的地 出行消费明细数量> | + | |
- | 《3》相同出发地and目的地 出行消费明细数量< | + | |
- | 9.操作有效酒店数据 | + | |
- | (1)查询住宿天数相加总和、金额相加总和。 | + | |
- | (2)消费明细住宿天数=【总行程终止日期】-【总行程起始日期】 -》【校验结果】=成功 zsxyjg 0成功 1失败 并赋值金额合计和住宿天数合计 | + | |
- | (3)消费明细住宿天数> | + | |
- | (4)消费明细住宿天数< | + | |
- | 10.操作有效打车数据 | + | |
- | (1)查询计算打车天数并给主表字段赋值 | + | |
- | 11.操作最后数据 | + | |
- | (1)查询不完整行程类别是否有值和住宿校验结果 | + | |
- | (2)查询住宿校验结果失败 [不完整行程类别]=住宿无法识别 | + | |
- | (3)查询不通过商旅数量 | + | |
- | 《1》不通过商旅”≥1 -》【校验提示信息】=不完整行程 【不完成行程类别】=出差申请判定不完整行程" | + | |
- | (4) 查询流程中行程校验明细表中校验结果的失败条数> | + | |
- | (5)查询不完整行程类别字段无值,主表和明细错误信息无值为完整。 | + |