Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
X
xnr-interface
Project
Project
Details
Activity
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
heli_wms
xnr-interface
Commits
8f71bebc
Commit
8f71bebc
authored
Nov 30, 2019
by
tank.li@mushiny.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
拣货任务完善,出库单与系统绑定 完成后反馈
parent
ac5299bf
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
120 additions
and
5 deletions
+120
-5
OutboundController.java
...a/com/mushiny/heli/xnr/controller/OutboundController.java
+12
-0
OutboundService.java
...in/java/com/mushiny/heli/xnr/service/OutboundService.java
+40
-0
Sql_Table.java
src/main/java/com/mushiny/heli/xnr/service/Sql_Table.java
+10
-0
WMSRespService.java
...ain/java/com/mushiny/heli/xnr/service/WMSRespService.java
+4
-5
WMSService.java
src/main/java/com/mushiny/heli/xnr/service/WMSService.java
+54
-0
No files found.
src/main/java/com/mushiny/heli/xnr/controller/OutboundController.java
0 → 100644
View file @
8f71bebc
package
com
.
mushiny
.
heli
.
xnr
.
controller
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
/**
* Created by Lisi on 2019-11-30.
*/
@RestController
@RequestMapping
(
"/outbound"
)
public
class
OutboundController
{
}
src/main/java/com/mushiny/heli/xnr/service/OutboundService.java
0 → 100644
View file @
8f71bebc
package
com
.
mushiny
.
heli
.
xnr
.
service
;
import
com.mushiny.heli.xnr.comm.CommonUtils
;
import
com.mushiny.heli.xnr.jdbc.repositories.JdbcRepository
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.scheduling.annotation.Scheduled
;
import
org.springframework.stereotype.Service
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
/**
* Created by Lisi on 2019-11-30.
*/
@Service
public
class
OutboundService
{
@Autowired
private
JdbcRepository
jdbcRepository
;
//2、如果对应CUSTOMERSHIPMENTPOSITION都完成 将主表更新为Finish 等待下次循环
//这样不修改出库的代码
@Scheduled
(
fixedDelay
=
10
*
1000L
)
public
void
checkAndResponse
(){
List
<
Map
>
finishedObps
=
this
.
jdbcRepository
.
queryBySql
(
Sql_Table
.
SQL_QUERY_OBORDER
,
Sql_Table
.
FINISH
);
for
(
int
i
=
0
;
i
<
finishedObps
.
size
();
i
++)
{
Map
obs
=
finishedObps
.
get
(
i
);
Map
newValue
=
new
HashMap
();
newValue
.
put
(
"STATE"
,
Sql_Table
.
FINISH
);
CommonUtils
.
modifyUselessInfo
(
newValue
);
Map
con
=
new
HashMap
();
con
.
put
(
"ID"
,
CommonUtils
.
parseString
(
"ID"
,
obs
));
this
.
jdbcRepository
.
updateRecords
(
Sql_Table
.
TABLE_OUTBOUND_ORDERPOSITION
,
newValue
,
con
);
}
}
}
src/main/java/com/mushiny/heli/xnr/service/Sql_Table.java
View file @
8f71bebc
...
@@ -89,4 +89,14 @@ public interface Sql_Table {
...
@@ -89,4 +89,14 @@ public interface Sql_Table {
" and WMS_INBOUND_PODORDER.POD_ID=? and WMS_INBOUND_PODORDER.POD_FACE=?\n"
+
" and WMS_INBOUND_PODORDER.POD_ID=? and WMS_INBOUND_PODORDER.POD_FACE=?\n"
+
" OrDER BY WMS_INBOUND_PODORDER.CREATED_DATE DESC limit 1"
;
" OrDER BY WMS_INBOUND_PODORDER.CREATED_DATE DESC limit 1"
;
String
NEW
=
"New"
;
String
NEW
=
"New"
;
String
TABLE_OB_CUSTOMERSHIPMENT
=
"OB_CUSTOMERSHIPMENT"
;
String
TABLE_OB_CUSTOMERSHIPMENTPOSITION
=
"OB_CUSTOMERSHIPMENTPOSITION"
;
String
SQL_QUERY_OBORDER
=
"SELECT WMS_OUTBOUND_ORDERPOSITION.* FROM WMS_OUTBOUND_ORDERPOSITION,OB_CUSTOMERSHIPMENTPOSITION \n"
+
"WHERE WMS_OUTBOUND_ORDERPOSITION.SHIPMENTPOSITION_ID=OB_CUSTOMERSHIPMENTPOSITION.ID \n"
+
"AND WMS_OUTBOUND_ORDERPOSITION.STATE<>'Finish' AND OB_CUSTOMERSHIPMENTPOSITION.STATE >= 600 "
;
String
TABLE_OUTBOUND_ORDERPOSITION
=
"WMS_OUTBOUND_ORDERPOSITION"
;
String
SQL_OUTBOUNDORDERPOSITION_BYSTATE
=
"SELECT * FROM WMS_OUTBOUND_ORDER WHERE WMS_OUTBOUND_ORDER.STATE<>'Finish' \n"
+
"AND NOT EXISTS (SELECT 1 FROM WMS_OUTBOUND_ORDERPOSITION \n"
+
"WHERE WMS_OUTBOUND_ORDERPOSITION.ORDERID=WMS_OUTBOUND_ORDER.ORDERID \n"
+
"AND WMS_OUTBOUND_ORDERPOSITION.STATE<>'Finish')"
;
}
}
src/main/java/com/mushiny/heli/xnr/service/WMSRespService.java
View file @
8f71bebc
...
@@ -146,12 +146,11 @@ public class WMSRespService {
...
@@ -146,12 +146,11 @@ public class WMSRespService {
@Scheduled
(
fixedDelay
=
50
*
1000L
)
@Scheduled
(
fixedDelay
=
50
*
1000L
)
@Transactional
@Transactional
public
void
outboundResp
(){
public
void
outboundResp
(){
logger
.
debug
(
"回复
入
库单状态...."
);
logger
.
debug
(
"回复
出
库单状态...."
);
RestTemplate
restTemplate
=
builder
.
build
();
RestTemplate
restTemplate
=
builder
.
build
();
HttpHeaders
headers
=
this
.
getHttpHeaders
();
HttpHeaders
headers
=
this
.
getHttpHeaders
();
List
<
Map
>
data
=
this
.
jdbcRepository
.
queryBySql
(
SQL_QUERYALL_OUTBOUNDORDER
,
FINISH
);
List
<
Map
>
data
=
this
.
jdbcRepository
.
queryBySql
(
SQL_QUERYALL_OUTBOUNDORDER
,
FINISH
);
List
<
OutboundOrderDTO
>
data2
=
this
.
transfer2OutDTO
(
data
);
//合并主表记录
List
<
OutboundOrderDTO
>
data2
=
this
.
transfer2OutDTO
(
data
);
//合并主表记录
for
(
int
i
=
0
;
i
<
data2
.
size
();
i
++)
{
for
(
int
i
=
0
;
i
<
data2
.
size
();
i
++)
{
...
@@ -174,16 +173,16 @@ public class WMSRespService {
...
@@ -174,16 +173,16 @@ public class WMSRespService {
//如果明细都已结束 将主表更新为已完成,减少操作时的判断
//如果明细都已结束 将主表更新为已完成,减少操作时的判断
List
<
Map
>
list
=
this
.
jdbcRepository
List
<
Map
>
list
=
this
.
jdbcRepository
.
queryBySql
(
Sql_Table
.
SQL_
QUERY_INBOUNDORDER_BYPOSITION
STATE
,
Sql_Table
.
FINISH
);
.
queryBySql
(
Sql_Table
.
SQL_
OUTBOUNDORDERPOSITION_BY
STATE
,
Sql_Table
.
FINISH
);
for
(
int
i
=
0
;
i
<
list
.
size
();
i
++)
{
for
(
int
i
=
0
;
i
<
list
.
size
();
i
++)
{
Map
rows
=
list
.
get
(
i
);
Map
rows
=
list
.
get
(
i
);
Map
newValue
=
new
HashMap
();
Map
newValue
=
new
HashMap
();
newValue
.
put
(
"STATE"
,
Sql_Table
.
FINISH
);
newValue
.
put
(
"STATE"
,
Sql_Table
.
FINISH
);
CommonUtils
.
modifyUselessInfo
(
newValue
);
Map
con
=
new
HashMap
();
Map
con
=
new
HashMap
();
con
.
put
(
"ENTRYID"
,
CommonUtils
.
parseString
(
"ENTRYID"
,
rows
));
con
.
put
(
"ENTRYID"
,
CommonUtils
.
parseString
(
"ENTRYID"
,
rows
));
this
.
jdbcRepository
.
updateRecords
(
Sql_Table
.
WMS_
INBOUND_POD
ORDER
,
newValue
,
con
);
this
.
jdbcRepository
.
updateRecords
(
Sql_Table
.
WMS_
OUTBOUND_
ORDER
,
newValue
,
con
);
}
}
}
}
...
...
src/main/java/com/mushiny/heli/xnr/service/WMSService.java
View file @
8f71bebc
...
@@ -60,8 +60,61 @@ public class WMSService {
...
@@ -60,8 +60,61 @@ public class WMSService {
@Transactional
@Transactional
public
void
saveOutboundOrder
(
OutboundOrderDTO
outboundOrderDTO
)
{
public
void
saveOutboundOrder
(
OutboundOrderDTO
outboundOrderDTO
)
{
List
<
OutboundOrderPosition
>
data
=
outboundOrderDTO
.
getDATA
();
List
<
OutboundOrderPosition
>
data
=
outboundOrderDTO
.
getDATA
();
//1、保存到OB_CUSTOMERSHIPMENT表
BaseBpo
cs
=
new
BaseBpo
();
cs
.
setTable
(
Sql_Table
.
TABLE_OB_CUSTOMERSHIPMENT
);
String
csid
=
CommonUtils
.
genUUID
();
cs
.
addKV
(
"ID"
,
csid
);
/* `SHIPMENT_NO` varchar(255) NOT NULL DEFAULT '' COMMENT '订单拆分后的编号',
`PRIORITY` int(11) NOT NULL COMMENT '优先等级',
`STATE` int(11) NOT NULL COMMENT '状态',
`PASSED_OVER_COUNT` int(11) NOT NULL COMMENT '未选中的次数',
`ACTIVATED` bit(1) NOT NULL COMMENT '是否激活',
`SELECTED` bit(1) NOT NULL COMMENT '是否进入Select Window',
`COMPLETED` bit(1) NOT NULL COMMENT '是否已全部分配拣货任务',
`WAREHOUSE_ID` varchar(255) NOT NULL,*/
cs
.
addKV
(
"SHIPMENTNO"
,
outboundOrderDTO
.
getORDERID
());
cs
.
addKV
(
"PRIORITY"
,
1
);
cs
.
addKV
(
"STATE"
,
0
);
cs
.
addKV
(
"PASSED_OVER_COUNT"
,
0
);
cs
.
addKV
(
"ACTIVATED"
,
Boolean
.
FALSE
);
cs
.
addKV
(
"SELECTED"
,
Boolean
.
FALSE
);
cs
.
addKV
(
"COMPLETED"
,
Boolean
.
FALSE
);
cs
.
addKV
(
"WAREHOUSE_ID"
,
outboundOrderDTO
.
getSECTION
());
cs
.
addKV
(
"CLIENT_ID"
,
outboundOrderDTO
.
getFACTORY
());
cs
.
addKV
(
"TYPE"
,
"Customer"
);
//新增一条记录
this
.
jdbcRepository
.
insertBusinessObject
(
cs
);
for
(
int
i
=
0
;
i
<
data
.
size
();
i
++)
{
for
(
int
i
=
0
;
i
<
data
.
size
();
i
++)
{
OutboundOrderPosition
outboundOrderPosition
=
data
.
get
(
i
);
OutboundOrderPosition
outboundOrderPosition
=
data
.
get
(
i
);
//2、保存到OB_CUSTOMERSHIPMENTPOSITION表
BaseBpo
csp
=
new
BaseBpo
();
csp
.
setTable
(
Sql_Table
.
TABLE_OB_CUSTOMERSHIPMENTPOSITION
);
String
cspId
=
CommonUtils
.
genUUID
();
csp
.
addKV
(
"ID"
,
cspId
);
/* `AMOUNT` decimal(17,4) NOT NULL DEFAULT '0.0000' COMMENT '数量',
`STATE` int(11) NOT NULL COMMENT '状态',
`ITEMDATA_ID` varchar(255) NOT NULL DEFAULT '' COMMENT '商品',
`SHIPMENT_ID` varchar(255) NOT NULL DEFAULT '' COMMENT '订单编号',
`POSITION_NO` int(11) NOT NULL COMMENT '详细编号',
`ORDER_INDEX` int(11) NOT NULL COMMENT '排序',
`CLIENT_ID` varchar(255) NOT NULL,
`WAREHOUSE_ID` varchar(255) NOT NULL,*/
csp
.
addKV
(
"STATE"
,
0
);
//600就是完成
List
<
Map
>
items
=
this
.
jdbcRepository
.
queryBySql
(
Sql_Table
.
SQL_QUERYITEM_BYSKUNO
,
outboundOrderPosition
.
getSKUID
());
Map
item
=
items
.
get
(
0
);
String
mID
=
CommonUtils
.
parseString
(
"ID"
,
item
);
csp
.
addKV
(
"ITEMDATA_ID"
,
mID
);
csp
.
addKV
(
"SHIPMENT_ID"
,
csid
);
csp
.
addKV
(
"POSITION_NO"
,
i
+
1
);
csp
.
addKV
(
"ORDER_INDEX"
,
i
+
1
);
csp
.
addKV
(
"CLIENT_ID"
,
outboundOrderDTO
.
getFACTORY
());
csp
.
addKV
(
"WAREHOUSE_ID"
,
outboundOrderDTO
.
getSECTION
());
this
.
jdbcRepository
.
insertBusinessObject
(
csp
);
BaseBpo
baseBpo
=
new
BaseBpo
();
BaseBpo
baseBpo
=
new
BaseBpo
();
baseBpo
.
setTable
(
Sql_Table
.
WMS_OUTBOUND_ORDERPOSITION
);
baseBpo
.
setTable
(
Sql_Table
.
WMS_OUTBOUND_ORDERPOSITION
);
baseBpo
.
setIdName
(
"ID"
);
baseBpo
.
setIdName
(
"ID"
);
...
@@ -70,6 +123,7 @@ public class WMSService {
...
@@ -70,6 +123,7 @@ public class WMSService {
baseBpo
.
addKV
(
"AMOUNT"
,
outboundOrderPosition
.
getAMOUNT
());
baseBpo
.
addKV
(
"AMOUNT"
,
outboundOrderPosition
.
getAMOUNT
());
baseBpo
.
addKV
(
"SKUID"
,
outboundOrderPosition
.
getSKUID
());
baseBpo
.
addKV
(
"SKUID"
,
outboundOrderPosition
.
getSKUID
());
baseBpo
.
addKV
(
"SHIPMENTID"
,
outboundOrderPosition
.
getSHIPMENTID
());
baseBpo
.
addKV
(
"SHIPMENTID"
,
outboundOrderPosition
.
getSHIPMENTID
());
baseBpo
.
addKV
(
"SHIPMENTPOSITION_ID"
,
cspId
);
baseBpo
.
addKV
(
"WAREHOUSE_ID"
,
outboundOrderDTO
.
getFACTORY
());
baseBpo
.
addKV
(
"WAREHOUSE_ID"
,
outboundOrderDTO
.
getFACTORY
());
baseBpo
.
addKV
(
"SECTION_ID"
,
outboundOrderDTO
.
getSECTION
());
baseBpo
.
addKV
(
"SECTION_ID"
,
outboundOrderDTO
.
getSECTION
());
this
.
jdbcRepository
.
insertBusinessObject
(
baseBpo
);
this
.
jdbcRepository
.
insertBusinessObject
(
baseBpo
);
...
...
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