@ -55,6 +55,7 @@ import org.jeecg.modules.pay.MpWxPayService;
import org.jeecg.modules.system.entity.SysUserRole ;
import org.jeecg.modules.system.service.ISysUserRoleService ;
import org.jeecg.modules.system.service.ISysUserService ;
import org.jeecg.modules.xcx.goods.req.EditLeaseNumReq ;
import org.jeecg.modules.xcx.order.req.* ;
import org.jeecg.modules.xcx.order.service.IOrderService ;
import org.springframework.beans.BeanUtils ;
@ -1195,7 +1196,7 @@ public class OrderServiceImpl implements IOrderService {
hotelOrderDetail . setGoodsId ( hotelGoods . getId ( ) ) ;
hotelOrderDetail . setGoodsName ( hotelGoods . getName ( ) ) ;
hotelOrderDetail . setSkuId ( hotelGoodsSku . getId ( ) ) ;
hotelOrderDetail . setSku ( hotelGoodsSku . getTitle ( ) ) ;
hotelOrderDetail . setSku ( hotelGoodsSku . getColour ( ) + "," + hotelGoodsSku . get Title ( ) ) ;
hotelOrderDetail . setNum ( createOrderReq . getNum ( ) ) ;
hotelOrderDetail . setOrderPay ( price ) ;
hotelOrderDetail . setCategoryId ( hotelCategory . getId ( ) ) ;
@ -2487,6 +2488,214 @@ public class OrderServiceImpl implements IOrderService {
return "SUCCESS" ;
}
@Transactional ( rollbackFor = Exception . class )
@Override
public Object orderNotify5 ( String requestBody ) {
WxPayOrderNotifyResult notify = mpWxPayService . notify ( requestBody ) ;
/ / 对比outTradeNo进行业务处理
if ( notify = = null ) {
/ / 会继续通知
return "FAIL" ;
}
String outTradeNo = notify . getOutTradeNo ( ) ;
System . err . println ( outTradeNo ) ;
HotelOrderLog hotelOrderLog = hotelOrderLogService . lambdaQuery ( )
. eq ( HotelOrderLog : : getDelFlag , 0 )
. eq ( HotelOrderLog : : getId , outTradeNo )
. eq ( HotelOrderLog : : getIsPay , 0 )
. one ( ) ;
HotelOrder hotelOrder = hotelOrderService . lambdaQuery ( )
. eq ( HotelOrder : : getDelFlag , 0 )
. eq ( HotelOrder : : getOrderLogId , hotelOrderLog . getId ( ) )
. one ( ) ;
/*订单未找到*/
if ( hotelOrder = = null ) {
System . err . println ( "订单未找到" ) ;
return "FAIL" ;
}
/*已经处理过订单*/
if ( hotelOrder . getStatus ( ) ! = 0 & & hotelOrder . getStatus ( ) ! = 3 ) {
return "SUCCESS" ;
}
List < HotelOrderDetail > hotelOrderDetails = hotelOrderDetailService . lambdaQuery ( )
. eq ( HotelOrderDetail : : getDelFlag , 0 )
. eq ( HotelOrderDetail : : getOrderId , hotelOrder . getId ( ) )
. list ( ) ;
HanHaiMember hanHaiMember = hanHaiMemberService . lambdaQuery ( )
. eq ( HanHaiMember : : getId , hotelOrder . getUserId ( ) )
. one ( ) ;
HotelShop hotelShop = hotelShopService . lambdaQuery ( )
. eq ( HotelShop : : getDelFlag , 0 )
. eq ( HotelShop : : getId , hanHaiMember . getShopId ( ) )
. one ( ) ;
HotelOrder shopOrder = new HotelOrder ( ) ;
shopOrder . setId ( IdWorker . getIdStr ( ) ) ;
shopOrder . setTitle ( hotelOrder . getTitle ( ) ) ;
List < HotelOrderDetail > hotelOrderDetails1 = new ArrayList < > ( ) ;
List < HotelLeaseLog > hotelLeaseLogs = new ArrayList < > ( ) ;
List < HotelOrder > orders = new ArrayList < > ( ) ;
Integer type = 0 ;
for ( HotelOrderDetail hotelOrderDetail : hotelOrderDetails ) {
/*租赁业务*/
if ( hotelOrder . getType ( ) = = 0 ) {
HotelLeaseLog hotelLeaseLog = new HotelLeaseLog ( ) ;
/ / 用户
hotelLeaseLog . setUserId ( hotelOrder . getUserId ( ) ) ;
hotelLeaseLog . setShopId ( hotelOrder . getShopId ( ) ) ;
hotelLeaseLog . setOrderId ( hotelOrder . getId ( ) ) ;
hotelLeaseLog . setOrderDetailId ( hotelOrderDetail . getId ( ) ) ;
hotelLeaseLog . setGoodsId ( hotelOrderDetail . getGoodsId ( ) ) ;
hotelLeaseLog . setSkuId ( hotelOrderDetail . getSkuId ( ) ) ;
hotelLeaseLog . setGoodsName ( hotelOrderDetail . getGoodsName ( ) ) ;
hotelLeaseLog . setGoodsPic ( hotelOrderDetail . getPic ( ) ) ;
hotelLeaseLog . setSku ( hotelOrderDetail . getSku ( ) ) ;
hotelLeaseLog . setStatus ( 0 ) ;
hotelLeaseLog . setNum ( hotelOrderDetail . getNum ( ) ) ;
hotelLeaseLog . setPrice ( hotelOrderDetail . getDeposit ( ) ) ;
hotelLeaseLog . setCategoryId ( hotelOrderDetail . getCategoryId ( ) ) ;
HotelGoods hotelGoods = hotelGoodsService . lambdaQuery ( )
. eq ( HotelGoods : : getDelFlag , 0 )
. eq ( HotelGoods : : getId , hotelOrderDetail . getGoodsId ( ) )
. one ( ) ;
HotelGoodsSku hotelGoodsSku = hotelGoodsSkuService . lambdaQuery ( )
. eq ( HotelGoodsSku : : getDelFlag , 0 )
. eq ( HotelGoodsSku : : getId , hotelOrderDetail . getSkuId ( ) )
. one ( ) ;
HotelCategory hotelCategory = hotelCategoryService . lambdaQuery ( )
. eq ( HotelCategory : : getDelFlag , 0 )
. eq ( HotelCategory : : getId , hotelOrderDetail . getCategoryId ( ) )
. one ( ) ;
/*水洗店*/
HotelOrderDetail hotelOrderDetail1 = new HotelOrderDetail ( ) ;
shopOrder . setUserName ( hotelShop . getUserName ( ) ) ;
shopOrder . setUserPhone ( hotelShop . getPhone ( ) ) ;
shopOrder . setUserAddress ( hotelShop . getAddress ( ) ) ;
shopOrder . setUserId ( hotelShop . getUserId ( ) ) ;
shopOrder . setDeposit ( hotelOrder . getDeposit ( ) ) ;
shopOrder . setType ( 0 ) ;
shopOrder . setStatus ( 1 ) ;
shopOrder . setOrderLogId ( hotelOrderLog . getId ( ) ) ;
shopOrder . setWashShopFlag ( 1 ) ;
hotelOrderDetail1 . setId ( IdWorker . getIdStr ( ) ) ;
hotelOrderDetail1 . setPic ( hotelGoods . getPic ( ) ) ;
hotelOrderDetail1 . setGoodsId ( hotelGoods . getId ( ) ) ;
hotelOrderDetail1 . setGoodsName ( hotelGoods . getName ( ) ) ;
hotelOrderDetail1 . setSkuId ( hotelGoodsSku . getId ( ) ) ;
hotelOrderDetail1 . setSku ( hotelGoodsSku . getTitle ( ) ) ;
hotelOrderDetail1 . setNum ( hotelOrderDetail . getNum ( ) ) ;
hotelOrderDetail1 . setOrderPay ( hotelOrderDetail . getOrderPay ( ) ) ;
hotelOrderDetail1 . setCategoryId ( hotelCategory . getId ( ) ) ;
hotelOrderDetail1 . setOrderId ( shopOrder . getId ( ) ) ;
hotelOrderDetails1 . add ( hotelOrderDetail1 ) ;
hotelLeaseLogs . add ( hotelLeaseLog ) ;
} else if ( hotelOrder . getType ( ) = = 1 ) { /*水洗逻辑*/
List < HotelLeaseLog > hotelLeaseLogList = hotelLeaseLogService . lambdaQuery ( )
. eq ( HotelLeaseLog : : getDelFlag , 0 )
. eq ( HotelLeaseLog : : getLeaseFlag , 1 )
. eq ( HotelLeaseLog : : getUserId , hanHaiMember . getId ( ) )
. list ( ) ;
for ( HotelLeaseLog hotelLeaseLog : hotelLeaseLogList ) {
type = 1 ;
HotelLeaseLog hotelLeaseLog1 = new HotelLeaseLog ( ) ;
hotelLeaseLog1 . setId ( hotelLeaseLog . getId ( ) ) ;
hotelLeaseLog1 . setStartTime ( new Date ( ) ) ;
hotelLeaseLogs . add ( hotelLeaseLog1 ) ;
}
}
}
/ / 修改订单状态
HotelOrder hotelOrder1 = new HotelOrder ( ) ;
hotelOrder1 . setId ( hotelOrder . getId ( ) ) ;
if ( hotelOrder . getType ( ) = = 0 ) {
hotelOrder1 . setStatus ( 1 ) ;
} else if ( hotelOrder . getType ( ) = = 1 ) {
hotelOrder1 . setStatus ( 4 ) ;
}
hotelOrderService . updateById ( hotelOrder1 ) ;
HotelOrderLog hotelOrderLog1 = new HotelOrderLog ( ) ;
hotelOrderLog1 . setId ( hotelOrderLog . getId ( ) ) ;
hotelOrderLog1 . setIsPay ( 1 ) ;
hotelOrderLogService . updateById ( hotelOrderLog1 ) ;
if ( type = = 0 ) {
hotelLeaseLogService . saveBatch ( hotelLeaseLogs ) ;
hotelOrderService . save ( shopOrder ) ;
hotelOrderDetailService . saveBatch ( hotelOrderDetails1 ) ;
} else {
hotelLeaseLogService . updateBatchById ( hotelLeaseLogs ) ;
}
if ( hotelOrder . getType ( ) = = 0 ) {
HotelMemberAccount hotelMemberAccount = hotelMemberAccountService . lambdaQuery ( )
. eq ( HotelMemberAccount : : getDelFlag , 0 )
. eq ( HotelMemberAccount : : getUserId , hanHaiMember . getId ( ) )
. one ( ) ;
HotelMemberAccount hotelMemberAccount1 = new HotelMemberAccount ( ) ;
hotelMemberAccount1 . setId ( hotelMemberAccount . getId ( ) ) ;
hotelMemberAccount1 . setDeposit ( hotelMemberAccount . getDeposit ( ) . add ( hotelOrder . getDeposit ( ) ) ) ;
hotelMemberAccountService . updateById ( hotelMemberAccount1 ) ;
HotelBalanceLog hotelBalanceLog = new HotelBalanceLog ( ) ;
hotelBalanceLog . setBalance ( hotelOrder . getDeposit ( ) ) ;
hotelBalanceLog . setUserBalance ( hotelMemberAccount . getDeposit ( ) ) ;
hotelBalanceLog . setOrderId ( hotelOrder . getId ( ) ) ;
hotelBalanceLog . setPayType ( 0 ) ;
hotelBalanceLog . setUserId ( hanHaiMember . getId ( ) ) ;
hotelBalanceLog . setTitle ( "租赁押金" ) ;
hotelBalanceLogService . save ( hotelBalanceLog ) ;
}
if ( hotelOrder . getType ( ) = = 0 ) {
List < SysUserRole > sysUserRoles = sysUserRoleService . lambdaQuery ( )
. eq ( SysUserRole : : getRoleId , hotelConfService . getConf ( "messageId" ) )
. list ( ) ;
List < String > collect = sysUserRoles . stream ( ) . map ( SysUserRole : : getUserId ) . collect ( Collectors . toList ( ) ) ;
MessageDTO messageDTO = new MessageDTO ( ) ;
messageDTO . setTitle ( "租赁订单" ) ;
messageDTO . setToUser ( collect . toString ( ) ) ;
messageDTO . setFromUser ( "" ) ;
messageDTO . setContent ( "您有新的租赁订单" ) ;
sysBaseAPI . sendSysAnnouncement ( messageDTO ) ;
}
/ / 不再通知该结果
return "SUCCESS" ;
}
@Transactional ( rollbackFor = Exception . class )
@Override
public Result < ? > applyRefundOrder ( ApplyRefundOrderReq applyRefundOrderReq ) {
@ -2880,7 +3089,7 @@ public class OrderServiceImpl implements IOrderService {
for ( HotelOrderDetail hotelOrderDetail : hotelOrderDetails ) {
HotelLeaseLog hotelLeaseLog = hotelLeaseLogService . lambdaQuery ( )
. eq ( HotelLeaseLog : : getDelFlag , 0 )
. eq ( HotelLeaseLog : : getOrderDetail Id , hotelOrderDetail . getId ( ) )
. eq ( HotelLeaseLog : : getId , hotelOrderDetail . getLease Id ( ) )
. eq ( HotelLeaseLog : : getUserId , hanHaiMember . getId ( ) )
. one ( ) ;
if ( hotelLeaseLog = = null ) {
@ -2942,39 +3151,42 @@ public class OrderServiceImpl implements IOrderService {
hotelOrder1 . setStatus ( 15 ) ;
hotelOrderService . updateById ( hotelOrder1 ) ;
/ / 子
HotelLeaseLog hotelLeaseLog = hotelLeaseLogService . lambdaQuery ( )
. eq ( HotelLeaseLog : : getDelFlag , 0 )
. eq ( HotelLeaseLog : : getId , hotelOrderDetails . get ( 0 ) . getLeaseId ( ) )
. eq ( HotelLeaseLog : : getUserId , hanHaiMember . getId ( ) )
. one ( ) ;
if ( hotelLeaseLog = = null ) {
throw new JeecgBootException ( "数据错误,请刷新重试" ) ;
}
if ( StringUtils . isNotBlank ( hotelLeaseLog . getPid ( ) ) ) {
/ / 父
HotelLeaseLog hotelLeaseLog1 = hotelLeaseLogService . lambdaQuery ( )
for ( HotelOrderDetail hotelOrderDetail : hotelOrderDetails ) {
/ / 子
HotelLeaseLog hotelLeaseLog = hotelLeaseLogService . lambdaQuery ( )
. eq ( HotelLeaseLog : : getDelFlag , 0 )
. eq ( HotelLeaseLog : : getId , hotelLeaseLog . getPid ( ) )
. eq ( HotelLeaseLog : : getId , hotelOrderDetail . getLeaseId ( ) )
. eq ( HotelLeaseLog : : getUserId , hanHaiMember . getId ( ) )
. one ( ) ;
int num = hotelLeaseLog . getNum ( ) + hotelLeaseLog1 . getNum ( ) ;
BigDecimal price2 = hotelLeaseLog1 . getPrice ( ) . add ( hotelLeaseLog . getPrice ( ) ) ;
HotelLeaseLog hotelLeaseLog2 = new HotelLeaseLog ( ) ;
if ( hotelLeaseLog = = null ) {
throw new JeecgBootException ( "数据错误,请刷新重试" ) ;
}
if ( StringUtils . isNotBlank ( hotelLeaseLog . getPid ( ) ) ) {
/ / 父
HotelLeaseLog hotelLeaseLog1 = hotelLeaseLogService . lambdaQuery ( )
. eq ( HotelLeaseLog : : getDelFlag , 0 )
. eq ( HotelLeaseLog : : getId , hotelLeaseLog . getPid ( ) )
. one ( ) ;
int num = hotelLeaseLog . getNum ( ) + hotelLeaseLog1 . getNum ( ) ;
BigDecimal price2 = hotelLeaseLog1 . getPrice ( ) . add ( hotelLeaseLog . getPrice ( ) ) ;
HotelLeaseLog hotelLeaseLog2 = new HotelLeaseLog ( ) ;
hotelLeaseLog2 . setId ( hotelLeaseLog1 . getId ( ) ) ;
hotelLeaseLog2 . setPrice ( price2 ) ;
hotelLeaseLog2 . setPrice ( price2 ) ;
hotelLeaseLog2 . setNum ( num ) ;
hotelLeaseLogService . updateById ( hotelLeaseLog2 ) ;
hotelLeaseLogService . removeById ( hotelLeaseLog . getId ( ) ) ;
}
}
}
@ -3009,6 +3221,7 @@ public class OrderServiceImpl implements IOrderService {
hotelLeaseLog . setSku ( uploadTableclothReq . getLength ( ) + "*" + uploadTableclothReq . getWide ( ) ) ;
hotelLeaseLogService . save ( hotelLeaseLog ) ;
/ *
HotelShop hotelShop = hotelShopService . lambdaQuery ( )
. eq ( HotelShop : : getDelFlag , 0 )
. eq ( HotelShop : : getId , hanHaiMember . getShopId ( ) )
@ -3083,6 +3296,7 @@ public class OrderServiceImpl implements IOrderService {
hotelOrderDetail1 . setDeposit ( BigDecimal . ZERO ) ;
hotelOrderDetailService . save ( hotelOrderDetail1 ) ;
* /
@ -3464,6 +3678,29 @@ public class OrderServiceImpl implements IOrderService {
return Result . OK ( hotelOrderDetails ) ;
}
@Override
public Result < ? > editLeaseNum ( EditLeaseNumReq editLeaseNumReq ) {
HanHaiMember hanHaiMember = shiroRealm . checkUserTokenIsEffectHanHaiAccount ( editLeaseNumReq . getToken ( ) ) ;
HotelLeaseLog hotelLeaseLog = hotelLeaseLogService . lambdaQuery ( )
. eq ( HotelLeaseLog : : getDelFlag , 0 )
. eq ( HotelLeaseLog : : getId , editLeaseNumReq . getId ( ) )
. eq ( HotelLeaseLog : : getUserId , hanHaiMember . getId ( ) )
. eq ( HotelLeaseLog : : getLeaseFlag , 0 )
. one ( ) ;
if ( hotelLeaseLog = = null ) {
throw new JeecgBootException ( "只能修改上传物品" ) ;
}
HotelLeaseLog hotelLeaseLog1 = new HotelLeaseLog ( ) ;
hotelLeaseLog1 . setId ( hotelLeaseLog . getId ( ) ) ;
hotelLeaseLog1 . setNum ( editLeaseNumReq . getNum ( ) ) ;
hotelLeaseLogService . updateById ( hotelLeaseLog1 ) ;
return Result . OK ( ) ;
}
public Object testPay ( String id ) {
HotelOrder hotelOrder = hotelOrderService . lambdaQuery ( )
. eq ( HotelOrder : : getDelFlag , 0 )