@ -79,6 +79,7 @@ import com.fuint.business.userManager.vo.LJUserVo;
import com.fuint.common.dto.AccountInfo ;
import com.fuint.common.util.StringUtils ;
import com.fuint.common.util.TokenUtil ;
import com.fuint.pay.service.PayCenterService ;
import com.fuint.system.config.service.SysConfigService ;
import com.fuint.system.dept.mapper.SysDeptMapper ;
import lombok.extern.slf4j.Slf4j ;
@ -123,24 +124,16 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
@Autowired
private OilBalanceChangeService oilBalanceChangeService ;
@Autowired
private OilConfigService oilConfigService ;
@Autowired
private LJGoodsService goodsService ;
@Autowired
private StaffCommissionService staffCommissionService ;
@Autowired
private CommissionRecordService commissionRecordService ;
@Autowired
private GrowthValueChangeService growthValueChangeService ;
@Autowired
private ChainStoreConfigService chainStoreConfigService ;
@Autowired
private SaleDetailService saleDetailService ;
@Autowired
private CardFavorableRecordService cardFavorableRecordService ;
@Resource
private CardFavorableService cardFavorableService ;
@Resource
private ActiveFullminusService activeFullminusService ;
@Resource
private ActiveDiscountService activeDiscountService ;
@ -160,6 +153,48 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
private SysDeptMapper sysDeptMapper ;
@Resource
private MtStoreMapper mtStoreMapper ;
@Autowired
private ILJStoreService storeService ;
@Autowired
private LJUserService userService ;
@Resource
OilGunMapper oilGunMapper ;
@Resource
OilNameMapper oilNameMapper ;
@Resource
OilTankMapper oilTankMapper ;
@Autowired
private CardValudChildrensService cardValudChildrensService ;
@Autowired
@Lazy
private AllOrderInfoService allOrderInfoService ;
@Autowired
CardValueChildOrderService cardValueChildOrderService ;
@Autowired
private OilTankService oilTankService ;
@Autowired
private OilTrackingService oilTrackingService ;
@Resource
private TagUtils tagUtils ;
@Resource
private OilTagService oilTagService ;
@Resource
private PrinterService printerService ;
@Resource
OilOrderMapper oilOrderMapper ;
@Resource
LJOrderMapper ljOrderMapper ;
@Resource
CardValueRecordMapper cardValueRecordMapper ;
@Resource
CardFuelRecordMapper cardFuelRecordMapper ;
@Resource
LJStaffMapper ljStaffMapper ;
@Resource
OilNumberMapper oilNumberMapper ;
@Autowired
private PayCenterService payCenterService ;
@Override
public IPage < OilOrder > selectOilOrderList ( Page page , OilOrder order ) {
@ -170,13 +205,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
return oilOrderIPage ;
}
@Resource
OilGunMapper oilGunMapper ;
@Resource
OilNameMapper oilNameMapper ;
@Resource
OilTankMapper oilTankMapper ;
@Override
public IPage < OilOrder > selectOilOrderListByZtDz ( Page page , OilOrder order ) {
if ( ObjectUtil . isEmpty ( order . getDeptId ( ) ) ) {
@ -228,21 +256,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
if ( ObjectUtil . isNotEmpty ( mtStore ) ) {
record . setStoreName ( mtStore . getName ( ) ) ;
}
/ / if ( ObjectUtil . isNotEmpty ( record . getOilGunNum ( ) ) ) {
/ / OilGun oilGun = oilGunMapper . queryById ( Integer . valueOf ( record . getOilGunNum ( ) ) ) ;
/ / if ( ObjectUtil . isNotEmpty ( oilGun ) ) {
/ / record . setGunName ( oilGun . getGunName ( ) ) ;
/ / }
/ / }
/ /
/ / OilName oilName = oilNameMapper . selectOilNameById ( Integer . valueOf ( record . getOils ( ) ) ) ;
/ / if ( ObjectUtil . isNotEmpty ( oilName ) ) {
/ / record . setOilName ( oilName . getOilName ( ) ) ;
/ / }
/ / OilTank oilTank = oilTankMapper . queryById ( record . getTankId ( ) ) ;
/ / if ( ObjectUtil . isNotEmpty ( oilTank ) ) {
/ / record . setTankName ( oilTank . getTankName ( ) ) ;
/ / }
}
return oilOrderIPage ;
}
@ -268,15 +281,11 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
order . setStoreId ( storeId ) ;
List < OilOrderExcel > cashierOrderExcels = baseMapper . selectOilOrderListExcel ( order ) ;
/ / 设置文件名字
/ / String fileName = " 订单 " + System . currentTimeMillis ( ) + " .xlsx " ;
/ / 设置响应头信息
response . setContentType ( " application/vnd.ms-excel " ) ;
response . setCharacterEncoding ( " utf-8 " ) ;
response . setHeader ( " Content-disposition " , " attachment;filename=demo.xlsx " ) ;
try {
/ / 写入文件数据
EasyExcel . write ( response . getOutputStream ( ) , OilOrderExcel . class ) . sheet ( " download " ) . doWrite ( cashierOrderExcels ) ;
@ -335,7 +344,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
List < ActiveDiscountChild > activeDiscountChildList = oneById . getActiveDiscountChildList ( ) ;
for ( ActiveDiscountChild activeDiscountChild : activeDiscountChildList ) {
if ( activeDiscountChild . getAmount ( ) < = oilOrderVo . getOrderAmount ( ) ) {
/ / oilOrderVo . setDeductionAmount ( activeDiscountChild . getDeductionAmount ( ) ) ;
deductionAmount + = activeDiscountChild . getDeductionAmount ( ) ;
break ;
}
@ -347,7 +355,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
List < ActiveDiscountChild > activeDiscountChildList = oneById . getActiveDiscountChildList ( ) ;
for ( ActiveDiscountChild activeDiscountChild : activeDiscountChildList ) {
if ( activeDiscountChild . getAmount ( ) < = oilOrderVo . getOrderAmount ( ) ) {
/ / oilOrderVo . setDeductionAmount ( oilOrderVo . getOrderAmount ( ) - ( oilOrderVo . getOrderAmount ( ) * activeDiscountChild . getDiscount ( ) ) ) ;
deductionAmount + = oilOrderVo . getOrderAmount ( ) - ( oilOrderVo . getOrderAmount ( ) * activeDiscountChild . getDiscount ( ) ) ;
break ;
}
@ -356,7 +363,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
}
/ / 优惠券
if ( ObjectUtil . isNotEmpty ( oilOrderVo . getCouponId ( ) ) ) {
/ / CardFavorableVO cardFavorableVO = cardFavorableService . selectOneById ( oilOrderVo . getCouponId ( ) ) ;
LambdaQueryWrapper < CardFavorableRecord > queryWrapper = new LambdaQueryWrapper < > ( ) ;
queryWrapper . eq ( CardFavorableRecord : : getCardFavorableId , oilOrderVo . getCouponId ( ) ) ;
queryWrapper . eq ( CardFavorableRecord : : getMtUserId , oilOrderVo . getUserId ( ) ) ;
@ -387,11 +393,9 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
String oilOrder = map . get ( " oilOrder " ) ;
/ / 商品订单信息
String goodsOrder = map . get ( " goodsOrder " ) ;
/ / 囤油卡变化之后的信息
String refuelMoney = map . get ( " refuelMoney " ) ;
/ / 储值卡消费金额
/ / 储值卡消费金额 没有默认传0
String balanceAmount = map . get ( " balanceAmount " ) ;
/ / 囤油卡消费升数
/ / 囤油卡消费升数 没有默认传0
String oilCardAmount = map . get ( " oilCardAmount " ) ;
/ / 支付类型
String payType = map . get ( " payType " ) ;
@ -407,19 +411,15 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
Double seekZero = Double . valueOf ( map . get ( " seekZero " ) ) ;
/ / 油枪id
String oilGunId = map . get ( " oilGunId " ) ;
Double levelAmount = Double . valueOf ( map . get ( " levelAmount " ) ) ;
/ / 活动营销优惠金额
Double activeAmount = Double . valueOf ( map . get ( " activeAmount " ) ) ;
Double oilCardAmount1 = Double . valueOf ( map . get ( " oilCardAmount1 " ) ) ;
/ / 优惠券 用户 id
Integer couponUserId = null ;
if ( StringUtils . isNotEmpty ( map . get ( " couponUserId " ) ) ) {
couponUserId = Integer . valueOf ( map . get ( " couponUserId " ) ) ;
}
Integer recordId = null ;
if ( StringUtils . isNotEmpty ( map . get ( " recordId " ) ) ) {
recordId = Integer . valueOf ( map . get ( " recordId " ) ) ;
}
/ / 优惠券类型
String couponType = map . get ( " couponType " ) ;
/ / 付款用户
String payUser = null ;
if ( ObjectUtil . isNotEmpty ( map . get ( " payUser " ) ) & & ! map . get ( " payUser " ) . equals ( " [] " ) ) {
@ -449,26 +449,19 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
/ / 会员id
userId = Integer . valueOf ( map . get ( " userId " ) ) ;
isMember = true ;
this . insertCardBalance ( consumeAmount , userId , storeId , orderNo ) ;
}
/ / 优惠券id
Integer couponId = null ;
if ( map . get ( " couponId " ) ! = null & & ! map . get ( " couponId " ) . equals ( " " ) ) {
couponId = Integer . valueOf ( map . get ( " couponId " ) ) ;
}
/ / 提成金额
Double commissionAmount = Double . valueOf ( map . get ( " commissionAmount " ) ) ;
/ / 使用积分数量
Integer usePoint = Integer . valueOf ( map . get ( " usePoint " ) ) ;
/ / 积分金额
Double pointAmount = Double . valueOf ( map . get ( " pointAmount " ) ) ;
/ / 终端
String terminal = map . get ( " terminal " ) ;
/ / 商品id列表
String goodsIds = map . get ( " goodsIds " ) ;
/ / 支付状态
String payStatus = " unpaid " ;
if ( payType . equals ( " CASH " ) | | payType . equals ( " credit " ) | | map . get ( " allAmount " ) . equals ( " 0 " ) ) {
if ( payType . equals ( " CASH " ) | | payType . equals ( " after_pay " ) | | map . get ( " allAmount " ) . equals ( " 0 " ) ) {
payStatus = " paid " ;
} else {
payStatus = " unpaid " ;
@ -476,9 +469,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
Map < String , Object > orders = new HashMap < > ( ) ;
OilOrder oilOrder1 = null ;
LJOrder ljOrder1 = null ;
String transactionType = null ;
if ( oilAmount > 0 & & goodsAmount > 0 ) {
transactionType = " 5 " ;
@ -491,7 +481,7 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
/ / 根据店铺id查询商户配置信息
MerchantConfig merchantConfig = merchantConfigService . selectMeChByIdIsUse ( storeId , transactionType , oilGunId ) ;
if ( ObjectUtil . isEmpty ( merchantConfig ) & & ! payType . equals ( " CASH " ) & & ! payType . equals ( " credit " ) & &
if ( ObjectUtil . isEmpty ( merchantConfig ) & & ! payType . equals ( " CASH " ) & & ! payType . equals ( " after_pay " ) & &
! map . get ( " allAmount " ) . equals ( " 0 " ) ) {
orders . put ( " error " , " 请先配置支付通道 " ) ;
return orders ;
@ -514,7 +504,9 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
ljOrder . setDiscount ( goodsDiscount ) ;
ljOrder . setStaffId ( staffId ) ;
ljOrder . setStatus ( payStatus ) ;
if ( couponType . equals ( " 5 " ) ) ljOrder . setCouponUserId ( couponUserId ) ;
if ( payType . equals ( " CASH " ) ) {
/ / 计算提成
if ( ObjectUtil . isNotEmpty ( staffId ) )
staffCommissionService . countStaffCommission ( staffId , storeId , goodsAmount , goodsActualPay , " 2 " , orderNo ) ;
ljOrder . setPayTime ( new Date ( ) ) ;
@ -530,37 +522,28 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
return orders ;
}
}
/ / 添加商品订单
orderService . insertGoodOrder ( ljOrder ) ;
/ / 查询商品订单号
LJOrder ljOrder2 = orderService . selectGoodsOrder ( orderNo ) ;
if ( payType . equals ( " CASH " ) | | payType . equals ( " credit " ) ) {
/ / 添加商品订单记录表
if ( payType . equals ( " CASH " ) | | payType . equals ( " after_pay " ) ) {
/ / 添加商品订单记录表 ( 子表 )
OrderGoods orderGoods = new OrderGoods ( ) ;
for ( JSONObject good : goods ) {
orderGoods . setOrderId ( ljOrder 2 . getId ( ) ) ;
orderGoods . setOrderId ( ljOrder . getId ( ) ) ;
orderGoods . setGoodsId ( Integer . valueOf ( good . get ( " id " ) . toString ( ) ) ) ;
orderGoods . setNum ( Integer . valueOf ( good . get ( " num " ) . toString ( ) ) ) ;
orderGoodsService . insertOrderGoods ( orderGoods , storeId , isMember ) ;
}
}
ljOrder1 = orderService . selectGoodsOrder ( orderNo ) ;
}
Double oilLiters = 0 . 0 ;
/ / 添加油品订单信息
if ( ! oilOrder . equals ( " [] " ) ) {
/ / 将油品订单的json数据转换为数组
List < JSONObject > jsonObjects = JSONArray . parseArray ( oilOrder , JSONObject . class ) ;
if ( ObjectUtil . isNotEmpty ( oilOrder ) ) {
JSONObject jsonObject = JSONObject . parseObject ( oilOrder ) ;
OilOrder order = new OilOrder ( ) ;
for ( int i = 0 ; i < jsonObjects . size ( ) ; i + + ) {
Double amount = Double . valueOf ( jsonObjects . get ( i ) . get ( " amount " ) . toString ( ) ) ;
Double oilPrice = Double . valueOf ( jsonObjects . get ( i ) . get ( " oilPrice " ) . toString ( ) ) ;
Double amount = oilAmount ;
Double oilPrice = Double . valueOf ( jsonObject . get ( " oilPrice " ) . toString ( ) ) ;
Double oilNum = amount / oilPrice ;
oilLiters + = oilNum ;
if ( i = = 0 ) {
order . setOrderType ( " 主订单 " ) ;
order . setOrderAmount ( amount ) ;
order . setPayAmount ( oilActualPay ) ;
@ -571,47 +554,35 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
if ( payType . equals ( " CASH " ) & & ObjectUtil . isNotEmpty ( staffId ) ) {
staffCommissionService . countStaffCommission ( staffId , storeId , oilAmount , oilActualPay , " 1 " , orderNo ) ;
}
order . setCouponId ( recordId ) ;
order . setActiveAmount ( activeAmount ) ;
order . setLevelAmount ( levelAmount ) ;
} else {
order . setOrderType ( " 子订单 " ) ;
order . setOrderAmount ( amount ) ;
order . setPayAmount ( 0 . 0 ) ;
order . setOrderNo ( orderNo + " 1 " ) ;
order . setDiscountAmount ( 0 . 0 ) ;
order . setBalanceAmount ( 0 . 0 ) ;
order . setOilCardAmount ( 0 . 0 ) ;
order . setCouponId ( null ) ;
}
if ( ObjectUtil . isNotEmpty ( userId ) ) {
this . updateGrowthValue ( oilAmount , oilActualPay , userId , Integer . valueOf ( jsonObjects . get ( i ) . get ( " oilName " ) . toString ( ) ) , refuelMoney , storeId , orderNo ) ;
}
order . setStoreId ( storeId ) ;
order . setUserId ( userId ) ;
order . setCouponId ( couponId ) ;
order . setCommissionAmount ( commissionAmount ) ;
order . setStaffId ( staffId ) ;
order . setTerminal ( terminal ) ;
order . setOils ( ( String ) jsonObject s. get ( i ) . get ( " oil Name " ) ) ;
order . setOilGunNum ( jsonObject s. get ( i ) . get ( " gunName " ) . toString ( ) ) ;
order . setOils ( ( String ) jsonObject . get ( " oils " ) ) ;
order . setOilGunNum ( jsonObject . get ( " oilGunNum " ) . toString ( ) ) ;
order . setOilNum ( oilNum ) ;
order . setPayUser ( payUser ) ;
order . setPayType ( payType ) ;
order . setInvoicing ( " 未开票 " ) ;
order . setOrderStatus ( payStatus ) ;
order . setTankId ( Integer . valueOf ( jsonObjects . get ( 0 ) . get ( " tankId " ) . toString ( ) ) ) ;
if ( ObjectUtil . isNotEmpty ( jsonObjects . get ( i ) . get ( " activeId " ) ) ) {
order . setActiveId ( Integer . valueOf ( jsonObjects . get ( i ) . get ( " activeId " ) . toString ( ) ) ) ;
order . setTankId ( Integer . valueOf ( jsonObject . get ( " tankId " ) . toString ( ) ) ) ;
if ( ! couponType . equals ( " 5 " ) ) order . setCouponId ( couponUserId ) ;
if ( ObjectUtil . isNotEmpty ( jsonObject . get ( " activeId " ) ) ) {
order . setActiveId ( Integer . valueOf ( jsonObject . get ( " activeId " ) . toString ( ) ) ) ;
}
if ( ObjectUtil . isNotEmpty ( jsonObject s. get ( i ) . get ( " type" ) ) ) {
order . setActiveType ( jsonObject s. get ( i ) . get ( " type" ) . toString ( ) ) ;
if ( ObjectUtil . isNotEmpty ( jsonObject . get ( " ac tiveT ype" ) ) ) {
order . setActiveType ( jsonObject . get ( " ac tiveT ype" ) . toString ( ) ) ;
}
if ( payType . equals ( " CASH " ) | | payType . equals ( " credit " ) | | payType . equals ( " balanc e" ) ) {
if ( payType . equals ( " CASH " ) | | payType . equals ( " after_pay " ) | | payType . equals ( " card_valu e" ) ) {
order . setPayTime ( new Date ( ) ) ;
this . addOilTrack ( jsonObjects . get ( i ) , storeId ) ;
this . updateCardAndActiveById ( storeId , userId , order . getActiveId ( ) , order . getCouponId ( ) , order . getActiveType ( ) , order . getOrderAmount ( ) , order . getPayAmount ( ) , Integer . valueOf ( order . getOils ( ) ) ) ;
order . setOrderStatus ( " paid " ) ;
this . insertCardBalance ( consumeAmount , userId , storeId , orderNo ) ;
this . addOilTrack ( jsonObject , storeId ) ;
if ( ObjectUtil . isNotEmpty ( userId ) ) {
this . updateGrowthValue ( oilAmount , oilActualPay , userId , Integer . valueOf ( jsonObject . get ( " oils " ) . toString ( ) ) , storeId , orderNo ) ;
}
}
if ( map . get ( " allAmount " ) . equals ( " 0 " ) ) {
order . setPayTime ( new Date ( ) ) ;
@ -619,7 +590,8 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
}
baseMapper . insert ( order ) ;
oilOrder1 = this . selectOilOrderByOrderNo ( orderNo ) ;
if ( order . getOrderStatus ( ) . equals ( " paid " ) ) {
this . updateCardAndActiveById ( storeId , userId , order . getId ( ) ) ;
}
}
@ -632,7 +604,7 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
cashierOrder . setStatus ( payStatus ) ;
cashierOrder . setOilPayAmount ( oilActualPay ) ;
cashierOrder . setGoodsPayAmount ( goodsActualPay ) ;
if ( payType . equals ( " CASH " ) | | payType . equals ( " credit " ) ) {
if ( payType . equals ( " CASH " ) | | payType . equals ( " after_pay " ) ) {
if ( StringUtils . isNotEmpty ( map . get ( " authCode " ) ) ) {
cashierOrder . setPayAmount ( Double . valueOf ( map . get ( " authCode " ) ) ) ;
} else {
@ -654,13 +626,8 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
cashierOrder . setAfterDiscountAmount ( oilAmount + goodsAmount - oilDiscount - goodsDiscount ) ;
/ / 如果金额不等于0调用第三方支付接口
if ( ! map . get ( " allAmount " ) . equals ( " 0 " ) & & ! map . get ( " payType " ) . equals ( " CASH " ) & & ! payType . equals ( " credit " ) ) {
if ( ! map . get ( " allAmount " ) . equals ( " 0 " ) & & ! map . get ( " payType " ) . equals ( " CASH " ) & & ! payType . equals ( " after_pay " ) ) {
Integer allAmount = ( int ) ( Double . valueOf ( map . get ( " allAmount " ) ) * 100 ) ;
/ / 判断是否开启支付规则
/ / List < MerchantConfig > list = merchantConfigService . selectMeChByIsOpen ( storeId ) ;
/ / if ( list . size ( ) > 0 ) {
/ / oilConfigService . oilRule ( storeId ) ;
/ / }
/ / 处理支付需要的数据
Map < String , String > map1 = new HashMap < > ( ) ;
@ -675,16 +642,15 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
map1 . put ( " privateKey " , merchantConfig . getPrivateKey ( ) ) ;
map1 . put ( " goodsOrder " , map . get ( " goodsOrder " ) ) ;
map1 . put ( " oilOrder " , map . get ( " oilOrder " ) ) ;
map1 . put ( " tankId " , map . get ( " oilOrder " ) ) ;
map1 . put ( " tankId " , map . get ( " tankId " ) ) ;
map1 . put ( " storeId " , storeId . toString ( ) ) ;
map1 . put ( " oilCardAmount " , oilCardAmount 1 . toString ( ) ) ;
map1 . put ( " oilCardAmount " , oilCardAmount . toString ( ) ) ;
/ / 调用支付接口
try {
fyPayService . pay ( map1 ) ;
} catch ( Exception e ) {
e . printStackTrace ( ) ;
/ / throw new RuntimeException ( " 支付失败 " ) ;
}
} else {
this . insertAllOrderInfo ( orderNo , storeId , oilAmount + goodsAmount , Double . valueOf ( map . get ( " allAmount " ) ) , oilDiscount , payType , userId , " PC " , " 6 " , " paid " ) ;
@ -697,7 +663,7 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
if ( oilOrder2 . getOrderStatus ( ) . equals ( " paid " ) ) {
cashierOrder . setPayTime ( new Date ( ) ) ;
if ( ObjectUtil . isNotEmpty ( oilOrder2 . getUserId ( ) ) ) integralSettingsService . refuelPoints ( oilOrder2 ) ;
insertFavorable ( oilOrder2 , oilCardAmount1 ) ;
insertFavorable ( oilOrder2 , Double. valueOf ( oilCardAmount ) ) ;
}
cashierOrder . setOilOrderId ( oilOrder2 . getId ( ) ) ;
}
@ -737,20 +703,13 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
}
/ / 调用消费有礼接口
public void updateCardAndActiveById ( Integer storeId , Integer userId , Integer activeId, Integer cardFav orableI d, String typ e, Double o rderAmount, Double payAmount , Integer oil Id) throws Exception {
public void updateCardAndActiveById ( Integer storeId , Integer userId , Integer orderId) {
if ( ObjectUtil . isNotEmpty ( userId ) ) {
LJUserVo userVo = userService . queryUserById ( userId , storeId ) ;
PaymentActiveVO paymentActiveVO = new PaymentActiveVO ( ) ;
paymentActiveVO . setUserId ( userId ) ;
paymentActiveVO . setMtUserLevel ( userVo . getGradeId ( ) ) ;
paymentActiveVO . setStoreId ( storeId ) ;
paymentActiveVO . setActiveId ( activeId ) ;
paymentActiveVO . setCardFavorableId ( cardFavorableId ) ;
paymentActiveVO . setType ( type ) ;
paymentActiveVO . setOrderAmount ( orderAmount ) ;
paymentActiveVO . setPayAmount ( BigDecimal . valueOf ( payAmount ) ) ;
paymentActiveVO . setOilId ( oilId ) ;
cardFavorableRecordService . updateCardAndActiveById ( paymentActiveVO ) ;
Map < String , String > map = new HashMap < > ( ) ;
map . put ( " userId " , userId . toString ( ) ) ;
map . put ( " storeId " , storeId . toString ( ) ) ;
map . put ( " orderId " , orderId . toString ( ) ) ;
payCenterService . cashRegisterSpendWisely ( map ) ;
}
}
@ -773,7 +732,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
/ / 获取用户id
Integer userId = Integer . valueOf ( split [ 1 ] ) ;
res = this . updateUserBalanceAndInsetOrder1 ( userId , map , oilAmount , oilOrders , nowAccountInfo . getStoreId ( ) ) ;
/ / res = this . updateUserBalanceAndInsetOrder ( userId , map , oilAmount , oilOrders , nowAccountInfo . getStoreId ( ) ) ;
}
/ / 条码支付
if ( authCode . contains ( " 19 " ) & & authCode . matches ( " \\ d+ " ) ) {
@ -781,7 +739,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
/ / 获取用户id
Integer userId = Integer . valueOf ( split [ 1 ] ) ;
res = this . updateUserBalanceAndInsetOrder1 ( userId , map , oilAmount , oilOrders , nowAccountInfo . getStoreId ( ) ) ;
/ / res = this . updateUserBalanceAndInsetOrder ( userId , map , oilAmount , oilOrders , nowAccountInfo . getStoreId ( ) ) ;
}
}
return res ;
@ -811,8 +768,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
return res ;
}
@Autowired
private LJUserService userService ;
/ * *
* 修改用户储值卡信息并添加订单信息
@ -884,7 +839,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
order . setOils ( ( String ) oilOrders . get ( i ) . get ( " oilName " ) ) ;
order . setOilGunNum ( oilOrders . get ( i ) . get ( " gunName " ) . toString ( ) ) ;
order . setOilNum ( oilNum ) ;
/ / order . setDiscountAmount ( Double . valueOf ( map . get ( " oilDiscount " ) ) ) ;
order . setPayUser ( userVo1 . getMobile ( ) ) ;
order . setPayType ( map . get ( " payType " ) ) ;
order . setInvoicing ( " 未开票 " ) ;
@ -1086,7 +1040,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
order . setOils ( ( String ) oilOrders . get ( i ) . get ( " oilName " ) ) ;
order . setOilGunNum ( oilOrders . get ( i ) . get ( " gunName " ) . toString ( ) ) ;
order . setOilNum ( oilNum ) ;
/ / order . setDiscountAmount ( Double . valueOf ( map . get ( " oilDiscount " ) ) ) ;
order . setPayUser ( userVo1 . getMobile ( ) ) ;
order . setPayType ( map . get ( " payType " ) ) ;
order . setInvoicing ( " 未开票 " ) ;
@ -1115,7 +1068,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
cashierOrder . setPayTime ( new Date ( ) ) ;
cashierOrder . setOrderNo ( orderNo ) ;
cashierOrder . setOilOrderAmount ( oilAmount ) ;
/ / cashierOrder . setOilDiscountAmount ( Double . valueOf ( map . get ( " oilDiscount " ) ) ) ;
cashierOrder . setTerminal ( map . get ( " terminal " ) ) ;
cashierOrder . setOilOrderId ( oilOrder . getId ( ) ) ;
cashierOrder . setSeekZero ( 0 . 0 ) ;
@ -1125,7 +1077,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
this . insertAllOrderInfo ( orderNo , accountInfo . getStoreId ( ) , oilAmount , oilAmount , 0 . 0 , map . get ( " payType " ) , userId , " PC " , " 1 " , " paid " ) ;
if ( ObjectUtil . isNotEmpty ( map . get ( " staffId " ) ) )
staffCommissionService . countStaffCommission ( Integer . valueOf ( map . get ( " staffId " ) ) , storeId , oilAmount , oilAmount , " 1 " , orderNo ) ;
/ / this . insertCardBalance ( oilAmount , userId , storeId ) ;
res . put ( " success " , " success " ) ;
} else {
res . put ( " error " , " 储值卡余额不足! " ) ;
@ -1158,7 +1109,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
AccountInfo accountInfo = TokenUtil . getNowAccountInfo ( ) ;
Double cardBalance = balance . getCardBalance ( ) ;
JSONArray refuelMoneys = JSONArray . parseArray ( balance . getRefuelMoney ( ) ) ;
CardFuelRecord cardFuelRecord = new CardFuelRecord ( ) ;
cardFuelRecord . setMtUserId ( userId ) ;
@ -1216,7 +1166,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
order . setOils ( ( String ) oilOrders . get ( i ) . get ( " oilName " ) ) ;
order . setOilGunNum ( oilOrders . get ( i ) . get ( " gunName " ) . toString ( ) ) ;
order . setOilNum ( oilNum ) ;
/ / order . setDiscountAmount ( Double . valueOf ( map . get ( " oilDiscount " ) ) ) ;
order . setPayUser ( userVo1 . getMobile ( ) ) ;
order . setPayType ( map . get ( " payType " ) ) ;
order . setInvoicing ( " 未开票 " ) ;
@ -1291,7 +1240,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
order . setOils ( ( String ) oilOrders . get ( i ) . get ( " oilName " ) ) ;
order . setOilGunNum ( oilOrders . get ( i ) . get ( " gunName " ) . toString ( ) ) ;
order . setOilNum ( oilNum ) ;
/ / order . setDiscountAmount ( Double . valueOf ( map . get ( " oilDiscount " ) ) ) ;
order . setPayUser ( userVo1 . getMobile ( ) ) ;
order . setPayType ( map . get ( " payType " ) ) ;
order . setInvoicing ( " 未开票 " ) ;
@ -1320,7 +1268,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
cashierOrder . setPayTime ( new Date ( ) ) ;
cashierOrder . setOrderNo ( orderNo ) ;
cashierOrder . setOilOrderAmount ( oilAmount ) ;
/ / cashierOrder . setOilDiscountAmount ( Double . valueOf ( map . get ( " oilDiscount " ) ) ) ;
cashierOrder . setTerminal ( map . get ( " terminal " ) ) ;
cashierOrder . setOilOrderId ( oilOrder . getId ( ) ) ;
cashierOrder . setSeekZero ( 0 . 0 ) ;
@ -1330,7 +1277,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
this . insertAllOrderInfo ( orderNo , accountInfo . getStoreId ( ) , oilAmount , oilAmount , 0 . 0 , map . get ( " payType " ) , userId , " PC " , " 1 " , " paid " ) ;
if ( ObjectUtil . isNotEmpty ( map . get ( " staffId " ) ) )
staffCommissionService . countStaffCommission ( Integer . valueOf ( map . get ( " staffId " ) ) , storeId , oilAmount , oilAmount , " 1 " , orderNo ) ;
/ / this . insertCardBalance ( oilAmount , userId , storeId ) ;
res . put ( " success " , " success " ) ;
} else {
res . put ( " error " , " 储值卡余额不足! " ) ;
@ -1387,8 +1333,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
}
}
/ / if ( cardBalance < oilAmount ) {
String status = " unpaid " ;
if ( lockupAmount > 0 . 0 ) {
@ -1428,7 +1372,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
this . updateGrowthValue1 ( oilAmount , oilAmount , userId , Integer . valueOf ( oilOrder . getOils ( ) ) , 0 . 0 , storeId , orderNo ) ;
this . insertAllOrderInfo ( orderNo , accountInfo . getStoreId ( ) , oilAmount , oilAmount , 0 . 0 , oilOrders . getPayType ( ) , userId , " POS " , " 1 " , " paid " ) ;
staffCommissionService . countStaffCommission ( accountInfo . getStaffId ( ) , storeId , oilAmount , oilAmount , " 1 " , orderNo ) ;
/ / this . insertCardBalance ( oilAmount , userId , storeId ) ;
res . put ( " success " , " success " ) ;
} else {
oilOrders . setOrderStatus ( " payFail " ) ;
@ -1441,9 +1384,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
return res ;
}
@Autowired
@Lazy
private AllOrderInfoService allOrderInfoService ;
/ * *
* 添加所有订单信息
@ -1485,90 +1425,21 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
* /
private void updateGrowthValue1 ( Double oilAmount , Double oilActualPay , Integer userid , Integer oilId , Double refuelMoney , Integer storeId , String orderNo ) {
OilName oilName = oilNameService . selectOilNameById ( oilId ) ;
/ / 获取成长值增长数值
Integer gasGrowthValue = null ;
Integer dieselGrowthValue = null ;
Integer naturalGrowthValue = null ;
Integer addGrowthVal = null ;
Integer growthAfter = null ;
LJStore store = storeService . selectStoreByStoreId ( storeId ) ;
UserBalance balance = userBalanceService . selectUserBalance ( userid , store . getChainStoreId ( ) ) ;
int growth = balance . getGrowthValue ( ) ;
JSONArray refuelMoneys = JSONArray . parseArray ( balance . getRefuelMoney ( ) ) ;
if ( ObjectUtil . isNotEmpty ( refuelMoneys ) ) {
List < RefuelMoney > list = new ArrayList < > ( ) ;
for ( Object money : refuelMoneys ) {
RefuelMoney refuelMoney1 = new RefuelMoney ( ) ;
refuelMoney1 . setType ( ( ( JSONObject ) money ) . get ( " type " ) . toString ( ) ) ;
refuelMoney1 . setOilType ( ( ( JSONObject ) money ) . get ( " oilType " ) . toString ( ) ) ;
refuelMoney1 . setRefuelMoney ( ( ( JSONObject ) money ) . get ( " refuelMoney " ) . toString ( ) ) ;
Double refuelMoneyLiters = Double . valueOf ( ( ( JSONObject ) money ) . get ( " refuelMoney " ) . toString ( ) ) ;
/ / 根据油品名称查询油品id
/ / OilName oilName = oilNameService . selectOilNameByOilName ( ( ( JSONObject ) money ) . get ( " oilType " ) . toString ( ) ) ;
if ( ( ( JSONObject ) money ) . get ( " oilType " ) . toString ( ) . equals ( oilId . toString ( ) ) ) {
refuelMoney1 . setRefuelMoney ( String . valueOf ( refuelMoney ) ) ;
if ( oilName . getOilType ( ) . equals ( " 汽油 " ) ) {
userBalanceService . growthValue ( userid , store . getChainStoreId ( ) , storeId , " 1 " , oilAmount , " 油品订单消费 " , orderNo ) ;
}
list . add ( refuelMoney1 ) ;
if ( oilName . getOilType ( ) . equals ( " 柴油 " ) ) {
userBalanceService . growthValue ( userid , store . getChainStoreId ( ) , storeId , " 2 " , oilAmount , " 油品订单消费 " , orderNo ) ;
}
balance . setRefuelMoney ( JSONObject . toJSONString ( list ) ) ;
if ( oilName . getOilType ( ) . equals ( " 天然气 " ) ) {
userBalanceService . growthValue ( userid , store . getChainStoreId ( ) , storeId , " 3 " , oilAmount , " 油品订单消费 " , orderNo ) ;
}
/ / 查询会员等级列表信息
Page page = new Page ( 1 , 20 ) ;
LJUserGrade ljUserGrade1 = new LJUserGrade ( ) ;
List < LJUserGrade > records = userGradeService . selectUserGradeAll ( storeId ) ;
ChainStoreConfig chainStoreConfig = chainStoreConfigService . selectChainStoreByStoreId ( storeId ) ;
if ( oilName . getOilType ( ) . equals ( " 汽油 " ) & & ObjectUtil . isNotEmpty ( chainStoreConfig ) ) {
gasGrowthValue = Integer . valueOf ( chainStoreConfig . getGasGrowthValue ( ) ) ;
Integer addVal = ( int ) ( gasGrowthValue * oilAmount ) ;
addGrowthVal = addVal ;
growthAfter = growth + addVal ;
/ / 如果会员成长值达到会员等级成长值 , 则修改会员的会员等级信息
for ( int i = 1 ; i < records . size ( ) ; i + + ) {
if ( growthAfter < records . get ( i ) . getGrowthValue ( ) ) {
balance . setGradeId ( records . get ( i - 1 ) . getId ( ) ) ;
break ;
}
}
balance . setGrowthValue ( growthAfter ) ;
} else if ( oilName . getOilType ( ) . equals ( " 柴油 " ) & & ObjectUtil . isNotEmpty ( chainStoreConfig ) ) {
dieselGrowthValue = Integer . valueOf ( chainStoreConfig . getDieselGrowthValue ( ) ) ;
Integer addVal = ( int ) ( dieselGrowthValue * oilAmount ) ;
addGrowthVal = addVal ;
growthAfter = growth + addVal ;
/ / 如果会员成长值达到会员等级成长值 , 则修改会员的会员等级信息
for ( int i = 0 ; i < records . size ( ) ; i + + ) {
if ( growthAfter < records . get ( i ) . getGrowthValue ( ) ) {
balance . setGradeId ( records . get ( i - 1 ) . getId ( ) ) ;
break ;
}
}
balance . setGrowthValue ( growthAfter ) ;
} else if ( oilName . getOilType ( ) . equals ( " 天然气 " ) & & ObjectUtil . isNotEmpty ( chainStoreConfig ) ) {
naturalGrowthValue = Integer . valueOf ( chainStoreConfig . getNaturalGrowthValue ( ) ) ;
Integer addVal = ( int ) ( naturalGrowthValue * oilAmount ) ;
addGrowthVal = addVal ;
growthAfter = growth + addVal ;
/ / 如果会员成长值达到会员等级成长值 , 则修改会员的会员等级信息
for ( int i = 0 ; i < records . size ( ) ; i + + ) {
if ( growthAfter < records . get ( i ) . getGrowthValue ( ) ) {
balance . setGradeId ( records . get ( i - 1 ) . getId ( ) ) ;
break ;
}
}
balance . setGrowthValue ( growthAfter ) ;
} else {
}
/ / balance . setCardBalance ( balance . getCardBalance ( ) - oilActualPay ) ;
userBalanceService . updateUserBalance ( balance ) ;
this . insertGrowthValueChange ( userid , storeId , addGrowthVal , growthAfter , orderNo ) ;
this . insertCardBalance ( oilActualPay , userid , storeId , orderNo ) ;
}
@Override
public OilOrder addOilOrder ( OilOrder oilOrder ) {
/ / AccountInfo nowAccountInfo = TokenUtil . getNowAccountInfo ( ) ;
AccountInfo nowAccountInfo = TokenUtil . getNowAccountInfo1 ( ) ;
/ / 根据日期生成订单信息
SimpleDateFormat dateFormat = new SimpleDateFormat ( " yyyyMMddHHmmss " ) ;
@ -1631,8 +1502,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
String type = map . get ( " type " ) ;
/ / 优惠券记录id
String recordId = map . get ( " recordId " ) ;
String balanceAmountSale = map . get ( " balanceAmountSale " ) ;
String oilCardAmountSale = map . get ( " oilCardAmountSale " ) ;
Integer tankId = Integer . valueOf ( map . get ( " tankId " ) ) ;
/ / 是否登录
String ifLogin = map . get ( " ifLogin " ) ;
@ -1668,9 +1537,7 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
Integer userId = oilOrder . getUserId ( ) ;
if ( ObjectUtil . isEmpty ( storedQuantity ) | | storedQuantity - oilOrder . getOilNum ( ) < = 0 ) {
/ / throw new RuntimeException ( " 油罐容量不足! " ) ;
applet . put ( " error " , " 油罐容量不足! " ) ;
/ / this . insertAllOrderInfo ( orderNo , oilOrder . getStoreId ( ) , oilOrder . getOrderAmount ( ) , oilOrder . getPayType ( ) , userId , oilOrder . getPayType ( ) , " 1 " , " payFail " ) ;
result = true ;
}
if ( isUseChildCard . equals ( " true " ) ) {
@ -1707,7 +1574,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
/ / 未使用囤油卡
/ / 校验支付金额和优惠金额数据是否相同
Double realAmount = Double . valueOf ( map . get ( " payAmount " ) ) + Double . valueOf ( balanceAmount ) + Double . valueOf ( map . get ( " discountAmount " ) ) ;
/ / if ( Double . compare ( realAmount , oilOrder . getOrderAmount ( ) ) ! = 0 ) {
if ( - 0 . 03 > = ( realAmount - oilOrder . getOrderAmount ( ) ) & & ( realAmount - oilOrder . getOrderAmount ( ) ) > = 0 . 03 ) {
applet . put ( " error " , " 消费总金额不对! " ) ;
this . insertAllOrderInfo ( orderNo , oilOrder . getStoreId ( ) , oilOrder . getOrderAmount ( ) , 0 . 0 , oilOrder . getDiscountAmount ( ) , oilOrder . getPayType ( ) , userId , oilOrder . getPayType ( ) , " 1 " , " payFail " ) ;
@ -1721,19 +1587,8 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
oilOrder . setTankId ( tankId ) ;
/ / 判断是否使用储值卡消费
/ / if ( ! balanceAmount . equals ( " 0 " ) ) {
/ / this . insertCardBalance ( Double . valueOf ( balanceAmount ) , userId , oilOrder . getStoreId ( ) , orderNo ) ;
/ / }
/ / 判断是否需要调起支付
if ( ! map . get ( " payAmount " ) . equals ( " 0 " ) & & ! map . get ( " payAmount " ) . equals ( " 0.0 " ) & & ! map . get ( " payAmount " ) . equals ( " 0.00 " ) ) {
/ / 调用支付接口
/ / 判断是否开启支付规则
/ / List < MerchantConfig > list = merchantConfigService . selectMeChByIsOpen ( ) ;
/ / if ( list . size ( ) > 0 ) {
/ / oilConfigService . oilRule ( ) ;
/ / }
this . insertCardOrder ( oilOrder . getUserId ( ) , oilOrder . getStoreId ( ) , orderNo , oilOrder . getOrderAmount ( ) , " unpaid " , Double . valueOf ( balanceAmount ) , payAmount ) ;
/ / 处理支付需要的数据
@ -1769,7 +1624,7 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
e . printStackTrace ( ) ;
}
} else {
this . updateGrowthValue ( oilOrder . getOrderAmount ( ) , payAmount , userId , Integer . valueOf ( oilOrder . getOils ( ) ) , oil CardAmount, oil Order. getStoreId ( ) , orderNo ) ;
this . updateGrowthValue ( oilOrder . getOrderAmount ( ) , payAmount , userId , Integer . valueOf ( oilOrder . getOils ( ) ) , oil Order. getStoreId ( ) , orderNo ) ;
this . addOilTracks ( oilOrder , oilOrder . getStoreId ( ) ) ;
this . insertCardOrder ( oilOrder . getUserId ( ) , oilOrder . getStoreId ( ) , orderNo , oilOrder . getOrderAmount ( ) , " paid " , Double . valueOf ( balanceAmount ) , payAmount ) ;
this . insertAllOrderInfo ( orderNo , oilOrder . getStoreId ( ) , oilOrder . getOrderAmount ( ) , payAmount , Double . valueOf ( discountAmount ) , oilOrder . getPayType ( ) , oilOrder . getUserId ( ) , " applet " , " 1 " , " paid " ) ;
@ -1787,8 +1642,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
/ / 修改订单的优惠金额和支付金额
oilOrder . setDiscountAmount ( Double . valueOf ( discountAmount ) ) ;
oilOrder . setPayAmount ( payAmount ) ;
/ / oilOrder . setBalanceAmount ( Double . valueOf ( balanceAmountSale ) ) ;
/ / oilOrder . setOilCardAmount ( Double . valueOf ( oilCardAmountSale ) ) ;
if ( StringUtils . isNotEmpty ( activeId ) ) {
oilOrder . setActiveId ( Integer . valueOf ( activeId ) ) ;
}
@ -1801,14 +1654,12 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
this . updateOilOrder ( oilOrder ) ;
if ( oilOrder . getOrderStatus ( ) . equals ( " paid " ) ) {
if ( ObjectUtil . isNotEmpty ( oilOrder . getUserId ( ) ) ) integralSettingsService . refuelPoints ( oilOrder ) ;
this . updateCardAndActiveById ( oilOrder . getStoreId ( ) , oilOrder . getUserId ( ) , oilOrder . get Active Id( ) , oilOrder . getCouponId ( ) , oilOrder . getActiveType ( ) , oilOrder . getOrderAmount ( ) , oilOrder . getPayAmount ( ) , Integer . valueOf ( oilOrder . getOils ( ) ) ) ;
this . updateCardAndActiveById ( oilOrder . getStoreId ( ) , oilOrder . getUserId ( ) , oilOrder . get Id( ) ) ;
}
return applet ;
}
@Autowired
CardValueChildOrderService cardValueChildOrderService ;
/ * *
* 添加储值卡子卡订单信息
@ -1836,15 +1687,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
cardValueChildOrderService . insertCardValueChildOrder ( cardValueChildOrder ) ;
}
@Autowired
private CardValudChildrensService cardValudChildrensService ;
@Resource
private TagUtils tagUtils ;
@Resource
private OilTagService oilTagService ;
@Resource
private PrinterService printerService ;
@Override
public int updateOrderStatus ( String orderNo , String status ) throws Exception {
@ -1855,7 +1697,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
LJUser user = null ;
if ( ObjectUtil . isNotEmpty ( userId ) ) user = userService . queryUserByUserId ( userId ) ;
if ( ObjectUtil . isNotEmpty ( oilOrder ) ) {
/ / oilOrder . setPayAmount ( oilOrder . getOrderAmount ( ) - oilOrder . getDiscountAmount ( ) ) ;
oilOrder . setOrderStatus ( status ) ;
if ( status . equals ( " paid " ) ) {
HashMap < String , Object > hashMap = new HashMap < > ( ) ;
@ -1905,7 +1746,7 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
} catch ( Exception e ) {
e . printStackTrace ( ) ;
}
/ / tagUtils
if ( ObjectUtil . isNotEmpty ( oilOrder . getUserId ( ) ) ) integralSettingsService . refuelPoints ( oilOrder ) ;
oilOrder . setPayTime ( new Date ( ) ) ;
CardValueChildOrder cardValueChildOrder = cardValueChildOrderService . selectCardValueChildOrderByOrderNo ( orderNo ) ;
@ -1921,14 +1762,13 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
}
}
if ( ObjectUtil . isNotEmpty ( userId ) )
this . updateGrowthValue ( oilOrder . getOrderAmount ( ) , oilOrder . getPayAmount ( ) , userId , Integer . valueOf ( oilOrder . getOils ( ) ) , null , oilOrder . getStoreId ( ) , orderNo ) ;
this . updateGrowthValue ( oilOrder . getOrderAmount ( ) , oilOrder . getPayAmount ( ) , userId , Integer . valueOf ( oilOrder . getOils ( ) ) , oilOrder . getStoreId ( ) , orderNo ) ;
this . addOilTracks ( oilOrder , oilOrder . getStoreId ( ) ) ;
this . updateCardAndActiveById ( oilOrder . getStoreId ( ) , oilOrder . getUserId ( ) , oilOrder . get Active Id( ) , oilOrder . getCouponId ( ) , oilOrder . getActiveType ( ) , oilOrder . getOrderAmount ( ) , oilOrder . getPayAmount ( ) , Integer . valueOf ( oilOrder . getOils ( ) ) ) ;
this . updateCardAndActiveById ( oilOrder . getStoreId ( ) , oilOrder . getUserId ( ) , oilOrder . get Id( ) ) ;
if ( ObjectUtil . isNotEmpty ( userId ) )
this . insertCardBalance ( oilOrder . getOrderAmount ( ) - oilOrder . getDiscountAmount ( ) - oilOrder . getPayAmount ( ) , userId , oilOrder . getStoreId ( ) , orderNo ) ;
if ( ObjectUtil . isNotEmpty ( oilOrder . getStaffId ( ) ) ) {
staffCommissionService . countStaffCommission ( oilOrder . getStaffId ( ) , oilOrder . getStoreId ( ) , oilOrder . getOrderAmount ( ) , oilOrder . getPayAmount ( ) , " 1 " , orderNo ) ;
/ / commissionRecordService . addRecord ( oilOrder . getStoreId ( ) , " 1 " , oilOrder . getStaffId ( ) , oilOrder . getOrderAmount ( ) , oilOrder . getPayAmount ( ) , " 0 " , " 油品出售 " , orderNo ) ;
}
}
row = baseMapper . updateById ( oilOrder ) ;
@ -1936,10 +1776,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
return row ;
}
@Autowired
private OilTankService oilTankService ;
@Autowired
private OilTrackingService oilTrackingService ;
/ * *
* 添加油品库存跟踪信息
@ -1948,7 +1784,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
* /
@Override
public void addOilTrack ( JSONObject oilOrder , Integer storeId ) {
/ / OilTank oilTank = oilTankService . queryById ( Integer . valueOf ( oilOrder . get ( " tankId " ) . toString ( ) ) ) ;
/ / 添加库存跟踪信息
OilTracking oilTracking = new OilTracking ( ) ;
oilTracking . setDocument ( " 油品出售 " ) ;
@ -1965,9 +1800,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
oilTrackingService . insert ( oilTracking ) ;
/ / 修改油罐容量
/ / Double storedQuantity = oilTank . getStoredQuantity ( ) ;
/ / oilTank . setStoredQuantity ( storedQuantity - Double . parseDouble ( oilOrder . get ( " liters " ) . toString ( ) ) ) ;
/ / oilTankService . update ( oilTank ) ;
oilTankService . subtractStoredQuantityByLock ( Integer . valueOf ( oilOrder . get ( " tankId " ) . toString ( ) ) , oilNum ) ;
}
@ -2007,100 +1839,27 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
}
@Autowired
private SysConfigService sysConfigService ;
@Autowired
private LJUserGradeService userGradeService ;
@Autowired
private ILJStoreService storeService ;
/ * *
* 修改用户成长值信息
*
* @param oilActualPay 实付金额
* @param userid 用户id
* @param oilId 油号
* @param refuelMoney 消费后的加油金信息
* @param storeId 店铺id
* /
private void updateGrowthValue ( Double oilAmount , Double oilActualPay , Integer userid , Integer oilId , String refuelMoney , Integer storeId , String orderNo ) {
private void updateGrowthValue ( Double oilAmount , Double oilActualPay , Integer userid , Integer oilId , Integer storeId , String orderNo ) {
if ( ObjectUtil . isNotEmpty ( oilId ) ) {
OilName oilName = oilNameService . selectOilNameById ( oilId ) ;
/ / 获取成长值增长数值
Integer gasGrowthValue = null ;
Integer dieselGrowthValue = null ;
Integer naturalGrowthValue = null ;
Integer addGrowthVal = null ;
Integer growthAfter = null ;
LJStore store = storeService . selectStoreByStoreId ( storeId ) ;
UserBalance balance = userBalanceService . selectUserBalance ( userid , store . getChainStoreId ( ) ) ;
int growth = balance . getGrowthValue ( ) ;
if ( ObjectUtil . isNotEmpty ( refuelMoney ) & & ! refuelMoney . equals ( " null " ) ) {
String refuelMoney1 = balance . getRefuelMoney ( ) ;
JSONArray objects = JSONArray . parseArray ( refuelMoney ) ;
JSONArray objects1 = JSONArray . parseArray ( refuelMoney1 ) ;
if ( ObjectUtils . isNotEmpty ( objects1 ) ) {
for ( int i = 0 ; i < objects1 . size ( ) ; i + + ) {
if ( ! ( ( JSONObject ) objects1 . get ( i ) ) . get ( " refuelMoney " ) . toString ( ) . equals ( ( ( JSONObject ) objects . get ( i ) ) . get ( " refuelMoney " ) . toString ( ) ) ) {
Double oilBalance = Double . valueOf ( ( ( JSONObject ) objects1 . get ( i ) ) . get ( " refuelMoney " ) . toString ( ) ) - Double . valueOf ( ( ( JSONObject ) objects . get ( i ) ) . get ( " refuelMoney " ) . toString ( ) ) ;
Double afterOilBalance = Double . valueOf ( ( ( JSONObject ) objects . get ( i ) ) . get ( " refuelMoney " ) . toString ( ) ) ;
this . insertOilBalance ( userid , storeId , oilName . getId ( ) . toString ( ) , oilName . getOilType ( ) , oilBalance , afterOilBalance , orderNo ) ;
if ( oilName . getOilType ( ) . equals ( " 汽油 " ) ) {
userBalanceService . growthValue ( userid , store . getChainStoreId ( ) , storeId , " 1 " , oilAmount , " 油品订单消费 " , orderNo ) ;
}
if ( oilName . getOilType ( ) . equals ( " 柴油 " ) ) {
userBalanceService . growthValue ( userid , store . getChainStoreId ( ) , storeId , " 2 " , oilAmount , " 油品订单消费 " , orderNo ) ;
}
if ( oilName . getOilType ( ) . equals ( " 天然气 " ) ) {
userBalanceService . growthValue ( userid , store . getChainStoreId ( ) , storeId , " 3 " , oilAmount , " 油品订单消费 " , orderNo ) ;
}
balance . setRefuelMoney ( refuelMoney ) ;
}
/ / 查询会员等级列表信息
Page page = new Page ( 1 , 20 ) ;
LJUserGrade ljUserGrade1 = new LJUserGrade ( ) ;
List < LJUserGrade > records = userGradeService . selectUserGradeAll ( storeId ) ;
ChainStoreConfig chainStoreConfig = chainStoreConfigService . selectChainStoreByStoreId ( storeId ) ;
if ( oilName . getOilType ( ) . equals ( " 汽油 " ) & & ObjectUtil . isNotEmpty ( chainStoreConfig ) ) {
gasGrowthValue = Integer . valueOf ( chainStoreConfig . getGasGrowthValue ( ) ) ;
Integer addVal = ( int ) ( gasGrowthValue * oilAmount ) ;
addGrowthVal = addVal ;
growthAfter = growth + addVal ;
/ / 如果会员成长值达到会员等级成长值 , 则修改会员的会员等级信息
for ( int i = 1 ; i < records . size ( ) ; i + + ) {
if ( growthAfter < records . get ( i ) . getGrowthValue ( ) ) {
balance . setGradeId ( records . get ( i - 1 ) . getId ( ) ) ;
break ;
}
}
balance . setGrowthValue ( growthAfter ) ;
} else if ( oilName . getOilType ( ) . equals ( " 柴油 " ) & & ObjectUtil . isNotEmpty ( chainStoreConfig ) ) {
dieselGrowthValue = Integer . valueOf ( chainStoreConfig . getDieselGrowthValue ( ) ) ;
Integer addVal = ( int ) ( dieselGrowthValue * oilAmount ) ;
addGrowthVal = addVal ;
growthAfter = growth + addVal ;
/ / 如果会员成长值达到会员等级成长值 , 则修改会员的会员等级信息
for ( int i = 0 ; i < records . size ( ) ; i + + ) {
if ( growthAfter < records . get ( i ) . getGrowthValue ( ) ) {
balance . setGradeId ( records . get ( i - 1 ) . getId ( ) ) ;
break ;
}
}
balance . setGrowthValue ( growthAfter ) ;
} else if ( oilName . getOilType ( ) . equals ( " 天然气 " ) & & ObjectUtil . isNotEmpty ( chainStoreConfig ) ) {
naturalGrowthValue = Integer . valueOf ( chainStoreConfig . getNaturalGrowthValue ( ) ) ;
Integer addVal = ( int ) ( naturalGrowthValue * oilAmount ) ;
addGrowthVal = addVal ;
growthAfter = growth + addVal ;
/ / 如果会员成长值达到会员等级成长值 , 则修改会员的会员等级信息
for ( int i = 0 ; i < records . size ( ) ; i + + ) {
if ( growthAfter < records . get ( i ) . getGrowthValue ( ) ) {
balance . setGradeId ( records . get ( i - 1 ) . getId ( ) ) ;
break ;
}
}
balance . setGrowthValue ( growthAfter ) ;
} else {
}
/ / 修改用户成长值
userBalanceService . updateUserBalance ( balance ) ;
this . insertGrowthValueChange ( userid , storeId , addGrowthVal , growthAfter , orderNo ) ;
}
}
@ -2116,13 +1875,11 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
/ / 根据用户id查询用户余额信息
LJStore store = storeService . selectStoreByStoreId ( storeId ) ;
UserBalance balance = userBalanceService . selectUserBalance ( userId , store . getChainStoreId ( ) ) ;
boolean result = false ;
if ( ObjectUtil . isNotEmpty ( balance ) ) {
/ / 修改余额信息
Double beforeBalance = balance . getCardBalance ( ) ;
Double afterBalance = beforeBalance - amount ;
if ( ( beforeBalance - amount ) < 0 . 0 ) {
result = true ;
return false ;
}
cardBalanceChange . setAfterTheChange ( afterBalance ) ;
@ -2188,16 +1945,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
}
}
@Resource
OilOrderMapper oilOrderMapper ;
@Resource
LJOrderMapper ljOrderMapper ;
@Resource
CardValueRecordMapper cardValueRecordMapper ;
@Resource
CardFuelRecordMapper cardFuelRecordMapper ;
@Resource
LJStaffMapper ljStaffMapper ;
@Override
public Map < String , Double > turnoverStatistics ( ) {
@ -2212,7 +1959,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
/ / 屯油卡流水
Map < String , String > fuelStreamMap = cardFuelRecordMapper . fuelStream ( storeId ) ;
/ / 计算总流水
/ / sumStream
/ / 进行Map的合并
Map < String , Double > mergedMap = mergeMaps (
oilStreamMap ,
@ -2226,7 +1972,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
/ / 数据组装
return stringDoubleMap ;
/ / return mergedMap ;
}
/ / 员工统计
@ -2268,16 +2013,12 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
/ / 油品销售额
@Override
public List < Map < String , String > > oilSales ( ) {
AccountInfo nowAccountInfo = TokenUtil . getNowAccountInfo ( ) ;
Integer storeId = nowAccountInfo . getStoreId ( ) ;
List < Map < String , String > > maps = oilOrderMapper . oilSales ( storeId ) ;
return maps ;
}
@Resource
OilNumberMapper oilNumberMapper ;
/ / 各油品销售额
@Override
@ -2291,7 +2032,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
/ / 获取所有油品名称
List < OilNumber > oilNames = oilNumberMapper . getOilName ( storeId ) ;
/ / 构建结果列表
List < List < Object > > resultList = new ArrayList < > ( ) ;
@ -2357,8 +2097,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
/ / 计算环比增长率
double growthRate = ( res - last ) / last * 100 ;
/ / double growthRate = ( ( res - last ) / Math . abs ( last ) ) * 100 . 0 ;
/ / 使用DecimalFormat将结果格式化为两位小数
DecimalFormat decimalFormat = new DecimalFormat ( " #.## " ) ;
@ -2483,18 +2221,13 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
if ( ObjectUtil . isNotEmpty ( oilOrderVo . getAuthCode ( ) ) & & oilOrderVo . getPayAmount ( ) > 0 ) {
try {
fyPayService . posPay ( receiveParameterPos ) ;
/ / if ( stringObjectMap . get ( " code " ) . equals ( " success " ) ) {
/ / row = 1 ;
/ / } else {
/ / row = 2 ;
/ / }
} catch ( Exception e ) {
e . printStackTrace ( ) ;
}
} else {
staffCommissionService . countStaffCommission ( nowAccountInfo . getStaffId ( ) , nowAccountInfo . getStoreId ( ) , oilOrderVo . getOrderAmount ( ) , oilOrderVo . getPayAmount ( ) , " 1 " , orderNo ) ;
this . addOilTracks ( oilOrderVo , nowAccountInfo . getStoreId ( ) ) ;
this . updateCardAndActiveById ( nowAccountInfo . getStoreId ( ) , oilOrderVo . getUserId ( ) , oilOrderVo . get Active Id( ) , oilOrderVo . getCouponId ( ) , oilOrderVo . getActiveType ( ) , oilOrderVo . getOrderAmount ( ) , oilOrderVo . getPayAmount ( ) , Integer . valueOf ( oilOrderVo . getOils ( ) ) ) ;
this . updateCardAndActiveById ( nowAccountInfo . getStoreId ( ) , oilOrderVo . getUserId ( ) , oilOrderVo . get Id( ) ) ;
this . insertAllOrderInfo ( orderNo , nowAccountInfo . getStoreId ( ) , oilOrderVo . getOrderAmount ( ) , oilOrderVo . getPayAmount ( ) , oilOrderVo . getDiscountAmount ( ) , oilOrderVo . getPayType ( ) , oilOrderVo . getUserId ( ) , " POS " , " 1 " , " paid " ) ;
this . insertFavorable ( oilOrderVo , oilOrderVo . getOilCardAmount1 ( ) ) ;
if ( ObjectUtil . isNotEmpty ( oilOrderVo . getUserId ( ) ) ) integralSettingsService . refuelPoints ( oilOrderVo ) ;
@ -2509,7 +2242,7 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
row = 1 ;
}
if ( row = = 1 & & ObjectUtil . isNotEmpty ( oilOrderVo . getUserId ( ) ) ) {
this . updateGrowthValue ( oilOrderVo . getOrderAmount ( ) , oilOrderVo . getPayAmount ( ) , oilOrderVo . getUserId ( ) , Integer . valueOf ( oilOrderVo . getOils ( ) ) , null , nowAccountInfo . getStoreId ( ) , orderNo ) ;
this . updateGrowthValue ( oilOrderVo . getOrderAmount ( ) , oilOrderVo . getPayAmount ( ) , oilOrderVo . getUserId ( ) , Integer . valueOf ( oilOrderVo . getOils ( ) ) , nowAccountInfo . getStoreId ( ) , orderNo ) ;
}
res . put ( " orderNo " , orderNo ) ;
res . put ( " code " , String . valueOf ( row ) ) ;
@ -2542,7 +2275,6 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
}
ReceiveParameterPos receiveParameterPos = new ReceiveParameterPos ( ) ;
/ / receiveParameterPos . setPayType ( " WECHAT " ) ;
receiveParameterPos . setPayType ( oilOrderVo . getPayType ( ) ) ;
receiveParameterPos . setType ( " 1 " ) ;
receiveParameterPos . setContent ( " 油品订单 " ) ;