ERP(企业资源管理计划)通过奇门对接WMS(仓库管理系统)

**

ERP(企业资源管理计划)通过奇门对接WMS(仓库管理系统)**

奇门是什么
说白了就是一个中间件,干嘛的呢?就是用来将两个不相干的系统连接起来的东西,转接头知道不!有的人就开始杠了,我两个系统直接接不就完了干嘛还要个中间件呢?

举个例子: A系统(A公司ERP系统) B系统(B公司wms) C系统(A公司OMS系统) 现在客户需要将A系统和B系统 and C系统互联
不用奇门的连接方式 A开发接口给B系统调用 B系统开发接口给A调 C开发接口给A,B调 (根据业务逻辑来变化)
用奇门的连接方式 A开发接口调用奇门 B开发接口调用奇门 C开发接口调用奇门 差异显而易见,如果我的A系统 还要多连一个新的wms系统,不用奇门的话,我是不是又加大了开发量,我用了奇门,就不用单独的在为新的wms系统开发独立的接口了,和任何wms对接我都可以共用一个奇门接口。

下面就进入实操了,我用的java,所以就要从官网上下载一个奇门java的sdk,如果这都找不到放弃吧骚年,洗洗睡!因为代码中涉及到了一些商业机密,所以我只能告诉大家连接奇门的思路与逻辑!

将单个商品信息传入奇门
第一步:controller层

  1. 调用Dao层 通过商品的唯一编码,从ERP中查询到该商品的信息
//Dao层返回的商品数据
JSONObject jospxx = v7SpxxSevice.selectSpxxById(joparam);
            if(!jospxx.isEmpty()){
           //创建奇门连接
                QimenClient client = new DefaultQimenClient(Url, Appkey, Secret);
                SingleitemSynchronizeRequest req = new SingleitemSynchronizeRequest();
                req.setCustomerId(Customerid);
                req.setVersion("2.0");
                req.setActionType("add");
                req.setOwnerCode(Customerid);
		//这里要对着官方文档来传入参数,等下告诉你们怎么看
                SingleitemSynchronizeRequest.Item obj1 = new SingleitemSynchronizeRequest.Item();
                obj1.setItemCode(jospxx.getString("SPXX02"));//商品编码
                obj1.setItemName(jospxx.getString("SPXX04"));//商品名称
                obj1.setGoodsCode(jospxx.getString("SPXX02"));//商品编码
                obj1.setSkuProperty(jospxx.getString("SPXX04"));//商品名称
                obj1.setBrandCode(jospxx.getString("PPB01"));//品牌代码
                obj1.setUnit(jospxx.getString("xxxx"));//单位
                obj1.setItemType("ZC");//商品类型(ZC=正常商品;FX=分销商品;ZH=组合商品;ZP=赠品;BC=包材;HC=耗材;FL=辅料;XN=虚拟品;FS=附属品;CC=残次品; OTHER=其它;只传英文编码)
                req.setItem(obj1);
                SingleitemSynchronizeResponse rsp = null;
                try {
                //同步到奇门
                    rsp = client.execute(req);
                    if (rsp.getFlag().toString().equals("success")) {
                        System.out.println("----------------------更新V10奇门商品信息----------------------");
                        JSONObject joup = JsonUtils.JO();
                        joup.put("SPXX01", joparam.getString("SPXX01"));
                        joup.put("WBSPXX01", "1");
                        v7SpxxSevice.update(joup);

                        return EdiResult.done();
                    }
                    else {
                        return EdiResult.error(rsp.getMessage());
                    }
                } catch (Exception e) {
                    e.printStackTrace();
                    return EdiResult.error(e.getMessage());
                }
            }

先登录淘宝 isv开发者后台
https://login.taobao.com/member/login.jhtml?spm=a219a.7386653.1.2.3b89286ca5uenl&f=top&sub=true&redirectURL=http%3A%2F%2Fopen.taobao.com%2F

在这里插入图片描述

点击request,上面代码的SingleitemSynchronizeRequest对象,就是根据这个接口名来找的,request中的属性,都可以通过SingleitemSynchronizeRequest对象用get,set方法进行操作

在这里插入图片描述

在这里插入图片描述
商品数据封装完成后,就可以同步到奇门了
rsp = client.execute(req);
就这么简单,其他的接口都大同小异!一通百通!
appkey url Secret Customerid 这些都是必要的参数,奇门官方文档上有说明这是啥东西!

### WMS系统与奇门货主对接方案 对于WMS系统与奇门货主的对接,通常涉及多个方面的考量技术细节。为了确保对接过程顺利并满足业务需求,建议采用如下方案: #### 方案概述 1. **选择合适的开发工具** 使用官方提供的SDK可以简化接口调用复杂度,减少自行处理HTTP请求响应解析的工作量。针对.NET Core环境下的项目,推荐使用奇门提供的.NET Core SDK来完成对接工作[^1]。 2. **定义核心功能模块** 需要重点实现的功能主要包括发货、退换货以及取消订单这三个主要操作。这些操作涵盖了日常运营中最常见的物流场景,能够有效支撑电商业务流程中的商品流转环节。 3. **遵循标准化API设计原则** API的设计应当遵循RESTful风格或其他公认的行业标准,以便于维护扩展。同时,应确保所使用的API具备良好的文档说明,方便开发者理解使用。此外,还需要考虑错误码定义、异常情况处理机制等方面的内容,提高系统的健壮性用户体验[^2]。 4. **实施安全措施** 数据传输过程中必须采取必要的加密手段保障信息安全;访问控制方面则可以通过OAuth 2.0等方式验证身份合法性,防止未授权的操作发生。另外,在实际部署时还需注意网络隔离策略的应用,保护内网资源免受外部攻击威胁。 5. **测试与优化** 完成初步编码后,需进行全面而细致的质量检测活动,包括单元测试、集成测试乃至压力测试等多个层次。在此基础上不断调整性能参数设置,力求达到最优的服务水平协议(SLA)指标要求。 ```csharp // C#代码示例:利用SDK发送发货通知给奇门服务器 using Qimen.SDK; public class OrderService { private readonly IQimenClient _client; public async Task SendShipmentNotificationAsync(string orderId){ var request = new ShipmentRequest{ OrderId = orderId, // 设置其他必要字段... }; await _client.SendAsync(request); } } ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值