餐饮门店要货申请单配送费二开说明原创
金蝶云社区-Mandybuff
Mandybuff
0人赞赏了该文章 166次浏览 未经作者许可,禁止转载编辑于2022年10月14日 10:03:46


 

一、移动订货自定义配送费概要说明

移动订货自定义配送费是便于第三方自定义门店要货申请单配送费的计算规则的功能。客户在使用中如有自定义配送费的需求,可参考以下说明进行二开。

该功能的前置补丁为:

1. 创建一个自定义配送费插件

1.1 创建移动订货自定义配送费插件类库

使用VS2012及以上版本的C#语言,创建一个Class Library项目:

图片.png


1.2 引用必要组件

到K/3 Cloud安装目录的WebSite\Bin子目录,引用如下组件:

Kingdee.BOS.dll

Kingdee.K3.DE.SCM.App.Core.dll

Kingdee.K3.DE.SCM.Common.BusinessEntity.dll

 

1.3 创建移动订货自定义配送费插件类

在前文所建的移动订货自定义配送费插件工程中,添加新类,派生自移动订货配送费基类:Kingdee.K3.DE.SCM.App.Core.DeliveryFee.AbstractDeliveryFeeService,编译部署该插件工程到金蝶云星空应用服务器中。

 

支付基类:


图片.png  

 

2. 启用自定义配送费插件

管理员登录金蝶云星空 -> 打开菜单【基础管理】-【公共设置】-【餐饮参数设置】

注:【自定义运费规则】面板需要二开扩展,修改可见性后才能看到



 图片.png

 

二、 插件基类的抽象方法说明

1. CalculateFee

移动订货计算配送费方法,在该方法内根据参数、业务需求,计算出配送费。

 

抽象方法定义:

public abstract CalculateResult CalculateFee(Context ctx, CalculateParamter param);

 

参数介绍:CalculateParamter

属性

类型

描述

OrgId

long

组织内码

DeptId

long

部门内码

Date

DateTime

订单申请日期

IsRushOrder

bool

是否紧急订单

-Materials

List<Object>

物料明细

MaterialId

long

物料内码

MasterId

long

物料MasterId

UnitId

long

订货单位内码

Qty

decimal

订货数量

CDOrgId

long

配送组织内码

IsDirectCD

bool

是否直拨

IsOwnPurchase

bool

是否自采

Pricedecimal含税单价
PriceUnitId
long含税单价-计价单位内码
TotalMatAmtdecimal总金额
IsPresent bool是否为赠品

 

返回结果参数介绍:CalculateResult

属性

类型

描述

IsSuccess

bool

成功与否

Message

string

失败信息

DeliveryFee

decimal

配送费

 


 

 

三、 代码示例

using Kingdee.BOS;

using Kingdee.K3.DE.SCM.App.Core.DeliveryFee;

using Kingdee.K3.DE.SCM.Common.BusinessEntity.DeliveryFee;

 

namespace Kingdee.K3.Cloud.Custom

{

    public class CustomDeliveryFeeService : AbstractDeliveryFeeService

    {

        public override CalculateResult CalculateFee(Context ctx, CalculateParamter param)

        {

            // 根据参数、业务需要,计算配送费

            decimal deliveryFee = 0;

 

            // 返回计算结果

            return new CalculateResult(true, string.Empty, deliveryFee);

        }

    }

}

赞 0