记得上下班打卡 | git大法好,push需谨慎
Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
liquidnet-bus-v1
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
董敬伟
liquidnet-bus-v1
Commits
960f032e
Commit
960f032e
authored
Dec 02, 2022
by
胡佳晨
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
erp 相关测试接口提交
parent
055950d7
Changes
10
Show whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
529 additions
and
43 deletions
+529
-43
ErpWdtClient.java
...n/java/com/liquidnet/service/erp/config/ErpWdtClient.java
+19
-10
ErpEnum.java
...main/java/com/liquidnet/service/erp/constant/ErpEnum.java
+43
-12
LogisticsListParam.java
...a/com/liquidnet/service/erp/param/LogisticsListParam.java
+36
-0
OrderListParam.java
.../java/com/liquidnet/service/erp/param/OrderListParam.java
+39
-9
TradeListParam.java
.../java/com/liquidnet/service/erp/param/TradeListParam.java
+58
-12
LogisticsSyncAckVo.java
...java/com/liquidnet/service/erp/vo/LogisticsSyncAckVo.java
+15
-0
LogisticsSyncVo.java
...in/java/com/liquidnet/service/erp/vo/LogisticsSyncVo.java
+64
-0
StockQueryBaseVo.java
...n/java/com/liquidnet/service/erp/vo/StockQueryBaseVo.java
+17
-0
StockQueryVo.java
.../main/java/com/liquidnet/service/erp/vo/StockQueryVo.java
+154
-0
ErpTestController.java
...uidnet/service/platform/controller/ErpTestController.java
+84
-0
No files found.
liquidnet-bus-common/liquident-common-erp/src/main/java/com/liquidnet/service/erp/config/ErpWdtClient.java
View file @
960f032e
...
...
@@ -85,18 +85,27 @@ public class ErpWdtClient {
map
.
put
(
"appkey"
,
"mdtk2-test"
);
map
.
put
(
"sid"
,
"apidevnew2"
);
map
.
put
(
"timestamp"
,
Long
.
toString
(
System
.
currentTimeMillis
()
/
1000
));
// map.put("start_time", "2022-11-30 11:30:00");
// map.put("end_time", "2022-11-30 11:35:00");
// map.put("spec_no", "mdsk001");
// map.put("warehouse_no", "mdtk2-test");
map
.
put
(
"shop_no"
,
"mdtk2-test"
);
map
.
put
(
"limit"
,
"100"
);
//增量库存查询
map
.
put
(
"start_time"
,
"2022-11-30 13:46:00"
);
map
.
put
(
"end_time"
,
"2022-12-01 11:00:00"
);
map
.
put
(
"warehouse_no"
,
"mdtk2-test"
);
map
.
put
(
"spec_no"
,
"mdsk01"
);
//同步库存查询
// map.put("shop_no","mdtk2-test");
// map.put("limit","100");
//创建原始单
// map.put("shop_no", "mdtk2-test");
// List<Map<String, Object>> tradeList = new ArrayList<Map<String, Object>>();
// tradeList.add(new TradeListVo().test());
// map.put("trade_list", JSON.toJSONString(tradeList));
// System.out.println("trade_list = " + map.get("trade_list"));
//
map
.
put
(
"sign"
,
new
ErpWdtClient
().
getErpSign
(
map
,
"09335107b"
));
System
.
out
.
println
(
"sign = "
+
map
.
toString
());
System
.
out
.
println
(
"sign = "
+
map
.
get
(
"sign"
));
System
.
out
.
println
(
"timestamp = "
+
map
.
get
(
"timestamp"
));
}
...
...
liquidnet-bus-common/liquident-common-erp/src/main/java/com/liquidnet/service/erp/constant/ErpEnum.java
View file @
960f032e
...
...
@@ -25,28 +25,28 @@ public class ErpEnum {
* 查询后需要调用 logistics_sync_ack 应答
*/
LOGISTICS_SYNC_ACK
(
"logistics_sync_ack.php"
),
/**
* 查询库存同步
* 建议间隔时间3~5分钟查询一次,集中获取待同步数据,注意上一次回写完成以后,再从数据池获取待同步的数据。 查询后需要调用 api_goods_stock_change_ack 应答
*/
API_GOODS_STOCK_CHANGE_QUERY
(
"api_goods_stock_change_query.php"
),
/**
* 库存同步回写
* 查询后需要调用 api_goods_stock_change_ack 应答
*/
API_GOODS_STOCK_CHANGE_ACK
(
"api_goods_stock_change_ack.php"
),
//
/**
//
* 查询库存同步
//
* 建议间隔时间3~5分钟查询一次,集中获取待同步数据,注意上一次回写完成以后,再从数据池获取待同步的数据。 查询后需要调用 api_goods_stock_change_ack 应答
//
*/
//
API_GOODS_STOCK_CHANGE_QUERY("api_goods_stock_change_query.php"),
//
/**
//
* 库存同步回写
//
* 查询后需要调用 api_goods_stock_change_ack 应答
//
*/
//
API_GOODS_STOCK_CHANGE_ACK("api_goods_stock_change_ack.php"),
/**
* 创建原始退款单
* 销售订单(包括发货前和发货后)退款或退货单据推送至ERP。注:销售订单的售后换货订单此接口推送“退货类型”退款单,换出订单“trade_push.php”推送
* 批量推送的退款单据,每次不超过10单
*/
API_SALES_REFUND_PUSH
(
"sales_refund_push.php"
),
//
API_SALES_REFUND_PUSH("sales_refund_push.php"),
/**
* 查询退换管理
* 获取ERP销售退货(换货)订单信息
* 按照旺店通ERP订单的最后修改时间增量获取数据,请求时输入start_time和end_time作为时间跨度的筛选条件。
*/
API_REFUND_QUERY
(
"refund_query.php"
);
//
API_REFUND_QUERY("refund_query.php");
;
private
final
String
uri
;
...
...
@@ -58,4 +58,35 @@ public class ErpEnum {
return
uri
;
}
}
public
enum
WdtStatus
{
/**
* 增量查询库存
*/
//未确认,客户只拍单未未付款(等待付款的订单,货到付款(COD)订单不需要等付款,直接进行待发货)
STATUS_UN_PAY
(
10
),
// STATUS_(20),
//已付款待发货(包含货到付款),30只可以直接变更为70/ 80这2种状态
STATUS_UN_SEND
(
30
),
// STATUS_(40),
//已发货(平台销售订单已经发货时推送此状态),如果已发货在自建商城代表订单完结状态,无后续状态变更,直接推送状态值70
STATUS_SEND
(
50
),
//已完成(已签收),平台订单完成(客户确认收货)后,推送此状态;
//订单为自动流转模式时,初次推送的平台订单状态直接就是已完成状态70
STATUS_FINISH
(
70
),
//已退款(付款后又全部退款推送此状态)
STATUS_REFUND
(
80
),
//已关闭(未付款直接取消的订单推送此状态)
STATUS_CLOSE
(
90
);
private
final
int
status
;
WdtStatus
(
int
status
)
{
this
.
status
=
status
;
}
public
int
WdtStatus
()
{
return
status
;
}
}
}
liquidnet-bus-common/liquident-common-erp/src/main/java/com/liquidnet/service/erp/param/LogisticsListParam.java
0 → 100644
View file @
960f032e
package
com
.
liquidnet
.
service
.
erp
.
param
;
import
com.liquidnet.service.erp.constant.ErpEnum
;
import
lombok.Data
;
import
java.math.BigDecimal
;
import
java.util.HashMap
;
@Data
public
class
LogisticsListParam
implements
Cloneable
{
// 回写的记录id,见logistics_sync_query中rec_id
private
int
rec_id
;
// 回写状态: 0成功 1失败
private
int
status
;
// 相关描述信息,可在erp的物流同步界面看到
private
BigDecimal
message
;
private
static
final
LogisticsListParam
obj
=
new
LogisticsListParam
();
public
static
LogisticsListParam
getNew
()
{
try
{
return
(
LogisticsListParam
)
obj
.
clone
();
}
catch
(
CloneNotSupportedException
e
)
{
return
new
LogisticsListParam
();
}
}
public
HashMap
<
String
,
Object
>
test
(
int
recId
,
int
status
)
{
HashMap
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"rec_id"
,
recId
);
map
.
put
(
"status"
,
status
);
map
.
put
(
"message"
,
"test"
);
return
map
;
}
}
liquidnet-bus-common/liquident-common-erp/src/main/java/com/liquidnet/service/erp/
vo/OrderListVo
.java
→
liquidnet-bus-common/liquident-common-erp/src/main/java/com/liquidnet/service/erp/
param/OrderListParam
.java
View file @
960f032e
package
com
.
liquidnet
.
service
.
erp
.
vo
;
package
com
.
liquidnet
.
service
.
erp
.
param
;
import
com.liquidnet.service.erp.constant.ErpEnum
;
import
lombok.Data
;
import
java.math.BigDecimal
;
import
java.util.HashMap
;
@Data
public
class
OrderList
Vo
{
public
class
OrderList
Param
implements
Cloneable
{
// [必填]平台订单货品表主键,子订单唯一标识,同一个sid下通过本接口新增订单的oid(子订单编号)要保证唯一;如果oid重复,ERP生成系统单(递交)时会提示“订单货品数量不一致xxxxxx”
private
String
oid
;
// [必填]货品数量,订单推送成功以后本字段值不能更改
private
String
num
;
private
BigDecimal
num
;
// [必填]标价,折扣前的价格,可以推送价格为0的商品。订单推送成功以后本字段值不能更改
private
String
price
;
private
BigDecimal
price
;
// [必填]平台子订单状态,子订单状态可以和主订单不一样,比如其中一个子订单退款完成,其状态是80,但主订单仍然是待发货,可选值同trade_status
private
String
status
;
private
int
status
;
// [必填]0:无退款,1:取消退款,2:已申请退款,3:等待退货,4:等待收货,5:退款成功。本字段在售前退款的时候,根据不同的场景填写不同的值,eg:申请退款值为2,取消退款值为1……
private
String
refund_status
;
private
int
refund_status
;
// [必填]平台系统货品(SPU)的唯一标识。goods_id不能为空,SPU和SKU概念介绍
private
String
goods_id
;
// 平台系统单品(SKU)的的唯一标识,尽量不为空,SPU和SKU概念介绍
...
...
@@ -28,15 +32,41 @@ public class OrderListVo {
// 平台货品规格名称
// private String spec_name;
// [必填]客服调整总金额(大于0加价,小于0减价,是折扣来源的一部分,没有传0)
private
String
adjust_amount
;
private
BigDecimal
adjust_amount
;
// [必填]下单总折扣,客户下单时折扣(比如促销打折,不包含客服调整、分摊折扣,没有传0)
private
String
discount
;
private
BigDecimal
discount
;
// [必填]分摊总折扣,由总订单分摊而来,一般是付款时产生,如使用优惠券,没有传0。分摊优惠传值注意:例如三个商品,优惠10,分摊优惠可以是:3/3/4,或者3.33/3.33/3.34.即最后一个商品的分摊优惠使用减法计算
private
String
share_discount
;
private
BigDecimal
share_discount
;
// 货品明细备注推送此字段ERP客户端需升级至V2.3.9.2及以上
// private String remark;
// 平台货品所属类目
// private String cid;
private
static
final
OrderListParam
obj
=
new
OrderListParam
();
public
static
OrderListParam
getNew
()
{
try
{
return
(
OrderListParam
)
obj
.
clone
();
}
catch
(
CloneNotSupportedException
e
)
{
return
new
OrderListParam
();
}
}
public
HashMap
<
String
,
Object
>
test
(
String
id
)
{
HashMap
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"oid"
,
"testOrderSku"
+
id
);
map
.
put
(
"num"
,
BigDecimal
.
ONE
);
map
.
put
(
"price"
,
BigDecimal
.
ZERO
);
map
.
put
(
"status"
,
ErpEnum
.
WdtStatus
.
STATUS_UN_SEND
.
WdtStatus
());
map
.
put
(
"refund_status"
,
0
);
map
.
put
(
"goods_id"
,
"testSpu001"
);
map
.
put
(
"spec_id"
,
"testSku001"
);
map
.
put
(
"goods_no"
,
"mdsk01"
);
map
.
put
(
"spec_no"
,
"mdsk01"
);
map
.
put
(
"goods_name"
,
"01测试"
);
map
.
put
(
"adjust_amount"
,
BigDecimal
.
ZERO
);
map
.
put
(
"discount"
,
BigDecimal
.
ZERO
);
map
.
put
(
"share_discount"
,
BigDecimal
.
ZERO
);
return
map
;
}
}
liquidnet-bus-common/liquident-common-erp/src/main/java/com/liquidnet/service/erp/
vo/TradeListVo
.java
→
liquidnet-bus-common/liquident-common-erp/src/main/java/com/liquidnet/service/erp/
param/TradeListParam
.java
View file @
960f032e
package
com
.
liquidnet
.
service
.
erp
.
vo
;
package
com
.
liquidnet
.
service
.
erp
.
param
;
import
com.liquidnet.service.erp.constant.ErpEnum
;
import
lombok.Data
;
import
java.math.BigDecimal
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
@Data
public
class
TradeList
Vo
{
public
class
TradeList
Param
implements
Cloneable
{
// [必填] 指商城、官网等平台的订单编号,ERP称之为原始单号,同一个sid下通过本接口新增订单的tid保证唯一。
private
String
tid
;
// [必填] 平台订单状态较多且涉及变更
private
String
trade_status
;
// // 平台订单付款状态:0:未付款,1:部分付款,2:已付款
// private String pay_status;
private
int
trade_status
;
// 平台订单付款状态:0:未付款,1:部分付款,2:已付款
private
int
pay_status
;
public
int
getPay_status
()
{
return
2
;
}
// [必填] 1:款到发货,2:货到付款(包含部分货到付款),3:分期付款,4:挂账
private
String
delivery_term
;
private
int
delivery_term
;
// 平台订单创建时间,时间格式:yyyy-MM-dd HH:mm:ss
private
String
trade_time
;
// [必填] 平台订单付款时间,时间格式:yyyy-MM-dd HH:mm:ss,未付款订单为:0000-00-00 00:00:00
...
...
@@ -67,15 +77,15 @@ public class TradeListVo {
// [客服标旗,取值0至5对应的标旗颜色依次为灰(无标旗)、红、黄、绿、蓝、紫,不传默认0
// private String seller_flag;
// [必填]商家收取买家的物流或者快递费用
private
String
post_amount
;
private
BigDecimal
post_amount
;
// 货到付款金额
// private String cod_amount;
// [必填]货到付款买家费用,扣除货到付款订单金额后,卖家仍需支付的货到付款其他金额。这个钱卖家收不回来,是快递公司直接收走,但在快递单里是要打印出来,否则快递收款就错了
private
String
ext_cod_fee
;
private
BigDecimal
ext_cod_fee
;
// [必填] 其它应从买家收取的服务费,其他费用
private
String
other_amount
;
// [必填]订单已付金额,paid计算公式:paid
=
Σ(price * num + adjust_amount -discount – share_discount)+ post_amount+other_amount,所有金额相关字段推送处理办法,单击这里
private
String
paid
;
private
BigDecimal
other_amount
;
// [必填]订单已付金额,paid计算公式:paid
",
Σ(price * num + adjust_amount -discount – share_discount)+ post_amount+other_amount,所有金额相关字段推送处理办法,单击这里
private
BigDecimal
paid
;
// 1:身份证(不传默认为0,为0时将证件号码置空)
// private String id_card_type;
// 证件号码
...
...
@@ -87,6 +97,42 @@ public class TradeListVo {
// ERP内自定义的仓库编号,查看路径ERP→设置→基本设置→仓库→仓库列表,测试环境仓库编号查看测试环境分配邮件。平台订单需指定ERP内仓库时,传哪个仓库的编号,ERP将为订单选择哪个仓库。
private
String
warehouse_no
;
// [必填]货品明细列表(子订单列表)节点
private
List
<
OrderListVo
>
order_list
;
private
List
<
OrderListParam
>
order_list
;
private
static
final
TradeListParam
obj
=
new
TradeListParam
();
public
static
TradeListParam
getNew
()
{
try
{
return
(
TradeListParam
)
obj
.
clone
();
}
catch
(
CloneNotSupportedException
e
)
{
return
new
TradeListParam
();
}
}
public
HashMap
<
String
,
Object
>
test
(
String
id
)
{
HashMap
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"tid"
,
"testOrderSpu"
+
id
);
map
.
put
(
"trade_status"
,
ErpEnum
.
WdtStatus
.
STATUS_UN_SEND
.
WdtStatus
());
map
.
put
(
"delivery_term"
,
1
);
map
.
put
(
"trade_time"
,
"2022-11-30 12:00:00"
);
map
.
put
(
"pay_time"
,
"2022-11-30 12:00:00"
);
map
.
put
(
"buyer_nick"
,
"大美测试"
);
map
.
put
(
"pay_id"
,
"testSku001"
);
map
.
put
(
"receiver_name"
,
"大美"
);
map
.
put
(
"receiver_province"
,
"mdsk01"
);
map
.
put
(
"receiver_city"
,
"01测试"
);
map
.
put
(
"receiver_district"
,
""
);
map
.
put
(
"receiver_address"
,
"北京市海淀区3-12"
);
map
.
put
(
"receiver_mobile"
,
"15901093014"
);
map
.
put
(
"post_amount"
,
BigDecimal
.
TEN
);
map
.
put
(
"ext_cod_fee"
,
BigDecimal
.
ZERO
);
map
.
put
(
"other_amount"
,
BigDecimal
.
ZERO
);
map
.
put
(
"paid"
,
BigDecimal
.
TEN
);
map
.
put
(
"warehouse_no"
,
"mdtk2-test"
);
List
<
Map
<
String
,
Object
>>
orderList
=
new
ArrayList
<
Map
<
String
,
Object
>>();
orderList
.
add
(
new
OrderListParam
().
test
(
id
));
map
.
put
(
"order_list"
,
orderList
);
return
map
;
}
}
liquidnet-bus-common/liquident-common-erp/src/main/java/com/liquidnet/service/erp/vo/LogisticsSyncAckVo.java
0 → 100644
View file @
960f032e
package
com
.
liquidnet
.
service
.
erp
.
vo
;
import
lombok.Data
;
import
java.math.BigDecimal
;
@Data
public
class
LogisticsSyncAckVo
implements
Cloneable
{
// 回写的记录id
private
int
rec_id
;
// 错误信息的描述
private
int
error
;
}
liquidnet-bus-common/liquident-common-erp/src/main/java/com/liquidnet/service/erp/vo/LogisticsSyncVo.java
0 → 100644
View file @
960f032e
package
com
.
liquidnet
.
service
.
erp
.
vo
;
import
lombok.Data
;
@Data
public
class
LogisticsSyncVo
implements
Cloneable
{
// 主键,用于logistics_sync_ack回写状态
private
int
rec_id
;
// 代表店铺所有属性的唯一编码,用于店铺区分,ERP内支持自定义(ERP店铺界面设置)
private
int
shop_no
;
// 原始订单编号,商城或平台订单号
private
int
tid
;
// 物流或者快递面单对应的编号
private
int
logistics_no
;
// 响应值为代表物流方式的数字,数字对应的物流方式名称单击这里
private
int
logistics_type
;
// 发货时间 时间格式:yyyy-MM-dd HH:mm:ss
private
int
consign_time
;
// 是否拆分发货,1:拆单发货,0:不进行拆单发货
private
int
is_part_sync
;
// 子订单编号串,以逗号(,) 分隔,并且长度不固定(is_part_sync非0时才有效)
private
int
oids
;
// 平台ID,固定值127
private
int
platform_id
;
// 订单ID
private
int
trade_id
;
// 代表物流所有属性的唯一编码,用于物流区分,ERP内支持自定义(ERP物流界面设置)
private
int
logistics_code_erp
;
// ERP内自定义的物流名称,(对应ERP设置-基本设置-物流界面的物流名称)
private
int
logistics_name_erp
;
// 物流方式类型名称,(ERP设置-基本设置-物流界面的物流类型中文名称)
private
int
logistics_name
;
// 出库单id
private
int
stockout_id
;
// 1:需要同步,0:不需要同步
private
int
is_need_sync
;
// 0:等待同步2:同步失败,3:同步成功4:手动设置为同步成功,5:手动取消同步
private
int
sync_status
;
// 一个订单要多次同步时,最后一个为1,用于同步回写状态
private
int
is_last
;
// 默认为0
private
int
shop_id
;
// 默认为0
private
int
logistics_id
;
// 同步说明
private
int
description
;
// 默认为'0000-00-00 00:00:00',成功同步时间
private
int
sync_time
;
// 默认为0,是否使用淘宝在线发货
private
int
is_online
;
// 默认为 '',平台返回的错误码
private
int
error_code
;
// 默认为 '',平台返回的错误描述
private
int
error_msg
;
// 默认为0,重试计数(有些同步失败可重试)
private
int
try_times
;
// 最后修改时间, 时间格式:yyyy-MM-dd HH:mm:ss
private
int
modified
;
// 创建时间,时间格式:yyyy-MM-dd HH:mm:ss
private
int
created
;
// 序列号(存在序列号时返回序列号,无序列号时返回 flag)
private
int
sn_list
;
}
liquidnet-bus-common/liquident-common-erp/src/main/java/com/liquidnet/service/erp/vo/StockQueryBaseVo.java
0 → 100644
View file @
960f032e
package
com
.
liquidnet
.
service
.
erp
.
vo
;
import
lombok.Data
;
import
java.util.List
;
@Data
public
class
StockQueryBaseVo
{
// 回写的记录id
private
int
code
;
// 回写的记录id
private
String
message
;
// 回写的记录id
private
int
total_count
;
// 回写的记录id
private
List
<
StockQueryVo
>
stocks
;
}
liquidnet-bus-common/liquident-common-erp/src/main/java/com/liquidnet/service/erp/vo/StockQueryVo.java
0 → 100644
View file @
960f032e
package
com
.
liquidnet
.
service
.
erp
.
vo
;
import
lombok.Data
;
import
java.math.BigDecimal
;
@Data
public
class
StockQueryVo
implements
Cloneable
{
// 单品主键id
private
int
spec_id
;
// 代表SPU所有属性的唯一编号,用于系统货品的区分,SPU概念介绍
private
String
goods_no
;
// 品牌编号
private
String
brand_no
;
// 品牌名称,ERP版本V2.3.8.4及以上才可返回
private
String
brand_name
;
// 货品名称
private
String
goods_name
;
// 代表单品(SKU)所有属性的唯一编号,用于系统单品的区分,SKU概念介绍
private
String
spec_no
;
// 规格码
private
String
spec_code
;
// 条形码
private
String
barcode
;
// 仓库主键id
private
int
warehouse_id
;
// 代表仓库所有属性的唯一编码,用于仓库区分,ERP内支持自定义(ERP仓库界面设置)
private
String
warehouse_no
;
// 仓库名称
private
String
warehouse_name
;
// (0不限 1普通仓库 2自动流传外部 3京东仓储 4科捷 5百世物流 6SKU360 7通天晓 8中联网仓 9顺丰仓储 10网仓2号 11奇门仓储 12旺店通仓储 13心怡仓储 14力威仓储 15京东沧海 16云集仓储 17POS 18虎符 20外部链路型 22抖店云仓 126分销委外仓 127其它)
private
int
warehouse_type
;
// 库存量
private
BigDecimal
stock_num
;
// 锁定量
private
BigDecimal
lock_num
;
// 主键
private
long
rec_id
;
// 创建时间
private
String
created
;
// 单品在仓库中编码,一般为空
private
String
spec_wh_no2
;
// 委外出库库存占用量
private
BigDecimal
wms_reserve_num
;
// 0 未启用 1 启用 2停用
private
int
status
;
// 今日销量
private
BigDecimal
stock_today_num
;
// 0 未启用 1 启用 2停用
private
BigDecimal
stock_diff
;
// 辅助单位
private
int
unit
;
// 依据最大警戒天数计算出的最大警戒库存
private
BigDecimal
safe_stock1
;
// 最小警戒库存
private
BigDecimal
safe_stock2
;
// 最大警戒库存
private
BigDecimal
safe_stock3
;
// 警戒库存类型
private
int
alarm_type
;
// 警戒库存计算天数
private
int
alarm_days
;
// 最大警戒天数
private
int
alarm_days1
;
// 销售增长率类型
private
int
sales_rate_type
;
// 销售增长率
private
BigDecimal
sales_rate
;
// 销售周期
private
BigDecimal
sales_rate_cycle
;
// 固定月销售增长率
private
BigDecimal
sales_fixrate
;
// 颜色标记
private
int
flag_id
;
// 默认入库货位
private
int
default_position_id
;
// 最后一次入库货位
private
int
last_position_id
;
// 上次盘点时间
private
String
last_pd_time
;
// 上次出入库时间
private
String
last_inout_time
;
// 最后销售时间
private
String
last_sales_time
;
// 备注
private
String
remark
;
// 未付款量
private
BigDecimal
unpay_num
;
// 预订单量
private
BigDecimal
subscribe_num
;
// 待审核量
private
BigDecimal
order_num
;
// 待发货量
private
BigDecimal
sending_num
;
// 采在途量
private
BigDecimal
purchase_num
;
// 调拨在途量
private
BigDecimal
transfer_num
;
// 待调拨量
private
BigDecimal
to_transfer_num
;
// 待采购量
private
BigDecimal
to_purchase_num
;
// 采购到货量
private
BigDecimal
purchase_arrive_num
;
// 采购退货量
private
BigDecimal
return_num
;
// 委外出库占用量
private
BigDecimal
return_exch_num
;
// 委外在途量
private
BigDecimal
return_onway_num
;
// 销售退货量
private
BigDecimal
refund_num
;
// 生产在途量
private
BigDecimal
process_onway_num
;
// 销售退货在途量
private
BigDecimal
refund_onway_num
;
// 部分付款库存
private
BigDecimal
part_paid_num
;
// 负库存出库量
private
BigDecimal
neg_stockout_num
;
// 今日销量
private
BigDecimal
today_num
;
// 警戒库存
private
BigDecimal
safe_stock
;
// 单品在外部WMS中的编码,如在物流宝仓库中主键
private
String
spec_wh_no
;
// 外部WMS同步时库存
private
BigDecimal
wms_sync_stock
;
// 外部WMS同步时占用库存
private
BigDecimal
wms_preempty_stock
;
// 外部WMS同步时,与系统库存的差
private
BigDecimal
wms_stock_diff
;
// 与外部WMS同步时间wms_sync_stock-stock_num 格式:yyyy-MM-dd HH:mm:ss
private
String
wms_sync_time
;
// 成本价
private
BigDecimal
cost_price
;
// 重量
private
BigDecimal
weight
;
// 商品图片url
private
String
img_url
;
// 最后修改时间,格式:yyyy-MM-dd HH:mm:ss
private
String
modified
;
// 可发库存
private
BigDecimal
avaliable_num
;
}
liquidnet-bus-service/liquidnet-service-platform/liquidnet-service-platform-impl/src/main/java/com/liquidnet/service/platform/controller/ErpTestController.java
0 → 100644
View file @
960f032e
package
com
.
liquidnet
.
service
.
platform
.
controller
;
import
com.alibaba.fastjson.JSON
;
import
com.liquidnet.commons.lang.util.CollectionUtil
;
import
com.liquidnet.commons.lang.util.JsonUtils
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.erp.config.ErpWdtClient
;
import
com.liquidnet.service.erp.constant.ErpEnum
;
import
com.liquidnet.service.erp.param.LogisticsListParam
;
import
com.liquidnet.service.erp.param.TradeListParam
;
import
com.liquidnet.service.erp.vo.StockQueryBaseVo
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.Map
;
@Api
(
tags
=
"erp测试接口"
)
@Slf4j
@RestController
@RequestMapping
(
"test/erp"
)
public
class
ErpTestController
{
@Autowired
private
ErpWdtClient
erpWdtClient
;
@PostMapping
(
"stockQuery"
)
@ApiOperation
(
"增量库存查询"
)
public
ResponseDto
<
StockQueryBaseVo
>
stockQuery
(
@RequestParam
(
"st"
)
String
st
,
@RequestParam
(
"et"
)
String
et
)
{
Map
<
String
,
String
>
param
=
CollectionUtil
.
linkMapStringString
();
param
.
put
(
"start_time"
,
st
);
param
.
put
(
"end_time"
,
et
);
param
.
put
(
"warehouse_no"
,
"mdtk2-test"
);
param
.
put
(
"spec_no"
,
"mdsk01"
);
String
json
=
erpWdtClient
.
execute
(
ErpEnum
.
WdtAPI
.
STOCK_QUERY
.
getUri
(),
param
);
StockQueryBaseVo
data
=
JsonUtils
.
fromJson
(
json
,
StockQueryBaseVo
.
class
);
return
ResponseDto
.
success
(
data
);
}
@PostMapping
(
"tradePush"
)
@ApiOperation
(
"创建原始单"
)
public
ResponseDto
<
String
>
tradePush
(
@RequestParam
(
"num"
)
String
num
)
{
Map
<
String
,
String
>
param
=
CollectionUtil
.
linkMapStringString
();
param
.
put
(
"shop_no"
,
"mdtk2-test"
);
List
<
Map
<
String
,
Object
>>
tradeList
=
new
ArrayList
<>();
tradeList
.
add
(
TradeListParam
.
getNew
().
test
(
num
));
param
.
put
(
"trade_list"
,
JSON
.
toJSONString
(
tradeList
));
String
json
=
erpWdtClient
.
execute
(
ErpEnum
.
WdtAPI
.
TRADE_PUSH
.
getUri
(),
param
);
return
ResponseDto
.
success
(
json
);
}
@PostMapping
(
"syncQuery"
)
@ApiOperation
(
"查询物流同步"
)
public
ResponseDto
<
String
>
syncQuery
()
{
Map
<
String
,
String
>
param
=
CollectionUtil
.
linkMapStringString
();
param
.
put
(
"shop_no"
,
"mdtk2-test"
);
param
.
put
(
"limit"
,
"100"
);
param
.
put
(
"is_part_sync_able"
,
"1"
);
String
json
=
erpWdtClient
.
execute
(
ErpEnum
.
WdtAPI
.
LOGISTICS_SYNC_QUERY
.
getUri
(),
param
);
return
ResponseDto
.
success
(
json
);
}
@PostMapping
(
"syncAck"
)
@ApiOperation
(
"物流同步回写"
)
public
ResponseDto
<
String
>
syncAck
(
@RequestParam
(
"recId"
)
int
recId
,
@RequestParam
(
"status"
)
int
status
)
{
Map
<
String
,
String
>
param
=
CollectionUtil
.
linkMapStringString
();
param
.
put
(
"shop_no"
,
"mdtk2-test"
);
param
.
put
(
"limit"
,
"100"
);
param
.
put
(
"is_part_sync_able"
,
"1"
);
List
<
Map
<
String
,
Object
>>
logisticsList
=
new
ArrayList
<>();
logisticsList
.
add
(
LogisticsListParam
.
getNew
().
test
(
recId
,
status
));
param
.
put
(
"logistics_list"
,
JSON
.
toJSONString
(
logisticsList
));
String
json
=
erpWdtClient
.
execute
(
ErpEnum
.
WdtAPI
.
LOGISTICS_SYNC_ACK
.
getUri
(),
param
);
return
ResponseDto
.
success
(
json
);
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment