Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
T
travel-cloud
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
cloud
travel-cloud
Commits
00f06ed3
提交
00f06ed3
authored
1月 23, 2025
作者:
hzh
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'dev'
上级
b1c789b9
d67a6178
显示空白字符变更
内嵌
并排
正在显示
11 个修改的文件
包含
303 行增加
和
28 行删除
+303
-28
Api.java
...yi-common-ys/src/main/java/org/dromara/common/ys/Api.java
+1
-1
QueryMoreCabinModel.java
...mara/common/ys/model/req/airport/QueryMoreCabinModel.java
+31
-0
QueryFlightMinPriceModel.java
...common/ys/model/res/airport/QueryFlightMinPriceModel.java
+145
-15
QueryMoreCabinModel.java
...mara/common/ys/model/res/airport/QueryMoreCabinModel.java
+59
-0
IAirportService.java
...n/java/org/dromara/common/ys/service/IAirportService.java
+9
-0
AirPortServiceImpl.java
...rg/dromara/common/ys/service/impl/AirPortServiceImpl.java
+16
-0
AirportController.java
.../dromara/server/controller/airport/AirportController.java
+22
-0
AirportOrderStrategy.java
...org/dromara/server/service/impl/AirportOrderStrategy.java
+6
-4
CarOrderStrategy.java
...ava/org/dromara/server/service/impl/CarOrderStrategy.java
+5
-3
HotelOrderStrategy.java
...a/org/dromara/server/service/impl/HotelOrderStrategy.java
+4
-2
TrainOrderStrategy.java
...a/org/dromara/server/service/impl/TrainOrderStrategy.java
+5
-3
没有找到文件。
ruoyi-common/ruoyi-common-ys/src/main/java/org/dromara/common/ys/Api.java
浏览文件 @
00f06ed3
...
@@ -229,7 +229,7 @@ public class Api {
...
@@ -229,7 +229,7 @@ public class Api {
* @return {@link ApiHttpResponse} 请求返回的结果
* @return {@link ApiHttpResponse} 请求返回的结果
*/
*/
public
static
ApiHttpResponse
post
(
String
url
,
String
data
,
Map
<
String
,
String
>
headers
)
{
public
static
ApiHttpResponse
post
(
String
url
,
String
data
,
Map
<
String
,
String
>
headers
)
{
//
log.info("请求路径:{}", url);
log
.
info
(
"请求路径:{}"
,
url
);
log
.
info
(
"请求头:{}"
,
JSON
.
toJSONString
(
headers
));
log
.
info
(
"请求头:{}"
,
JSON
.
toJSONString
(
headers
));
log
.
info
(
"请求体:{}"
,
data
);
log
.
info
(
"请求体:{}"
,
data
);
StopWatch
watch
=
new
StopWatch
();
StopWatch
watch
=
new
StopWatch
();
...
...
ruoyi-common/ruoyi-common-ys/src/main/java/org/dromara/common/ys/model/req/airport/QueryMoreCabinModel.java
0 → 100644
浏览文件 @
00f06ed3
package
org
.
dromara
.
common
.
ys
.
model
.
req
.
airport
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.experimental.Accessors
;
import
org.dromara.common.ys.model.BaseModel
;
/**
* @author hzh
* @date 2024-10-18
* @desc 指定航班获取舱位价格(第二屏)
**/
@Data
@EqualsAndHashCode
(
callSuper
=
false
)
@Accessors
(
chain
=
true
)
public
class
QueryMoreCabinModel
extends
BaseModel
{
/**
* 航班标识,查询航班时返回 ,
*/
private
String
cacheId
;
/**
* 航班号
*/
private
String
flightNo
;
/**
* 用于匹配差标的员工工号,如不传,以当前登录人工号进行匹配
*/
private
String
empNo
;
}
ruoyi-common/ruoyi-common-ys/src/main/java/org/dromara/common/ys/model/res/airport/QueryFlightMinPriceModel.java
浏览文件 @
00f06ed3
...
@@ -2,50 +2,180 @@ package org.dromara.common.ys.model.res.airport;
...
@@ -2,50 +2,180 @@ package org.dromara.common.ys.model.res.airport;
import
lombok.Data
;
import
lombok.Data
;
import
java.math.BigDecimal
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
/**
/**
* @author hzh
* @author hzh
* @date 2024-10-21
* @date 2024-10-21
**/
**/
@Data
@Data
public
class
QueryFlightMinPriceModel
extends
QueryFlightModel
{
public
class
QueryFlightMinPriceModel
{
/**
/**
*
价格map
*
出发城市机场信息 {[0 起飞机场三字码,1 出发机场名称,2 起飞城市id ,3起飞城市名称]}
*/
*/
private
Map
<
String
,
Object
>
priceMap
;
private
List
<
List
<
Object
>>
deptAirport
;
/**
/**
*
机型map
*
查询耗时(毫秒)
*/
*/
private
Map
<
String
,
Object
>
planeMap
;
private
Integer
queryTimes
;
/**
/**
* 查询
耗时(毫秒)
* 查询
缓存key
*/
*/
private
Integer
queryTimes
;
private
String
queryCacheKey
;
/**
* 机型信息 {[0机型,1机型名称]}
*/
private
List
<
List
<
Object
>>
planes
;
/**
* 航司信息 {[0航司二字码,1航司名称,2航司logo]}
*/
private
List
<
List
<
Object
>>
airlines
;
/**
/**
*
七天特价
*
到达城市机场信息 {[0 到达机场三字码,1 到达机场名称,2 到达城市id,3 到达城市名称]}
*/
*/
private
List
<
WeekPrice
>
weekPrice
;
private
List
<
List
<
Object
>>
arrAirport
;
/**
* 航班舱位信息集合
*/
private
List
<
Flights
>
flights
;
/**
/**
* 全天最低价
* 全天最低价
*/
*/
private
DayMinPrice
dayMinPrice
;
private
DayMinPriceBean
dayMinPriceBean
;
/**
* 中转航班信息
*/
private
List
<
PlaneShoppingGnTransFerFlightBean
>
transFerFlightBeans
;
}
/**
* 航班信息
*/
@Data
class
Flights
{
/**
* 到达信息 [0 机场城市信息编号 int ,1 到达航站楼,2 到达日期 yyyy-MM-dd,3 到达时间 HH:mm]
*/
private
List
<
Object
>
arr
;
/**
* 航班信息[0 航司信息编号 int ,1 航班号,2 共享航班号, 3 飞行里程 int ,4 飞行时长 eg:12h30m,5 飞行时长(分钟) int eg:120 ,6 是否有餐食 0否 1是,7 经停次数 大于0时 代表需经停 int,8 机型编号 int ,9 航程类型 1 单程 2中转]
*/
private
List
<
Object
>
flight
;
/**
* 最低价销售信息 [0 当前航班最低销售价 Double,1 航班最低销售折扣 Double,2 销售服务费]
*/
private
List
<
Object
>
minPriceSale
;
/**
* 最低价信息 [0 当前航班最低价 Double,1 机场建设费 Double,2 燃油税 Double,3 航班最低折扣 Double,4 航班最低价舱位代码,5 航班最低价舱位名称,6 航班最低价舱位等级,7 最低价舱位等级名称,8 经济舱全价,9产品类型 (0特价 1普通 2代购 3协议 4折上折 5直减产品 6商务优享 7GP产品)
*/
private
List
<
Object
>
minPrice
;
/**
* 出发信息 [0 机场城市信息编号 int,1 起飞航站楼,2 起飞日期 yyyy-MM-dd,3 起飞时间 HH:mm] ,
*/
private
List
<
Object
>
dept
;
/**
* 美亚专用,扩展信息4
*/
private
Object
ext4
;
/**
* 美亚专用,扩展信息5
*/
private
Object
ext5
;
}
/**
* 当天最低价
*/
@Data
class
DayMinPriceBean
{
/**
* 价格id
*/
private
String
arriveTime
;
/**
* 航班号
*/
private
String
flightNo
;
/**
* 账单价
*/
private
String
departTime
;
/**
* 舱位名称
*/
private
String
arriveDate
;
/**
/**
*
航班集合
*
舱位代码
*/
*/
private
Map
<
String
,
Object
>
flightMap
;
private
String
cabin
;
/**
* 舱位名称
*/
private
String
departDate
;
/**
* 舱位名称
*/
private
String
cabinName
;
}
/**
* 当天最低价
*/
@Data
class
PlaneShoppingGnTransFerFlightBean
{
/**
/**
*
航班标识
*
中转航班信息
*/
*/
private
String
cacheId
;
private
List
<
TransFerFlightInfo
>
transFerFlightInfos
;
/**
* 出发信息 [0 停留时长 eg 10h5m ,1 中转次数 int,2 总时长 eg 10h5m ,3 总价格 bigdecimal,4中转城市名称 5 供应商id 6 总基建 7总燃油] ,
*/
private
List
<
Object
>
transFerExt
;
/**
* 销售价
*/
private
BigDecimal
salePrice
;
/**
* 服务费
*/
private
BigDecimal
serviceFee
;
}
/**
* 中转航班信息
*/
@Data
class
TransFerFlightInfo
{
/**
* 航班信息[0 航司信息编号 int ,1 航班号,2 共享航班号, 3 飞行里程 int ,4 飞行时长 eg:12h30m,5 飞行时长(分钟) int eg:120 ,6 是否有餐食 0否 1是,7 经停次数 大于0时 代表需经停 int,8 机型信息下标 int 9]
*/
private
List
<
List
<
Object
>>
flight
;
/**
* 出发信息 [0 机场城市信息编号 int,1 起飞航站楼,2 起飞日期 yyyy-MM-dd,3 起飞时间 HH:mm]
*/
private
List
<
List
<
Object
>>
dept
;
/**
* 到达信息 [0 机场城市信息编号 int ,1 到达航站楼,2 到达日期 yyyy-MM-dd,3 到达时间 HH:mm]
*/
private
List
<
List
<
Object
>>
arr
;
/**
* 舱位信息 [0 舱位等级代码,1 舱位等级名称,2 舱位代码, 3 舱位名称,4 舱位座位数 5 Y舱价]
*/
private
List
<
List
<
Object
>>
cabin
;
}
}
ruoyi-common/ruoyi-common-ys/src/main/java/org/dromara/common/ys/model/res/airport/QueryMoreCabinModel.java
0 → 100644
浏览文件 @
00f06ed3
package
org
.
dromara
.
common
.
ys
.
model
.
res
.
airport
;
import
lombok.Data
;
import
java.util.List
;
import
java.util.Map
;
/**
* @author hzh
* @date 2024-10-21
**/
@Data
public
class
QueryMoreCabinModel
{
/**
* 航班所有价格集合,数据结构参考航班列表查询接口返回的价格集合
*/
private
Map
<
String
,
Object
>
priceMap
;
/**
* 航班所有舱位集合,数据结构参考航班列表查询接口返回的航班的舱位集合
*/
private
Map
<
String
,
Object
>
flightMap
;
/**
* 航班所有舱位类型集合,数据结构参考航班列表查询接口返回的航班的舱位类型集合
*/
private
Map
<
String
,
Object
>
planeMap
;
/**
* 缓存id,用于后续查询航班价格和舱位信息时使用
*/
private
String
cacheId
;
/**
* 舱位等级集合
*/
@Data
class
CabinType
{
/**
* 舱位等级名称
*/
private
String
cabinTypeName
;
/**
* 舱位id集合
*/
private
List
<
String
>
cabinList
;
/**
* 舱位等级
*/
private
String
cabinType
;
}
}
ruoyi-common/ruoyi-common-ys/src/main/java/org/dromara/common/ys/service/IAirportService.java
浏览文件 @
00f06ed3
...
@@ -32,6 +32,15 @@ public interface IAirportService {
...
@@ -32,6 +32,15 @@ public interface IAirportService {
*/
*/
QueryFlightMinPriceModel
queryFlightMinPrice
(
String
userId
,
org
.
dromara
.
common
.
ys
.
model
.
req
.
airport
.
QueryFlightMinPriceModel
model
);
QueryFlightMinPriceModel
queryFlightMinPrice
(
String
userId
,
org
.
dromara
.
common
.
ys
.
model
.
req
.
airport
.
QueryFlightMinPriceModel
model
);
/**
* 指定航班获取舱位价格(第二屏)
*
* @param userId 用户id
* @param model 查询参数
* @return 查询结果
*/
QueryMoreCabinModel
queryMoreCabin
(
String
userId
,
org
.
dromara
.
common
.
ys
.
model
.
req
.
airport
.
QueryMoreCabinModel
model
);
/**
/**
* 创建订单
* 创建订单
*
*
...
...
ruoyi-common/ruoyi-common-ys/src/main/java/org/dromara/common/ys/service/impl/AirPortServiceImpl.java
浏览文件 @
00f06ed3
...
@@ -58,6 +58,22 @@ public class AirPortServiceImpl implements IAirportService {
...
@@ -58,6 +58,22 @@ public class AirPortServiceImpl implements IAirportService {
return
JSON
.
parseObject
(
res
.
getData
(),
QueryFlightMinPriceModel
.
class
);
return
JSON
.
parseObject
(
res
.
getData
(),
QueryFlightMinPriceModel
.
class
);
}
}
@Override
public
QueryMoreCabinModel
queryMoreCabin
(
String
userId
,
org
.
dromara
.
common
.
ys
.
model
.
req
.
airport
.
QueryMoreCabinModel
model
)
{
ApiHttpResponse
res
=
Api
.
v1
(
RequestMethodEnum
.
POST
,
DomainEnum
.
TEST
.
getDomain
(),
AirportApiEnum
.
QUERY_MORE_CABIN
.
getUrl
(),
userId
,
null
,
JSON
.
toJSONString
(
model
)
);
if
(!
CharSequenceUtil
.
equals
(
res
.
getErrCode
(),
Code
.
SUCCESS
.
getCode
()))
{
throw
new
RuntimeException
(
res
.
getTips
());
}
return
JSON
.
parseObject
(
res
.
getData
(),
QueryMoreCabinModel
.
class
);
}
@Override
@Override
public
List
<
BookOrderModel
>
bookOrder
(
String
userId
,
org
.
dromara
.
common
.
ys
.
model
.
req
.
airport
.
bookOrder
.
BookOrderModel
model
)
{
public
List
<
BookOrderModel
>
bookOrder
(
String
userId
,
org
.
dromara
.
common
.
ys
.
model
.
req
.
airport
.
bookOrder
.
BookOrderModel
model
)
{
ApiHttpResponse
res
=
Api
.
v1
(
ApiHttpResponse
res
=
Api
.
v1
(
...
...
ruoyi-modules/ruoyi-server/src/main/java/org/dromara/server/controller/airport/AirportController.java
浏览文件 @
00f06ed3
...
@@ -76,6 +76,28 @@ public class AirportController extends BaseController {
...
@@ -76,6 +76,28 @@ public class AirportController extends BaseController {
return
R
.
ok
(
airPortService
.
queryFlight
(
getUserId
(),
model
));
return
R
.
ok
(
airPortService
.
queryFlight
(
getUserId
(),
model
));
}
}
/**
* 航班最低价查询(第一屏)
*/
@GlobalTransactional
(
timeoutMills
=
600000
)
@GetMapping
(
"queryFlightMinPrice"
)
public
R
<
QueryFlightMinPriceModel
>
queryFlightMinPrice
(
org
.
dromara
.
common
.
ys
.
model
.
req
.
airport
.
QueryFlightMinPriceModel
model
)
{
List
<
AirportModel
>
airPortList
=
getAirPortList
();
model
.
setArriveAirport
(
getCode
(
model
.
getArriveAirport
(),
airPortList
));
model
.
setDepartAirport
(
getCode
(
model
.
getDepartAirport
(),
airPortList
));
model
.
setTripType
(
TripType
.
PUBLIC
.
getCode
());
return
R
.
ok
(
airPortService
.
queryFlightMinPrice
(
getUserId
(),
model
));
}
/**
* 指定航班获取舱位价格(第二屏)
*/
@GlobalTransactional
(
timeoutMills
=
600000
)
@GetMapping
(
"queryMoreCabin"
)
public
R
<
QueryMoreCabinModel
>
queryMoreCabin
(
org
.
dromara
.
common
.
ys
.
model
.
req
.
airport
.
QueryMoreCabinModel
model
)
{
return
R
.
ok
(
airPortService
.
queryMoreCabin
(
getUserId
(),
model
));
}
private
String
getCode
(
String
cityName
,
List
<
AirportModel
>
airPortList
)
{
private
String
getCode
(
String
cityName
,
List
<
AirportModel
>
airPortList
)
{
return
airPortList
.
stream
().
filter
(
item
->
StringUtils
.
equals
(
cityName
,
item
.
getCityName
()))
return
airPortList
.
stream
().
filter
(
item
->
StringUtils
.
equals
(
cityName
,
item
.
getCityName
()))
.
sorted
((
o1
,
o2
)
->
{
.
sorted
((
o1
,
o2
)
->
{
...
...
ruoyi-modules/ruoyi-server/src/main/java/org/dromara/server/service/impl/AirportOrderStrategy.java
浏览文件 @
00f06ed3
...
@@ -10,7 +10,9 @@ import org.dromara.order.api.enums.FeeType;
...
@@ -10,7 +10,9 @@ import org.dromara.order.api.enums.FeeType;
import
org.dromara.server.service.IOrderStrategy
;
import
org.dromara.server.service.IOrderStrategy
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
java.math.BigDecimal
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Optional
;
/**
/**
* 机场订单策略
* 机场订单策略
...
@@ -31,22 +33,22 @@ public class AirportOrderStrategy implements IOrderStrategy {
...
@@ -31,22 +33,22 @@ public class AirportOrderStrategy implements IOrderStrategy {
// 保险金额
// 保险金额
RemoteSaveOrder
.
Fee
insuranceFee
=
new
RemoteSaveOrder
.
Fee
()
RemoteSaveOrder
.
Fee
insuranceFee
=
new
RemoteSaveOrder
.
Fee
()
.
setFeeDesc
(
"保险费"
)
.
setFeeDesc
(
"保险费"
)
.
setFeeAmount
(
detail
.
getInsureAmount
(
))
.
setFeeAmount
(
Optional
.
ofNullable
(
detail
.
getInsureAmount
()).
orElse
(
BigDecimal
.
ZERO
))
.
setFeeType
(
FeeType
.
INSURANCE_FEE
);
.
setFeeType
(
FeeType
.
INSURANCE_FEE
);
//服务费
//服务费
RemoteSaveOrder
.
Fee
serviceFee
=
new
RemoteSaveOrder
.
Fee
()
RemoteSaveOrder
.
Fee
serviceFee
=
new
RemoteSaveOrder
.
Fee
()
.
setFeeDesc
(
"服务费"
)
.
setFeeDesc
(
"服务费"
)
.
setFeeAmount
(
detail
.
getServiceFee
(
))
.
setFeeAmount
(
Optional
.
ofNullable
(
detail
.
getServiceFee
()).
orElse
(
BigDecimal
.
ZERO
))
.
setFeeType
(
FeeType
.
CLOUD_SERVICE_FEE
);
.
setFeeType
(
FeeType
.
CLOUD_SERVICE_FEE
);
//燃油费
//燃油费
RemoteSaveOrder
.
Fee
fuelFee
=
new
RemoteSaveOrder
.
Fee
()
RemoteSaveOrder
.
Fee
fuelFee
=
new
RemoteSaveOrder
.
Fee
()
.
setFeeDesc
(
"燃油费"
)
.
setFeeDesc
(
"燃油费"
)
.
setFeeAmount
(
detail
.
getTax
(
))
.
setFeeAmount
(
Optional
.
ofNullable
(
detail
.
getTax
()).
orElse
(
BigDecimal
.
ZERO
))
.
setFeeType
(
FeeType
.
FUEL_FEE
);
.
setFeeType
(
FeeType
.
FUEL_FEE
);
//飞机票费
//飞机票费
RemoteSaveOrder
.
Fee
planeTicket
=
new
RemoteSaveOrder
.
Fee
()
RemoteSaveOrder
.
Fee
planeTicket
=
new
RemoteSaveOrder
.
Fee
()
.
setFeeDesc
(
"飞机票"
)
.
setFeeDesc
(
"飞机票"
)
.
setFeeAmount
(
detail
.
getSalePrice
(
))
.
setFeeAmount
(
Optional
.
ofNullable
(
detail
.
getSalePrice
()).
orElse
(
BigDecimal
.
ZERO
))
.
setFeeType
(
FeeType
.
AIRPLANE_TICKET_FEE
);
.
setFeeType
(
FeeType
.
AIRPLANE_TICKET_FEE
);
return
new
RemoteSaveOrder
()
return
new
RemoteSaveOrder
()
.
setFeeList
(
List
.
of
(
insuranceFee
,
serviceFee
,
fuelFee
,
planeTicket
));
.
setFeeList
(
List
.
of
(
insuranceFee
,
serviceFee
,
fuelFee
,
planeTicket
));
...
...
ruoyi-modules/ruoyi-server/src/main/java/org/dromara/server/service/impl/CarOrderStrategy.java
浏览文件 @
00f06ed3
...
@@ -10,7 +10,9 @@ import org.dromara.order.api.enums.FeeType;
...
@@ -10,7 +10,9 @@ import org.dromara.order.api.enums.FeeType;
import
org.dromara.server.service.IOrderStrategy
;
import
org.dromara.server.service.IOrderStrategy
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
java.math.BigDecimal
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Optional
;
/**
/**
* 用车订单策略
* 用车订单策略
...
@@ -31,17 +33,17 @@ public class CarOrderStrategy implements IOrderStrategy {
...
@@ -31,17 +33,17 @@ public class CarOrderStrategy implements IOrderStrategy {
// 罚金
// 罚金
RemoteSaveOrder
.
Fee
fineFee
=
new
RemoteSaveOrder
.
Fee
()
RemoteSaveOrder
.
Fee
fineFee
=
new
RemoteSaveOrder
.
Fee
()
.
setFeeDesc
(
"罚金"
)
.
setFeeDesc
(
"罚金"
)
.
setFeeAmount
(
detail
.
getFine
(
))
.
setFeeAmount
(
Optional
.
ofNullable
(
detail
.
getFine
()).
orElse
(
BigDecimal
.
ZERO
))
.
setFeeType
(
FeeType
.
CAR_FINE
);
.
setFeeType
(
FeeType
.
CAR_FINE
);
//服务费
//服务费
RemoteSaveOrder
.
Fee
serviceFee
=
new
RemoteSaveOrder
.
Fee
()
RemoteSaveOrder
.
Fee
serviceFee
=
new
RemoteSaveOrder
.
Fee
()
.
setFeeDesc
(
"服务费"
)
.
setFeeDesc
(
"服务费"
)
.
setFeeAmount
(
detail
.
getServiceFee
(
))
.
setFeeAmount
(
Optional
.
ofNullable
(
detail
.
getServiceFee
()).
orElse
(
BigDecimal
.
ZERO
))
.
setFeeType
(
FeeType
.
CLOUD_SERVICE_FEE
);
.
setFeeType
(
FeeType
.
CLOUD_SERVICE_FEE
);
//火车票费
//火车票费
RemoteSaveOrder
.
Fee
carFee
=
new
RemoteSaveOrder
.
Fee
()
RemoteSaveOrder
.
Fee
carFee
=
new
RemoteSaveOrder
.
Fee
()
.
setFeeDesc
(
"用车费"
)
.
setFeeDesc
(
"用车费"
)
.
setFeeAmount
(
detail
.
getUseVehicleFee
(
))
.
setFeeAmount
(
Optional
.
ofNullable
(
detail
.
getUseVehicleFee
()).
orElse
(
BigDecimal
.
ZERO
))
.
setFeeType
(
FeeType
.
CAR_FEE
);
.
setFeeType
(
FeeType
.
CAR_FEE
);
return
new
RemoteSaveOrder
()
return
new
RemoteSaveOrder
()
.
setFeeList
(
List
.
of
(
fineFee
,
serviceFee
,
carFee
));
.
setFeeList
(
List
.
of
(
fineFee
,
serviceFee
,
carFee
));
...
...
ruoyi-modules/ruoyi-server/src/main/java/org/dromara/server/service/impl/HotelOrderStrategy.java
浏览文件 @
00f06ed3
...
@@ -10,7 +10,9 @@ import org.dromara.order.api.enums.FeeType;
...
@@ -10,7 +10,9 @@ import org.dromara.order.api.enums.FeeType;
import
org.dromara.server.service.IOrderStrategy
;
import
org.dromara.server.service.IOrderStrategy
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
java.math.BigDecimal
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Optional
;
/**
/**
* 酒店订单策略
* 酒店订单策略
...
@@ -31,12 +33,12 @@ public class HotelOrderStrategy implements IOrderStrategy {
...
@@ -31,12 +33,12 @@ public class HotelOrderStrategy implements IOrderStrategy {
// 保险金额
// 保险金额
RemoteSaveOrder
.
Fee
hotelFee
=
new
RemoteSaveOrder
.
Fee
()
RemoteSaveOrder
.
Fee
hotelFee
=
new
RemoteSaveOrder
.
Fee
()
.
setFeeDesc
(
"房费"
)
.
setFeeDesc
(
"房费"
)
.
setFeeAmount
(
detail
.
getSalePrice
(
))
.
setFeeAmount
(
Optional
.
ofNullable
(
detail
.
getSalePrice
()).
orElse
(
BigDecimal
.
ZERO
))
.
setFeeType
(
FeeType
.
INSURANCE_FEE
);
.
setFeeType
(
FeeType
.
INSURANCE_FEE
);
//服务费
//服务费
RemoteSaveOrder
.
Fee
serviceFee
=
new
RemoteSaveOrder
.
Fee
()
RemoteSaveOrder
.
Fee
serviceFee
=
new
RemoteSaveOrder
.
Fee
()
.
setFeeDesc
(
"服务费"
)
.
setFeeDesc
(
"服务费"
)
.
setFeeAmount
(
detail
.
getServiceFee
(
))
.
setFeeAmount
(
Optional
.
ofNullable
(
detail
.
getServiceFee
()).
orElse
(
BigDecimal
.
ZERO
))
.
setFeeType
(
FeeType
.
CLOUD_SERVICE_FEE
);
.
setFeeType
(
FeeType
.
CLOUD_SERVICE_FEE
);
return
new
RemoteSaveOrder
()
return
new
RemoteSaveOrder
()
.
setFeeList
(
List
.
of
(
hotelFee
,
serviceFee
));
.
setFeeList
(
List
.
of
(
hotelFee
,
serviceFee
));
...
...
ruoyi-modules/ruoyi-server/src/main/java/org/dromara/server/service/impl/TrainOrderStrategy.java
浏览文件 @
00f06ed3
...
@@ -11,7 +11,9 @@ import org.dromara.order.api.enums.FeeType;
...
@@ -11,7 +11,9 @@ import org.dromara.order.api.enums.FeeType;
import
org.dromara.server.service.IOrderStrategy
;
import
org.dromara.server.service.IOrderStrategy
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
java.math.BigDecimal
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Optional
;
/**
/**
* 火车票订单策略
* 火车票订单策略
...
@@ -32,17 +34,17 @@ public class TrainOrderStrategy implements IOrderStrategy {
...
@@ -32,17 +34,17 @@ public class TrainOrderStrategy implements IOrderStrategy {
// 保险金额
// 保险金额
RemoteSaveOrder
.
Fee
insuranceFee
=
new
RemoteSaveOrder
.
Fee
()
RemoteSaveOrder
.
Fee
insuranceFee
=
new
RemoteSaveOrder
.
Fee
()
.
setFeeDesc
(
"保险费"
)
.
setFeeDesc
(
"保险费"
)
.
setFeeAmount
(
detail
.
getInsureAmount
(
))
.
setFeeAmount
(
Optional
.
ofNullable
(
detail
.
getInsureAmount
()).
orElse
(
BigDecimal
.
ZERO
))
.
setFeeType
(
FeeType
.
HOTEL_FEE
);
.
setFeeType
(
FeeType
.
HOTEL_FEE
);
//服务费
//服务费
RemoteSaveOrder
.
Fee
serviceFee
=
new
RemoteSaveOrder
.
Fee
()
RemoteSaveOrder
.
Fee
serviceFee
=
new
RemoteSaveOrder
.
Fee
()
.
setFeeDesc
(
"服务费"
)
.
setFeeDesc
(
"服务费"
)
.
setFeeAmount
(
detail
.
getServiceChargePrice
(
))
.
setFeeAmount
(
Optional
.
ofNullable
(
detail
.
getServiceChargePrice
()).
orElse
(
BigDecimal
.
ZERO
))
.
setFeeType
(
FeeType
.
CLOUD_SERVICE_FEE
);
.
setFeeType
(
FeeType
.
CLOUD_SERVICE_FEE
);
//火车票费
//火车票费
RemoteSaveOrder
.
Fee
railTicket
=
new
RemoteSaveOrder
.
Fee
()
RemoteSaveOrder
.
Fee
railTicket
=
new
RemoteSaveOrder
.
Fee
()
.
setFeeDesc
(
"火车票费"
)
.
setFeeDesc
(
"火车票费"
)
.
setFeeAmount
(
detail
.
getTicketPrice
(
))
.
setFeeAmount
(
Optional
.
ofNullable
(
detail
.
getTicketPrice
()).
orElse
(
BigDecimal
.
ZERO
))
.
setFeeType
(
FeeType
.
RAIL_TICKET_FEE
);
.
setFeeType
(
FeeType
.
RAIL_TICKET_FEE
);
return
new
RemoteSaveOrder
()
return
new
RemoteSaveOrder
()
.
setFeeList
(
List
.
of
(
insuranceFee
,
serviceFee
,
railTicket
));
.
setFeeList
(
List
.
of
(
insuranceFee
,
serviceFee
,
railTicket
));
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论