电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

寻源二开指南--缴费管理--整体架构及接口调用

来源:金蝶云社区作者:金蝶2024-09-2213

寻源二开指南--缴费管理--整体架构及接口调用

1. 缴费管理--整体架构及接口调用

1.1    业务场景简介

寻源过程中,涉及到投标保证金、标书费、履约保证金等费用的管理。标准产品提供了整体管理框架、核心主数据和各种标准操作,二开可以调用接口进行特殊处理,如自动缴费等。

 

1.2    简要实现方案

步骤

开发内容

备注

1

收费管理整体架构


2

收费管理接口调用


 

1.3    收费管理整体架构和接口调用

1.3.1  整体架构

1、整体架构:包括5个主数据:收费明细记录、投标保证金余额、履约保证金余额、投标保证金汇总信息、履约保证金汇总信息。在收费管理审核/反审核,收费处理,余额调整,定标单审核/反审核,寻源项目变更时,对这5个主数据的影响。

 


2、投标保证金、履约保证金的余额计算

项目完成后,如果供应商不再参与,可以将保证金退回。如果继续参与下一轮投标,则可以将剩余金额结转到保证金余额,或转履约保证金。下图显示各种操作对余额的影响。

 

3、投标保证金、履约保证金的汇总计算

标准产品也提供了投标保证金、履约保证金的累积数据,下图显示各种操作对汇总信息的影响。

 


4、寻源收费管理主要类图

 

 

1.3.2  接口调用

接口调用包括两种基本类型的处理:更新状态和余额调整

业务处理1更新状态

更新状态 dataMap 参数:

 

// 1 操作类型--必须(confirm 确认    reject 拒绝    return 退还    transfer 结余    carryover 转履约金)

dataMap.put("opkey", "");

 

// 2 费用明细分录id--必须

dataMap.put("entryid", 0);

// 3 处理人id--必须

dataMap.put(BillAssistConstant.CFM, 0);

// 4 处理时间--必须

dataMap.put(BillAssistConstant.CFM_DATE,   DATA);

// 5 处理意见--必须

dataMap.put(BillAssistConstant.CFM_OPINION,   "");

// 6 退还金额--必须(根据操作类型)

dataMap.put(SrcCommonConstant.RETURNAMOUNT,   0);

// 7 结余金额--必须(根据操作类型)

dataMap.put(SrcCommonConstant.TRANSFERAMOUNT,   0);

// 8 转履约金额--必须(根据操作类型)

dataMap.put(SrcCommonConstant.CARRYOVERAMOUNT,   0);

// 9 履约保证金类型--必须,默认"2"

dataMap.put(SrcCommonConstant.SURPLUSTYPE,"2");

 

业务处理2余额调整

余额调整 dataMap 参数:

 

// 1 保证金类型--必须,默认"1"

dataMap.put(SrcCommonConstant.SURPLUSTYPE,"1");

// 2 供应商类型--必须,默认 "bd_supplier"

dataMap.put(SrcCommonConstant.SUPPLIERTYPE,   "bd_supplier");

// 3 供应商id--必须

dataMap.put(SrcCommonConstant.SUPPLIER, 0);

// 4 采购组织id--必须

dataMap.put(SrcCommonConstant.ORG, 0);

// 5 创建组织id--必须

dataMap.put(BillAssistConstant.CREATE_ORG,   0);

// 6 项目id--非必须

dataMap.put(SrcCommonConstant.SOURCE, 0);

// 7 收费项id--非必须

dataMap.put(SrcCommonConstant.FEEITEM, 0);

// 8 币别id--必须

dataMap.put(SrcCommonConstant.CURRENCY, 0);

// 9 调整后余额--必须

dataMap.put(SrcCommonConstant.SURPLUSAMOUNT,   0);

// 10 摘要--必须

dataMap.put(BillAssistConstant.REMARK,   "");

// 11 创建人id--必须

dataMap.put(BillAssistConstant.CREATOR,   RequestContext.get().getUserId());

// 12 创建时间--必须

dataMap.put(BillAssistConstant.CREATE_TIME,   TimeServiceHelper.now());

 

接口调用方式一、通过工具类进行调用

 


接口调用方式二、通过微服务接口进行调用

微服务接口:更新状态

Map<String, Object> result =   DispatchServiceHelper.invokeBizService("scm", "src",   "SrcFeeManageService", "updatePaymentStatus",dataMap)

 

微服务接口:调整状态

Map<String, Object> result =   DispatchServiceHelper.invokeBizService("scm", "src",   "SrcFeeManageService", "adjustPaymentStatus",dataMap)

 

 

1.4    供应商自动缴费示例

下面以供应商缴费、提交、确认的后台处理为例,实现供应商自动缴费,代码如下:

/**

        * 自动提交并确认

        */

       public   void autoSubmitAndConfirm() {

              //   数据map

              Map<String,   Object> dataMap = new HashMap<>(16);

              //   1 构建基本信息

              //   1.1 处理人id--必须

              dataMap.put(BillAssistConstant.CFM,   RequestContext.get().getCurrUserId());

              //   1.2 处理时间--必须

              dataMap.put(BillAssistConstant.CFM_DATE,   TimeServiceHelper.now());

              //   1.3 处理意见--必须

              dataMap.put(BillAssistConstant.CFM_OPINION,   "自动缴费测试");// 根据实际数据设置

 

              //   2 构建项目信息

              DynamicObject   billObj = this.getModel().getDataEntity();

              //   2.1 寻源项目id,必须

              data

寻源二开指南--缴费管理--整体架构及接口调用

1. 缴费管理--整体架构及接口调用1.1 业务场景简介寻源过程中,涉及到投标保证金、标书费、履约保证金等费用的管理。标准产品提供了整...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

已经是第一篇
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信