Toggle navigation
Toggle navigation
This project
Loading...
Sign in
Fedex
/
iClear-api
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Snippets
Network
Create a new issue
Builds
Commits
Issue Boards
Authored by
zelong.shao
2023-09-05 15:33:23 +0800
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
028024a8a6a2b7e32994e1542e1341b60f3a3fdf
028024a8
1 parent
e4ed6f27
API提交数据修改
2023年9月5日15:31:55 szl
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
128 additions
and
16 deletions
src/main/java/com/erry/iclear/dateInterface/api/CustomsDataInterface.java
src/main/java/com/erry/iclear/dateInterface/api/FedexDataInterface.java
src/main/java/com/erry/iclear/dateInterface/common/Constant.java
src/main/java/com/erry/iclear/dateInterface/entity/ChmConsignment.java
src/main/java/com/erry/iclear/dateInterface/repository/ChmConsignmentRepository.java
src/main/java/com/erry/iclear/dateInterface/repository/OrganizationRepository.java
src/main/java/com/erry/iclear/dateInterface/repository/TaskInfoRepository.java
src/main/java/com/erry/iclear/dateInterface/service/ChmConsignmentService.java
src/main/java/com/erry/iclear/dateInterface/service/FedexService.java
src/main/java/com/erry/iclear/dateInterface/service/MawbService.java
src/main/java/com/erry/iclear/dateInterface/api/CustomsDataInterface.java
View file @
028024a
package
com
.
erry
.
iclear
.
dateInterface
.
api
;
import
com.erry.iclear.dateInterface.api.request.MawbDetail
;
import
com.erry.iclear.dateInterface.enums.ErrorCodeEnum
;
import
com.erry.iclear.dateInterface.api.request.Mawb
;
import
com.erry.iclear.dateInterface.api.response.ResultRS
;
import
com.erry.iclear.dateInterface.entity.IClearApiLog
;
import
com.erry.iclear.dateInterface.enums.ErrorCodeEnum
;
import
com.erry.iclear.dateInterface.repository.MawbAdd
;
import
com.erry.iclear.dateInterface.service.*
;
import
com.erry.iclear.dateInterface.util.StringUtil
;
...
...
@@ -17,7 +16,9 @@ import org.springframework.validation.annotation.Validated;
import
org.springframework.web.bind.annotation.*
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.*
;
import
java.util.Date
;
import
java.util.Map
;
import
java.util.Objects
;
/**
* @author Administrator
...
...
@@ -118,7 +119,7 @@ public class CustomsDataInterface {
//2、TODO 校验主单
sw
.
start
(
"checkMawb"
);
result
=
mawbService
.
checkMawb
(
mawb
);
result
=
mawbService
.
checkMawb
(
mawb
,
appId
);
if
(!
result
.
getSuccess
()){
return
result
;
}
...
...
src/main/java/com/erry/iclear/dateInterface/api/FedexDataInterface.java
View file @
028024a
...
...
@@ -110,7 +110,7 @@ public class FedexDataInterface {
sw
.
stop
();
sw
.
start
(
"checkFedexMawb"
);
ResultRS
iclearCheckRs
=
fedexService
.
checkFedexMawb
(
saveMawbFedexResult
,
appInfo
);
ResultRS
iclearCheckRs
=
fedexService
.
checkFedexMawb
(
saveMawbFedexResult
,
appInfo
,
appId
);
//返回结果
ResultRS
result
=
new
ResultRS
(
Boolean
.
TRUE
,
ErrorCodeEnum
.
SUCCESS
.
getCode
(),
null
,
null
);
if
(
nonEmptyCheck
.
getSuccess
()
&&
iclearCheckRs
.
getSuccess
()){
...
...
@@ -195,7 +195,7 @@ public class FedexDataInterface {
//2、TODO 校验主单
sw
.
start
(
"checkFedexMawb"
);
result
=
fedexService
.
checkFedexMawb
(
saveMawbFedexResult
,
null
);
result
=
fedexService
.
checkFedexMawb
(
saveMawbFedexResult
,
null
,
appId
);
if
(!
result
.
getSuccess
()){
return
result
;
}
...
...
@@ -216,6 +216,7 @@ public class FedexDataInterface {
return
result
;
}
sw
.
stop
();
log
.
info
(
"saveIClearApiLogResult.getCreateTime():"
+
saveIClearApiLogResult
.
getCreateTime
());
ChmConsignment
chmGetId
=
chmConsignmentRepository
.
findChmConsignmentByConsignmentCode
(
saveIClearApiLogResult
.
getBillNo
(),
saveIClearApiLogResult
.
getCreateTime
());
//调用IClear接口进行运单推送EXP002
String
objJson
=
JsonToJava
.
toJson
(
chmGetId
.
getId
());
...
...
src/main/java/com/erry/iclear/dateInterface/common/Constant.java
View file @
028024a
...
...
@@ -100,4 +100,21 @@ public class Constant {
* 监管条件
*/
public
static
final
String
supervise_condition
=
"superviseRestrict"
;
/**
* DM004接收取件信息
*/
public
static
final
String
FILE_TYPE_GET_PICK_INFORMATION
=
"fileType_5"
;
//OSPR状态
/**
* 未完成
*/
public
static
final
String
OSPR_STATUS_INCOMPLETED
=
"OSPRStatus_1"
;
//扫描代码
/**
* C类已取件
*/
public
static
final
String
SCAN_CODE_TAKEN_PART
=
"scanCode_1"
;
}
...
...
src/main/java/com/erry/iclear/dateInterface/entity/ChmConsignment.java
View file @
028024a
...
...
@@ -3,7 +3,6 @@ package com.erry.iclear.dateInterface.entity;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
lombok.Data
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
javax.persistence.*
;
import
java.io.Serializable
;
...
...
@@ -413,6 +412,62 @@ public class ChmConsignment implements Serializable {
@Column
(
name
=
"EANNO"
)
private
String
eanNo
;
/**
* 扫描代码ID
*/
@JsonIgnore
@ManyToOne
(
targetEntity
=
DictionaryEntries
.
class
)
@JoinColumn
(
name
=
"SCAN_CODE_ID"
)
private
DictionaryEntries
scanCodeDic
;
/**
* 扫描代码
*/
@Column
(
name
=
"SCAN_CODE"
)
private
String
scanCode
;
/**
* 扫描状态日期
*/
@Column
(
name
=
"SCAN_STATUS_TIME"
)
private
Date
scanStatusTime
;
/**
* 运单类型ID
*/
// @JsonIgnore
// @ManyToOne(targetEntity = DictionaryEntries.class)
// @JoinColumn(name = "CONS_TYPE_ID")
// private DictionaryEntries consTypeDic;
/**
* OSPR状态ID
*/
@JsonIgnore
@ManyToOne
(
targetEntity
=
DictionaryEntries
.
class
)
@JoinColumn
(
name
=
"OSPR_STATUS_ID"
)
private
DictionaryEntries
osprStatusDic
;
/**
* 站点
*/
@JsonIgnore
@ManyToOne
(
targetEntity
=
Organization
.
class
)
@JoinColumn
(
name
=
"STATION_ID"
)
private
Organization
station
;
/**
* 站点名称
*/
@Column
(
name
=
"STATION_NAME"
)
private
String
stationName
;
/**
* 取件日期
*/
@Column
(
name
=
"PICK_UP_DATE"
)
private
Date
pickUpDate
;
@OneToMany
(
mappedBy
=
"chmConsignment"
,
cascade
=
CascadeType
.
ALL
)
private
List
<
ChmConsignmentDetail
>
chmConsignmentDetailList
;
...
...
src/main/java/com/erry/iclear/dateInterface/repository/ChmConsignmentRepository.java
View file @
028024a
...
...
@@ -4,7 +4,6 @@ import com.erry.iclear.dateInterface.entity.ChmConsignment;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.data.jpa.repository.JpaSpecificationExecutor
;
import
org.springframework.data.jpa.repository.Query
;
import
org.springframework.data.repository.query.Param
;
import
org.springframework.stereotype.Repository
;
import
java.util.Date
;
...
...
@@ -33,6 +32,15 @@ public interface ChmConsignmentRepository extends JpaSpecificationExecutor<ChmCo
public
ChmConsignment
findChmConsignmentByConsignmentCode
(
String
consignmentCode
,
Date
startDate
);
/**
* 根据运单号查找多条数据
* @param consignmentCode
* @param startDate
* @return
*/
@Query
(
nativeQuery
=
true
,
value
=
"select * from T_CHM_CONSIGNMENT where CONSIGNMENT_CODE = ?1 and CREATE_TIME>= ?2 and CREATOR = ?3"
)
public
List
<
ChmConsignment
>
findChmConsignmentByConsignmentCodes
(
String
consignmentCode
,
Date
startDate
,
String
creator
);
/**
* 根据运单ID查运单
* @param id
* @return
...
...
src/main/java/com/erry/iclear/dateInterface/repository/OrganizationRepository.java
0 → 100644
View file @
028024a
package
com
.
erry
.
iclear
.
dateInterface
.
repository
;
import
com.erry.iclear.dateInterface.entity.Organization
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.data.jpa.repository.JpaSpecificationExecutor
;
import
org.springframework.data.jpa.repository.Query
;
import
org.springframework.data.repository.query.Param
;
import
org.springframework.stereotype.Repository
;
@Repository
public
interface
OrganizationRepository
extends
JpaSpecificationExecutor
<
Organization
>,
JpaRepository
<
Organization
,
Long
>
{
@Query
(
nativeQuery
=
true
,
value
=
"select top 1 * from T_AU_ORGANIZATION o where o.NAME = :name "
)
public
Organization
findOrganizationByName
(
@Param
(
"name"
)
String
name
);
}
src/main/java/com/erry/iclear/dateInterface/repository/TaskInfoRepository.java
0 → 100644
View file @
028024a
package
com
.
erry
.
iclear
.
dateInterface
.
repository
;
import
com.erry.iclear.dateInterface.entity.TaskInfo
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.data.jpa.repository.JpaSpecificationExecutor
;
import
org.springframework.data.jpa.repository.Query
;
import
org.springframework.data.repository.query.Param
;
import
org.springframework.stereotype.Repository
;
@Repository
public
interface
TaskInfoRepository
extends
JpaSpecificationExecutor
<
TaskInfo
>,
JpaRepository
<
TaskInfo
,
Long
>
{
@Query
(
nativeQuery
=
true
,
value
=
"select top 1 * from T_TASK_INFO info where info.FILE_TYPE_ID = :fileTypeId and "
+
"info.AWB_NUMBER = :consignmentCode order by CREATE_TIME DESC"
)
public
TaskInfo
findTaskInfoByConsignment
(
@Param
(
"fileTypeId"
)
Long
taskStatusId
,
@Param
(
"consignmentCode"
)
String
consignmentCode
);
}
src/main/java/com/erry/iclear/dateInterface/service/ChmConsignmentService.java
View file @
028024a
This diff is collapsed. Click to expand it.
src/main/java/com/erry/iclear/dateInterface/service/FedexService.java
View file @
028024a
...
...
@@ -113,13 +113,13 @@ public class FedexService {
* @param fedexMawb
* @return
*/
public
ResultRS
checkFedexMawb
(
FedexMawb
fedexMawb
,
AppInfo
appInfo
){
public
ResultRS
checkFedexMawb
(
FedexMawb
fedexMawb
,
AppInfo
appInfo
,
String
appId
){
ResultRS
result
=
new
ResultRS
(
Boolean
.
FALSE
,
null
,
null
,
null
);
try
{
log
.
info
(
"checkMawb start>>>>>>>>>> mawb:"
+
gson
.
toJson
(
fedexMawb
));
//1、将请求转换为运单
ChmConsignment
chmConsignment
=
consignmentService
.
convertToChmConsignmentFedex
(
fedexMawb
,
null
,
"IDE-ICLEAR-API"
,
appInfo
);
ChmConsignment
chmConsignment
=
consignmentService
.
convertToChmConsignmentFedex
(
fedexMawb
,
null
,
appId
,
appInfo
);
if
(
Objects
.
equals
(
chmConsignment
,
null
)){
result
.
setCode
(
ErrorCodeEnum
.
ERROR_7
.
getCode
());
result
.
setMsg
(
ErrorCodeEnum
.
ERROR_7
.
getName
());
...
...
src/main/java/com/erry/iclear/dateInterface/service/MawbService.java
View file @
028024a
...
...
@@ -2,15 +2,15 @@ package com.erry.iclear.dateInterface.service;
import
com.erry.iclear.dateInterface.api.request.FedexMawb
;
import
com.erry.iclear.dateInterface.api.request.FedexMawbDetail
;
import
com.erry.iclear.dateInterface.common.Constant
;
import
com.erry.iclear.dateInterface.entity.DictionaryEntries
;
import
com.erry.iclear.dateInterface.enums.ErrorCodeEnum
;
import
com.erry.iclear.dateInterface.api.request.Mawb
;
import
com.erry.iclear.dateInterface.api.request.MawbDetail
;
import
com.erry.iclear.dateInterface.api.response.IClearCheckResult
;
import
com.erry.iclear.dateInterface.api.response.ResultRS
;
import
com.erry.iclear.dateInterface.common.Constant
;
import
com.erry.iclear.dateInterface.entity.ChmConsignment
;
import
com.erry.iclear.dateInterface.entity.ChmConsignmentDetail
;
import
com.erry.iclear.dateInterface.entity.DictionaryEntries
;
import
com.erry.iclear.dateInterface.enums.ErrorCodeEnum
;
import
com.erry.iclear.dateInterface.repository.DictionaryEntriesRepository
;
import
com.erry.iclear.dateInterface.repository.MawbRepository
;
import
com.erry.iclear.dateInterface.util.HttpUtils
;
...
...
@@ -23,7 +23,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.stereotype.Service
;
import
javax.validation.Valid
;
import
java.util.*
;
/**
...
...
@@ -301,12 +300,12 @@ public class MawbService {
* @param mawb
* @return
*/
public
ResultRS
checkMawb
(
Mawb
mawb
){
public
ResultRS
checkMawb
(
Mawb
mawb
,
String
appId
){
ResultRS
result
=
new
ResultRS
(
Boolean
.
FALSE
,
null
,
null
,
null
);
try
{
log
.
info
(
"checkMawb start>>>>>>>>>> mawb:"
+
gson
.
toJson
(
mawb
));
//1、将请求转换为运单
ChmConsignment
chmConsignment
=
consignmentService
.
convertToChmConsignment
(
mawb
,
null
,
"IDE-ICLEAR-API"
);
ChmConsignment
chmConsignment
=
consignmentService
.
convertToChmConsignment
(
mawb
,
null
,
appId
);
if
(
Objects
.
equals
(
chmConsignment
,
null
)){
result
.
setCode
(
ErrorCodeEnum
.
ERROR_30001
.
getCode
());
result
.
setMsg
(
ErrorCodeEnum
.
ERROR_30001
.
getName
());
...
...
Please
register
or
login
to post a comment