背景

  目前,收款单的审批是放在总单上,且无完整的审批日志记录,无法准确和审计解释共享的审核情况,另外预收款勾单存在销售员任意乱勾单情况,现目前模式无法准确审核和限制,故需要新增收款细单的审批以便相关工作的开展。

处理方案

一 新增功能

1 新增界面-应收款审批记录日志

1)该界面是单表模式,主要功能作用是展现1080收款单界面所有已审批的记录日志。
2)界面展现的列包括:自增长序列号,收款单总单ID,收款单细单ID,销售发票总单ID,销售发票细单ID, 独立单元ID, 独立单元公司名称, 收款单总单金额, 细单收款金额, 客户名称, 业务日期,一级审批人,一级审批人意见,二级审批人,二级审批意见,三级审批人,三级审批意见,是否BPM审批,发票号,细单审批状态,细单审批类型,细单送审时间。
3)该界面只是作为查询功能,不能编辑和修改
4)该界面数据来源:
 a. 每执行一次细单送审,或者细单审批就往该表插入数据,通过审批类型区分。
 b. 每执行一次总单送审,或者总单审批就往该表插入细单明细的数据,通过审批类型区分。

2 新增参数

  1910业务系统参数设置界面,新增参数:“启用销售预收核销细单审批”,如果公司的该配置界面打上勾 ,则“销售收款单【1080】”按收款细单去进行审批,不打勾就按照原方式不变。

二 调整功能

1 1080销售收款单
1) 销售收款细单(表bms_sa_rec_dtl) 新增字段
包括:细单审批状态,审批人ID,审批日期,审批意见,审批备注,是否启用BPM审批,流程审批日志ID,当前审批ID,细单审批类型,细单送审时间,待审范围ID,审过范围ID。
字段逻辑:
 ①在数据字典sys_ddl和sys_ddl_dtl 中新增:销售收款单管理-细单审批状态。审批状态值说明:1–初始状态 、2–待审批、3–审批通过、4–不需要审批、5–审批不通过 、6–审批中。
 ②是否启用BPM审批,如果启用后台就记录数字1,界面上显示就在该字段上打勾。
 ③审批人ID,审批日期,审批意见,审批备注,只显示最后一次审批的信息在该表中。
 ④在数据字典sys_ddl和sys_ddl_dtl 中新增:销售收款单管理-细单审批类型。审批类型包括:1–总单送审,2–总单审批,3–细单送审,4–细单审批,5–总单回退送审,
6–细单回退送审,–7细单取消审批,–8细单删除。
2) 销售收款单总单界面调整功能按钮
在1910业务系统参数的“启用销售预收核销细单审批”已经打上勾的条件下:
根据现目前英克本身存在的审批规则,主要是这六个:

  • 审批ID 73:1080-指定部门收欠款-线下_承兑汇票-未拆发票-无差异类型回款审批(医贸);
  • 审批ID 27:销售收款单审批;
  • 审批ID 38 : 销售收款单发票没在一个收款单里或存在勾单差异审批;
  • 审批ID 44: 销售收款单(应收账款审批);
  • 审批ID 62 : 销售核销超差异范围审批;
  • 审批ID 65: 复方制剂回款核销审批。

  其中第一个审批ID73=“1080-指定部门收欠款-线下_承兑汇票-未拆发票-无差异类型回款审批(医贸)”,由于该审批会走BPM,用细单审批无法和BPM对接,本审批流程不再启用细单送审流程,只能总单送审,此时审批日志记录和收款细单行两个表中对应行的”是否启用BPM审批”后台数据库记录标志数字1,前台界面是显示打勾状态。
其他剩下五个审批在启用系统参数时,还需要增加销售收款单管理【1080】逻辑调整:
 ① 总单”送审”按钮调整逻辑:

  • 为了不影响原操作模式,系统需要根据点击总单上面的送审按钮来判断整个审批是该走总单审批还是细单审批。
  • 点总单上的送审按钮后,先判断,如果收款总单是收欠款,且总单上核销方式异常字段显示的”否”。那么依次触发以上六个审批规则。
    • 将每一行细单的审批状态保持为待审批;
    • 也将每一行细单的审批类型更新为总单送审;
    • 同时将总单审批状态更新为审批中;
    • 并将送审的细单记录插入新增的应收审批记录日志表。
  • 总单上的送审按钮后,先判断,如果收款总单是收欠款,且总单上核销方式异常字段显示的”是”,且审批ID不等于73 。那么就只能进行细单送审。系统此时也触发满足审批规则条件的第一个审批ID
    • 同时将这个审批ID更新到对应的每一行细单的审批ID中;
    • 将每一行细单的审批状态保持为待审批;
    • 也将每一行细单的审批类型更新为细单送审;
    • 同时将总单审批状态更新为审批中;
    • 并将这部分细单记录插入新增的应收审批记录日志表。
  • 总单上的送审按钮后,先判断,如果收款总单是预收款,且审批ID不等于73。那么就只能进行细单送审。系统此时也触发满足审批规则条件的第一个审批ID
    • 同时将这个审批ID更新到对应的每一行细单的审批ID中;
    • 将每一行细单的审批状态保持为待审批;
    • 也将每一行细单的审批类型更新为细单送审;
    • 同时将总单审批状态更新为审批中;
    • 并将送审的细单记录插入新增的应收审批记录日志表。

 ② 总单上面”审批”按钮逻辑调整:

  • 根据情况一。如果收款总单是收欠款,且总单上核销方式异常字段显示的”否”,且细单的审批类型是总单送审时,用户点总单的审批时候,

    • 也自动将审批状态(审批通过或者审批不通过)更新到每一行细单中。
    • 同时将细单的审批类型修改为总单审批;
    • 也同时修改总单的审批状态为审批通过或者审批不通过;
    • 并将审批的记录插入新增的应收审批记录日志表。
    • 如果该审批单也满足下一个审批规则ID,那么在上一个审批ID的审批完成后,由系统自动触发,先将总单审批状态还原回审批中,再继续将下一个审批ID同步更新到细单的审批ID中,细单审批状态也更新回待审批,直至将满足条件的审批规则ID审核完。
  • 根据情况二。如果收款总单是收欠款,且总单上核销方式异常字段显示的”是” ,且审批ID不等于73 ,系统进行限制不能进行总单审批,如果用户误点了总单的审批,那么系统进行提示:收款类别是收欠款中同时存在预收款或细单无账期方式只能进行细单审批。

  • 根据情况三。如果收款总单是预收款,且审批ID不等于73。系统进行限制不能进行总单审批,如果用户误点了总单的审批,那么系统进行提示:收款类别是预收款且非BPM审批时只能进行细单审批

 ③ 调整1080总单上面“回退送审“按钮

  • 根据情况一。如果收款总单是收欠款,且总单上核销方式异常字段显示的”否”,且细单的审批类型是总单送审,总单审批状态是待审批时候,用户点总单的回退送审时候,

    • 总单的审批状态变成初始状态;
    • 同时也自动将每一行细单的审批状态更新成初始状态,
    • 同时将细单的审批类型修改为总单回退送审,
    • 并将回退送审的记录插入新增的应收审批记录日志表。
  • 根据情况二。如果收款总单是收欠款,且总单上核销方式异常字段显示的”是” ,且审批ID不等于73 ,系统进行限制不能进行总单回退送审,如果用户误点了总单的回退送审按钮,那么系统进行提示:源审批类型是细单送审,不能点总单回退送审,请去细单里面点细单回退送审。

  • 根据情况三。如果收款总单是预收款,且审批ID不等于73。系统进行限制不能进行总单回退送审。如果用户误点了总单的回退送审,那么系统进行提示:源审批类型是细单送审,不能点总单回退送审,请去细单里面点细单回退送审。

 ④ 总单上面”由发票生成”按钮逻辑调整:

  • 用户由发票生成明细确定之后,系统自动将每一行的明细的审批状态自动更新为待审批状态,以免用户不去点送审,同时自动触发总单送审按钮(逻辑按照以上描写的总单送审按钮逻辑)。

 ⑤ 细单界面新增功能按钮

  • 在1910业务系统参数的“启用销售预收核销细单审批”,如果没有打勾,细单新增的按钮就隐藏不展现,如果勾选则,显示如下按钮及对应逻辑:
  • 新增”细单送审”按钮
    • 在细单审批类型是细单送审或者细单回退送审这两个条件下,且细单审批状态是初始状态条件下,用户点蓝一行或者多行甚至全选后,点细单送审按钮, 就将细单的审批状态改成待审批,并将细单送审的记录插入新增的应收审批记录日志表。
  • 新增”细单审批”按钮
    • 在细单审批类型是细单送审或者细单回退送审这两个条件下,且细单审批状态是待审批状态下,用户点蓝一行或者多行甚至全选后,点细单审批按钮,根据弹出的审批框由用户选择审批通过或者审批不通过,
    • 并将结果更新到细单审批状态中,
    • 同时将细单审批类型变成细单审批,
    • 同时将总单的审批状态由审批中修改为审批通过或者审批不通过,
    • 根据上一点总单的审批状态要根据所有细单的状态判断,细单状态包括审批通过或者不需要审批时才变更总单状态为审批通过,细单状态里面只要有一条审批不通过,那么总单状态就不通过,
    • 并将细单审批的记录插入新增的应收审批记录日志表。
    • 如果该审批总单也满足下一个审批规则ID,那么在上一个审批ID的审批完成后,由系统自动触发,将总单审批状态还原回审批中,再继续将下一个审批ID同步更新到细单的审批ID中,细单审批状态也更新回待审批,直至将满足条件的审批规则ID审核完。
  • 新增”细单回退送审”按钮
    • 在细单审批类型是细单送审条件下,且细单审批状态是待审批状态下,用户点蓝一行或者多行甚至全选后,点细单回退送审按钮, 并将细单回退送审的记录插入新增的应收审批记录日志表。同时将细单的审批类型修改为细单回退送审,细单审批状态还原为初始状态,对于总单审批状态保持审批中不变。
  • 新增”取消细单审批”按钮
    • 在细单审批类型是细单送审或者细单审批条件下,且细单审批状态是审批通过状态下,用户点蓝一行或者多行甚至全选,后面点取消细单审批按钮后,细单审批类型变更为细单取消审批,细单审批状态变更为初始状态,总单审批状态也变更为初始状态,同时将该取消审批的记录插入新增的应收审批记录日志表。

3) 销售收款单预收款账务逻辑调整:

 ① 总单款项类型=“预收款”时,新增保存逻辑调整:

  • 新增中间表:预收审批前核销占用记录。该表字段:收款细单ID、销售细单ID、收款细单金额

  • 由发票生成新增细单,细单字段“细单审批状态”为空或“无需审批”时,细单保存逻辑不变。

  • 由发票生成新增细单,细单审批状态为:初始状态或者待审批时,细单保存时需要增加记录中间表“预收审批前核销占用记录”数据,并取消写入“bms_cert_dtl_tmp ”表记录逻辑。

  • 在细单审批状态“审批通过”时,删除中间表“预收审批前核销占用记录”对应数据记录,并增加写入“bms_cert_dtl_tmp ”表记录逻辑。

  • 按钮“核销作废”时,如果细单状态不是:空、“无需审批”、“审批通过”时,需要增加删除中间表“预收审批前核销占用记录”逻辑。

2.销售收款单明细查询1077
  视图bms_sa_rec_dtlqry_v,新增一列细单审批状态,转换成中文显示值。
修改核销作废按钮逻辑

大前提:已生成传票的收款细单不能核销作废,这个逻辑点保持不变。

  1. 如果细单审批类型是总单送审,不管细单的审批状态,可以直接点核销作废;
  2. 如果细单审批类型是总单审批,不管细单的审批状态,可以直接点核销作废;
  3. 如果细单审批类型是总单回退送审,不管细单的审批状态,可以直接点核销作废;
  4. 如果细单审批类型是细单送审或者细单审批,细单审批状态是初始状态或者不需要审批两种状态时,可以直接点核销作废;
  5. 如果细单审批类型是细单送审或者细单审批,细单审批状态是待审批,不可以点核销作废,如果点了系统进行限制并给予提示:ERROR:ID号是”细单ID”的收款细单进入待审批状态,不能作废!;
  6. 如果细单审批类型是细单送审或者细单审批,细单审批状态是审批中,不可以点核销作废,如果点了系统进行限制并给予提示:ERROR:ID号是”细单ID”的收款细单还在审批中,不能作废!;
  7. 如果细单审批类型是细单送审或者细单审批,细单审批状态是审批通过时候,不可以直接点核销作废,,如果点了系统进行限制并给予提示:ERROR:ID号是”细单ID”的收款细单已经审批通过不能作废,若要作废请联系审批人点取消审批按钮!;
  8. 如果细单审批类型是细单回退送审, 细单审批是初始状态时候,可以直接点核销作废;(该种审批类型不会有其他审批状态)
  9. 如果细单审批类型是细单取消审批, 细单审批是初始状态时候,可以直接点核销作废;
    (该种审批类型不会有其他审批状态)

增加细单审核不通过逻辑
  如果审批人点击细单审批为不通过,那么当点审批不通过后,这里的触发逻辑,直接沿用1080界面核销作废按钮的逻辑,直接将收款细单的收款金额变成0,收款细单的作废人为审批人,收款细单的撤销核销人为审批人,收款细单的作废标志打上勾,同时收款细单的细单状态变成审批不通过。

修改删除细单按钮逻辑
大前提:已经核销作废成功的细单,才能点击删除细单按钮这个逻辑点保持不变。
  用户点击1080删除细单按钮时候, 先将细单审批类型变更为细单删除,同时将该条记录插入新增的应收审批记录日志表之后才进行删除的动作。

四 其他注意事项

  整个这个方案的大前提是需要在1910业务系统参数设置中“启用销售预收核销细单审批”这个选项打上勾才启用该模式,否则保持原模式。

文档更新时间: 2023-07-24 17:23   作者:赖俊峰