From 8edd6408c1c8dc77b5d9b298faf9c5408866220b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=AE=B8=E5=85=81=E6=9E=9E?= <3422692813@qq.com> Date: Thu, 10 Oct 2024 16:36:42 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E6=9B=B4=E6=96=B010.10?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/fuint/api/fuyou/service/impl/FyPayServiceImpl.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/fuintBackend/fuint-application/src/main/java/com/fuint/api/fuyou/service/impl/FyPayServiceImpl.java b/fuintBackend/fuint-application/src/main/java/com/fuint/api/fuyou/service/impl/FyPayServiceImpl.java index 5a3809924..f59903c9a 100644 --- a/fuintBackend/fuint-application/src/main/java/com/fuint/api/fuyou/service/impl/FyPayServiceImpl.java +++ b/fuintBackend/fuint-application/src/main/java/com/fuint/api/fuyou/service/impl/FyPayServiceImpl.java @@ -189,8 +189,11 @@ public class FyPayServiceImpl implements FyPayService { Map reqMap = Utils.xmlStr2Map(rspXml); String str = reqMap.get("sign"); if (Utils.verifySign(reqMap, str)) { + //油品订单 OilOrder oilOrder = oilOrderService.selectOilOrderByOrderNo(orderNo); + //商品订单 LJOrder goodsOrder = goodsOrderService.selectGoodsOrder(orderNo); + //收银台订单 CashierOrder cashierOrder = cashierOrderService.selectCashierOrder(orderNo); String transactionType = null; String oilGunId = null; @@ -208,6 +211,7 @@ public class FyPayServiceImpl implements FyPayService { if ("IOS".equals(type)) { transactionType = "3"; } + //查询商户配置 MerchantConfig merchantConfig = merchantConfigService.selectMeChByIdIsUse(storeId1,transactionType,oilGunId); List returnRecords = returnRecordService.selectReturnRecordByOrderNo(orderNo); Date date = new Date(); From 45068ab88f0bb11f325c97cb29ff73aedd9ff1e8 Mon Sep 17 00:00:00 2001 From: cun-nan <19819293608@163.com> Date: Thu, 10 Oct 2024 16:50:18 +0800 Subject: [PATCH 2/2] 10.10 --- .../fuint/api/fuyou/service/FyPayService.java | 6 + .../fuyou/service/impl/FyPayServiceImpl.java | 184 ++--- .../fuint/business/order/entity/LJOrder.java | 6 +- .../business/order/entity/OrderGoods.java | 2 +- .../order/service/OilOrderService.java | 9 +- .../service/impl/LJOrderServiceImpl.java | 5 +- .../service/impl/OilOrderServiceImpl.java | 750 ++++++------------ .../pay/controller/PayCenterController.java | 9 +- 8 files changed, 351 insertions(+), 620 deletions(-) diff --git a/fuintBackend/fuint-application/src/main/java/com/fuint/api/fuyou/service/FyPayService.java b/fuintBackend/fuint-application/src/main/java/com/fuint/api/fuyou/service/FyPayService.java index 3ae68a5ae..80506fcb1 100644 --- a/fuintBackend/fuint-application/src/main/java/com/fuint/api/fuyou/service/FyPayService.java +++ b/fuintBackend/fuint-application/src/main/java/com/fuint/api/fuyou/service/FyPayService.java @@ -48,5 +48,11 @@ public interface FyPayService { */ public Map queryOrderPos(ReceiveParameterPos receiveParameterPos,String insCd,String mchntCd) throws Exception; + /** + * 主扫 + * @param receiveParameterPos + * @return + * @throws Exception + */ Map mainScan(ReceiveParameterPos receiveParameterPos) throws Exception; } diff --git a/fuintBackend/fuint-application/src/main/java/com/fuint/api/fuyou/service/impl/FyPayServiceImpl.java b/fuintBackend/fuint-application/src/main/java/com/fuint/api/fuyou/service/impl/FyPayServiceImpl.java index f59903c9a..9db1dfcc7 100644 --- a/fuintBackend/fuint-application/src/main/java/com/fuint/api/fuyou/service/impl/FyPayServiceImpl.java +++ b/fuintBackend/fuint-application/src/main/java/com/fuint/api/fuyou/service/impl/FyPayServiceImpl.java @@ -61,13 +61,9 @@ public class FyPayServiceImpl implements FyPayService { @Resource private IntegralSettingsService integralSettingsService; - @Resource - private UserBalanceService userBalanceService; @Resource private CardValueOrdersService cardValueOrdersService; - @Resource - private CardFuleOrdersService fuleOrdersService; /** * 条码支付 @@ -97,10 +93,9 @@ public class FyPayServiceImpl implements FyPayService { map.put("mchnt_cd", mchntCd); map.put("goods_des", goodsDes); - -// 请求报文 + // 请求报文 String reqBody = Message.requestMsg(map); -// 响应报文 + // 响应报文 String rspXml = Message.responseMsg(reqBody, Const.fuiou_31_url); //响应报文验签 @@ -180,9 +175,9 @@ public class FyPayServiceImpl implements FyPayService { receiveParameter.setStoreId(storeId1); receiveParameter.setPayType(payType); - // 请求报文 + // 请求报文 String reqBody = Message.requestMsg(map); - // 响应报文 + // 响应报文 String rspXml = Message.responseMsg(reqBody, Const.fuiou_34_url); //响应报文验签 @@ -197,12 +192,12 @@ public class FyPayServiceImpl implements FyPayService { CashierOrder cashierOrder = cashierOrderService.selectCashierOrder(orderNo); String transactionType = null; String oilGunId = null; - if (ObjectUtil.isNotEmpty(oilOrder) && ObjectUtil.isNotEmpty(goodsOrder)){ + if (ObjectUtil.isNotEmpty(oilOrder) && ObjectUtil.isNotEmpty(goodsOrder)) { transactionType = "5"; - }else if (ObjectUtil.isNotEmpty(oilOrder)) { + } else if (ObjectUtil.isNotEmpty(oilOrder)) { transactionType = "4"; oilGunId = oilOrder.getOilGunNum(); - }else if (ObjectUtil.isNotEmpty(goodsOrder)) { + } else if (ObjectUtil.isNotEmpty(goodsOrder)) { transactionType = "2"; } if ("CVR".equals(type) || "CFR".equals(type)) { @@ -212,28 +207,22 @@ public class FyPayServiceImpl implements FyPayService { transactionType = "3"; } //查询商户配置 - MerchantConfig merchantConfig = merchantConfigService.selectMeChByIdIsUse(storeId1,transactionType,oilGunId); + MerchantConfig merchantConfig = merchantConfigService.selectMeChByIdIsUse(storeId1, transactionType, oilGunId); List returnRecords = returnRecordService.selectReturnRecordByOrderNo(orderNo); Date date = new Date(); if (reqMap.get("trans_stat").equals("SUCCESS")) { payStatus = "paid"; if (!ObjectUtil.isEmpty(oilOrder)) { -// 油品订单 + // 油品订单 oilOrder.setOrderStatus("paid"); oilOrder.setPayTime(date); - oilOrderService.updateCardAndActiveById(oilOrder.getStoreId(), oilOrder.getUserId(), oilOrder.getActiveId(), oilOrder.getCouponId(), oilOrder.getActiveType(), oilOrder.getOrderAmount(), oilOrder.getPayAmount(), Integer.valueOf(oilOrder.getOils())); + oilOrderService.updateCardAndActiveById(oilOrder.getStoreId(), oilOrder.getUserId(), oilOrder.getId()); oilOrderService.insertFavorable(oilOrder, Double.valueOf(map1.get("oilCardAmount"))); if (ObjectUtil.isNotEmpty(oilOrder.getStaffId())) staffCommissionService.countStaffCommission(oilOrder.getStaffId(), oilOrder.getStoreId(), oilOrder.getOrderAmount(), oilOrder.getPayAmount(), "1", orderNo); -// 修改油罐容量 - List jsonObjects = JSONArray.parseArray(map1.get("oilOrder"), JSONObject.class); - if (jsonObjects.size() <= 1) { - - Integer tankId = Integer.valueOf(jsonObjects.get(0).get("tankId").toString()); - oilOrder.setTankId(tankId); - oilOrderService.addOilTracks(oilOrder, oilOrder.getStoreId()); - } + // 修改油罐容量 + oilOrderService.addOilTracks(oilOrder, oilOrder.getStoreId()); if (ObjectUtil.isNotEmpty(oilOrder.getUserId())) integralSettingsService.refuelPoints(oilOrder); //修改优惠券使用状态 @@ -246,7 +235,7 @@ public class FyPayServiceImpl implements FyPayService { } } if (!ObjectUtil.isEmpty(goodsOrder)) { -// 商品订单 + // 商品订单 goodsOrder.setStatus("paid"); goodsOrder.setPayTime(date); goodsOrderService.insertFavorable(goodsOrder); @@ -268,13 +257,13 @@ public class FyPayServiceImpl implements FyPayService { } } if (!ObjectUtil.isEmpty(cashierOrder)) { -// 收银台订单 + // 收银台订单 cashierOrder.setStatus("paid"); cashierOrder.setPayTime(date); } if (!ArrayUtil.isEmpty(returnRecords)) { for (ReturnRecord returnRecord : returnRecords) { -// 挂账归还信息 + // 挂账归还信息 returnRecord.setReturnType("1"); returnRecord.setPayStatus("paid"); returnRecord.setPayTime(date); @@ -291,16 +280,16 @@ public class FyPayServiceImpl implements FyPayService { if (ObjectUtil.isNotEmpty(goodsOrder) && ObjectUtil.isNotEmpty(goodsOrder.getUserId())) { receiveParameter.setUserId(goodsOrder.getUserId()); } - } if ("CFR".equals(type)) { //囤油卡订单 payStates = "paid"; } - if ("IOS".equals(type)) { // 积分商城 + if ("IOS".equals(type)) { + // 积分商城 payStates = "paid"; } -// 修改商户账号余额信息 + // 修改商户账号余额信息 Double amount = merchantConfig.getAmount(); merchantConfig.setAmount(amount + (allAmount / 100)); merchantConfigService.updateMerch(merchantConfig); @@ -324,17 +313,15 @@ public class FyPayServiceImpl implements FyPayService { returnRecord.setPayStatus("payFail"); returnRecordService.updateReturnRecord(returnRecord); } - receiveParameter.setType("7"); receiveParameter.setContent("挂账订单"); } if ("CVR".equals(type)) { payStates = "payFail"; - cardValueOrdersService.updateOrderStatus(orderNo,payStatus); + cardValueOrdersService.updateOrderStatus(orderNo, payStatus); } if ("CFR".equals(type)) { payStates = "payFail"; - } if ("IOS".equals(type)) { payStates = "payFail"; @@ -382,7 +369,6 @@ public class FyPayServiceImpl implements FyPayService { //储值卡 Integer id = Integer.parseInt(map1.get("orderId")); cardValueRecordService.editPayStatus(id, payStates); - //cardValueOrdersService.updateBalance(orderNo,payStatus); CardValueRecord byId = cardValueRecordService.getById(id); receiveParameter.setType("3"); if (byId.getMtUserId() != null) { @@ -415,7 +401,7 @@ public class FyPayServiceImpl implements FyPayService { if (!reqMap.get("trans_stat").equals("USERPAYING")) { String payChannel = "cashier"; if (ObjectUtil.isNotEmpty(map1.get("payChannel"))) payChannel = map1.get("payChannel"); - this.insertAllOrderInfo(receiveParameter, payStatus,discountAmount,payChannel,merchantConfig); + this.insertAllOrderInfo(receiveParameter, payStatus, discountAmount, payChannel, merchantConfig); } if (ObjectUtil.isNotEmpty(merchantConfig)) { //添加配置记录信息 @@ -423,7 +409,7 @@ public class FyPayServiceImpl implements FyPayService { merchantConfigRecord.setMerchantId(merchantConfig.getId()); if (payStatus.equals("paid")) { merchantConfigRecord.setIsSuccess("yes"); - }else { + } else { merchantConfigRecord.setIsSuccess("no"); } merchantConfigRecord.setAmount(allAmount / 100.0); @@ -446,58 +432,57 @@ public class FyPayServiceImpl implements FyPayService { try { String transactionType = null; String oilGunId = null; - if (receiveParameter.getType().equals("1")){ + if (receiveParameter.getType().equals("1")) { transactionType = "4"; oilGunId = receiveParameter.getOilGunId(); - } else if (receiveParameter.getType().equals("2")){ + } else if (receiveParameter.getType().equals("2")) { transactionType = "2"; - } else if (receiveParameter.getType().equals("3") || receiveParameter.getType().equals("5")){ + } else if (receiveParameter.getType().equals("3") || receiveParameter.getType().equals("5")) { transactionType = "1"; - } else if (receiveParameter.getType().equals("4")){ + } else if (receiveParameter.getType().equals("4")) { transactionType = "3"; - } else if (receiveParameter.getType().equals("6")){ + } else if (receiveParameter.getType().equals("6")) { transactionType = "5"; } -// 查询商户配置信息 - MerchantConfig merchantConfig = merchantConfigService.selectMeChByIdIsUse(receiveParameter.getStoreId(),transactionType,oilGunId); + // 查询商户配置信息 + MerchantConfig merchantConfig = merchantConfigService.selectMeChByIdIsUse(receiveParameter.getStoreId(), transactionType, oilGunId); if (ObjectUtil.isEmpty(merchantConfig)) { res.put("code", "error"); res.put("msg", "暂未配置商户信息"); return res; } -// MerchantConfig merchantConfig = merchantConfigService.selectMeChByIdIsUse(16); -// 查询用户信息 + // 查询用户信息 LJUserVo userVo = userService.selectUserById(receiveParameter.getUserId(), receiveParameter.getStoreId()); - // 公钥 + // 公钥 Const.INS_PUBLIC_KEY = merchantConfig.getPublicKey(); - // 私钥 + // 私钥 Const.INS_PRIVATE_KEY = merchantConfig.getPrivateKey(); Map map = Builder.buildFuiou23(); - // 机构号 + // 机构号 map.put("ins_cd", merchantConfig.getInsCd()); - // 商户号 + // 商户号 map.put("mchnt_cd", merchantConfig.getMchntCd()); - // 订单号 + // 订单号 map.put("mchnt_order_no", receiveParameter.getOrderNo()); - // 订单总金额 + // 订单总金额 Integer goodsMoney = (int) (receiveParameter.getGoodsMoney() * 100); map.put("order_amt", goodsMoney.toString()); - // 订单描述 + // 订单描述 map.put("goods_des", receiveParameter.getContent()); if (receiveParameter.getPayType().equals("WECHAT")) { map.put("trade_type", "LETPAY"); - // 微信open_id + // 微信open_id map.put("sub_openid", userVo.getOpenId()); System.out.println("微信open_id:" + userVo.getOpenId()); - // appid + // appid map.put("sub_appid", merchantConfig.getAppid()); } else if (receiveParameter.getPayType().equals("ALIPAY")) { map.put("trade_type", "FWC"); - // 支付宝userId + // 支付宝userId map.put("sub_openid", userVo.getUserId()); System.out.println("支付宝userId:" + userVo.getUserId()); - // appid + // appid map.put("sub_appid", merchantConfig.getAlipayAppid()); } else { res.put("code", "error"); @@ -506,8 +491,7 @@ public class FyPayServiceImpl implements FyPayService { } if (ObjectUtil.isNotEmpty(merchantConfig)) { - -// 添加配置记录信息 + // 添加配置记录信息 MerchantConfigRecord merchantConfigRecord = new MerchantConfigRecord(); merchantConfigRecord.setMerchantId(merchantConfig.getId()); merchantConfigRecord.setIsSuccess("no"); @@ -518,9 +502,9 @@ public class FyPayServiceImpl implements FyPayService { merchantConfigRecordService.insertMerchantConfigRecord(merchantConfigRecord); } - // 请求报文 + // 请求报文 String reqBody = Message.requestMsg(map); - // 响应报文 + // 响应报文 String rspXml = Message.responseMsg(reqBody, Const.fuiou_32_url); //响应报文验签 Map resMap = Utils.xmlStr2Map(rspXml); @@ -529,10 +513,10 @@ public class FyPayServiceImpl implements FyPayService { if (Utils.verifySign(resMap, str)) { System.out.println(resMap); OilOrder oilOrder = oilOrderService.selectOilOrderByOrderNo(receiveParameter.getOrderNo()); -// 添加订单信息 + // 添加订单信息 Double discountAmount = 0.0; if (ObjectUtil.isNotEmpty(oilOrder)) discountAmount = oilOrder.getDiscountAmount(); - this.insertAllOrderInfo(receiveParameter, discountAmount,merchantConfig); + this.insertAllOrderInfo(receiveParameter, discountAmount, merchantConfig); res.put("code", "success"); res.put("msg", "成功"); @@ -565,7 +549,7 @@ public class FyPayServiceImpl implements FyPayService { /** * 添加所有订单信息 */ - private void insertAllOrderInfo(ReceiveParameter receiveParameter, String payStatus,Double discountAmount,String payChannel,MerchantConfig merchantConfig) { + private void insertAllOrderInfo(ReceiveParameter receiveParameter, String payStatus, Double discountAmount, String payChannel, MerchantConfig merchantConfig) { AllOrderInfo allOrderInfo = new AllOrderInfo(); allOrderInfo.setOrderNo(receiveParameter.getOrderNo()); allOrderInfo.setType(receiveParameter.getType()); @@ -593,7 +577,7 @@ public class FyPayServiceImpl implements FyPayService { /** * 添加所有订单信息 */ - private void insertAllOrderInfo(ReceiveParameter receiveParameter,Double discountAmount,MerchantConfig merchantConfig) { + private void insertAllOrderInfo(ReceiveParameter receiveParameter, Double discountAmount, MerchantConfig merchantConfig) { AllOrderInfo allOrderInfo = new AllOrderInfo(); allOrderInfo.setOrderNo(receiveParameter.getOrderNo()); allOrderInfo.setType(receiveParameter.getType()); @@ -640,9 +624,9 @@ public class FyPayServiceImpl implements FyPayService { Const.INS_PUBLIC_KEY = publicKey; Const.INS_PRIVATE_KEY = privateKey; -// 请求报文 + // 请求报文 String reqBody = Message.requestMsg(map); -// 响应报文 + // 响应报文 String rspXml = Message.responseMsg(reqBody, Const.fuiou_33_url); //响应报文验签 @@ -661,20 +645,20 @@ public class FyPayServiceImpl implements FyPayService { try { String transactionType = null; String oilGunId = null; - if (receiveParameterPos.getType().equals("1")){ + if (receiveParameterPos.getType().equals("1")) { transactionType = "4"; oilGunId = receiveParameterPos.getOilGunId(); - } else if (receiveParameterPos.getType().equals("2")){ + } else if (receiveParameterPos.getType().equals("2")) { transactionType = "2"; - } else if (receiveParameterPos.getType().equals("3") || receiveParameterPos.getType().equals("5")){ + } else if (receiveParameterPos.getType().equals("3") || receiveParameterPos.getType().equals("5")) { transactionType = "1"; - } else if (receiveParameterPos.getType().equals("4")){ + } else if (receiveParameterPos.getType().equals("4")) { transactionType = "3"; - } else if (receiveParameterPos.getType().equals("6")){ + } else if (receiveParameterPos.getType().equals("6")) { transactionType = "5"; } -// 查询商户配置信息 - MerchantConfig merchantConfig = merchantConfigService.selectMeChByIdIsUse(receiveParameterPos.getStoreId(),transactionType,oilGunId); + // 查询商户配置信息 + MerchantConfig merchantConfig = merchantConfigService.selectMeChByIdIsUse(receiveParameterPos.getStoreId(), transactionType, oilGunId); if (ObjectUtil.isEmpty(merchantConfig)) { res.put("code", "error"); res.put("msg", "暂未配置商户信息"); @@ -695,9 +679,9 @@ public class FyPayServiceImpl implements FyPayService { map.put("goods_des", receiveParameterPos.getContent()); -// 请求报文 + // 请求报文 String reqBody = Message.requestMsg(map); -// 响应报文 + // 响应报文 String rspXml = Message.responseMsg(reqBody, Const.fuiou_31_url); //响应报文验签 @@ -750,9 +734,9 @@ public class FyPayServiceImpl implements FyPayService { map.put("mchnt_cd", mchntCd); String payStatus = "unpaid"; - // 请求报文 + // 请求报文 String reqBody = Message.requestMsg(map); - // 响应报文 + // 响应报文 String rspXml = Message.responseMsg(reqBody, Const.fuiou_34_url); //响应报文验签 @@ -762,35 +746,35 @@ public class FyPayServiceImpl implements FyPayService { OilOrder oilOrder = oilOrderService.selectOilOrderByOrderNo(receiveParameterPos.getOrderNo()); String transactionType = null; String oilGunId = null; - if (receiveParameterPos.getType().equals("1")){ + if (receiveParameterPos.getType().equals("1")) { transactionType = "4"; oilGunId = receiveParameterPos.getOilGunId(); - } else if (receiveParameterPos.getType().equals("2")){ + } else if (receiveParameterPos.getType().equals("2")) { transactionType = "2"; - } else if (receiveParameterPos.getType().equals("3") || receiveParameterPos.getType().equals("5")){ + } else if (receiveParameterPos.getType().equals("3") || receiveParameterPos.getType().equals("5")) { transactionType = "1"; - } else if (receiveParameterPos.getType().equals("4")){ + } else if (receiveParameterPos.getType().equals("4")) { transactionType = "3"; - } else if (receiveParameterPos.getType().equals("6")){ + } else if (receiveParameterPos.getType().equals("6")) { transactionType = "5"; } - MerchantConfig merchantConfig = merchantConfigService.selectMeChByIdIsUse(receiveParameterPos.getStoreId(),transactionType,oilGunId); + MerchantConfig merchantConfig = merchantConfigService.selectMeChByIdIsUse(receiveParameterPos.getStoreId(), transactionType, oilGunId); ReceiveParameter receiveParameter = new ReceiveParameter(); BeanUtils.copyProperties(receiveParameterPos, receiveParameter); Double discountAmount = 0.0; if (ObjectUtil.isNotEmpty(oilOrder)) discountAmount = oilOrder.getDiscountAmount(); - this.insertAllOrderInfo(receiveParameter, receiveParameterPos.getPayType(),discountAmount,"POS",merchantConfig); + this.insertAllOrderInfo(receiveParameter, receiveParameterPos.getPayType(), discountAmount, "POS", merchantConfig); if (reqMap.get("trans_stat").equals("SUCCESS")) { payStatus = "paid"; if (!ObjectUtil.isEmpty(oilOrder)) { -// 油品订单 + // 油品订单 oilOrder.setOrderStatus("paid"); oilOrder.setPayTime(new Date()); - oilOrderService.updateCardAndActiveById(oilOrder.getStoreId(), oilOrder.getUserId(), oilOrder.getActiveId(), oilOrder.getCouponId(), oilOrder.getActiveType(), oilOrder.getOrderAmount(), oilOrder.getPayAmount(), Integer.valueOf(oilOrder.getOils())); + oilOrderService.updateCardAndActiveById(oilOrder.getStoreId(), oilOrder.getUserId(), oilOrder.getId()); oilOrderService.insertFavorable(oilOrder, receiveParameterPos.getOilCardAmount()); if (ObjectUtil.isNotEmpty(oilOrder.getStaffId())) staffCommissionService.countStaffCommission(oilOrder.getStaffId(), oilOrder.getStoreId(), oilOrder.getOrderAmount(), oilOrder.getPayAmount(), "1", receiveParameterPos.getOrderNo()); -// 修改油罐容量 + // 修改油罐容量 oilOrderService.addOilTracks(oilOrder, oilOrder.getStoreId()); if (ObjectUtil.isNotEmpty(oilOrder.getUserId())) integralSettingsService.refuelPoints(oilOrder); @@ -803,7 +787,7 @@ public class FyPayServiceImpl implements FyPayService { } } } -// 修改商户账号余额信息 + // 修改商户账号余额信息 Double amount = merchantConfig.getAmount(); merchantConfig.setAmount(amount + receiveParameterPos.getGoodsMoney()); merchantConfigService.updateMerch(merchantConfig); @@ -829,7 +813,7 @@ public class FyPayServiceImpl implements FyPayService { } if (ObjectUtil.isNotEmpty(merchantConfig)) { -// 添加配置记录信息 + // 添加配置记录信息 MerchantConfigRecord merchantConfigRecord = new MerchantConfigRecord(); merchantConfigRecord.setMerchantId(merchantConfig.getId()); if (payStatus.equals("paid")) { @@ -856,20 +840,20 @@ public class FyPayServiceImpl implements FyPayService { String transactionType = null; String oilGunId = null; - if (receiveParameterPos.getType().equals("1")){ + if (receiveParameterPos.getType().equals("1")) { transactionType = "4"; oilGunId = receiveParameterPos.getOilGunId(); - } else if (receiveParameterPos.getType().equals("2")){ + } else if (receiveParameterPos.getType().equals("2")) { transactionType = "2"; - } else if (receiveParameterPos.getType().equals("3") || receiveParameterPos.getType().equals("5")){ + } else if (receiveParameterPos.getType().equals("3") || receiveParameterPos.getType().equals("5")) { transactionType = "1"; - } else if (receiveParameterPos.getType().equals("4")){ + } else if (receiveParameterPos.getType().equals("4")) { transactionType = "3"; - } else if (receiveParameterPos.getType().equals("6")){ + } else if (receiveParameterPos.getType().equals("6")) { transactionType = "5"; } -// 查询商户配置信息 - MerchantConfig merchantConfig = merchantConfigService.selectMeChByIdIsUse(receiveParameterPos.getStoreId(),transactionType,oilGunId); + // 查询商户配置信息 + MerchantConfig merchantConfig = merchantConfigService.selectMeChByIdIsUse(receiveParameterPos.getStoreId(), transactionType, oilGunId); if (ObjectUtil.isEmpty(merchantConfig)) { res.put("code", "error"); res.put("msg", "暂未配置商户信息"); @@ -897,7 +881,7 @@ public class FyPayServiceImpl implements FyPayService { if (ObjectUtil.isNotEmpty(merchantConfig)) { -// 添加配置记录信息 + // 添加配置记录信息 MerchantConfigRecord merchantConfigRecord = new MerchantConfigRecord(); merchantConfigRecord.setMerchantId(merchantConfig.getId()); merchantConfigRecord.setIsSuccess("no"); @@ -907,9 +891,9 @@ public class FyPayServiceImpl implements FyPayService { merchantConfigRecord.setOrderNo(receiveParameterPos.getOrderNo()); merchantConfigRecordService.insertMerchantConfigRecord(merchantConfigRecord); } -// 请求报文 + // 请求报文 String reqBody = Message.requestMsg(map); -// 响应报文 + // 响应报文 String rspXml = Message.responseMsg(reqBody, Const.fuiou_35_url); //响应报文验签 @@ -920,10 +904,10 @@ public class FyPayServiceImpl implements FyPayService { OilOrder oilOrder = oilOrderService.selectOilOrderByOrderNo(receiveParameterPos.getOrderNo()); ReceiveParameter receiveParameter = new ReceiveParameter(); BeanUtils.copyProperties(receiveParameterPos, receiveParameter); -// 添加订单信息 + // 添加订单信息 Double discountAmount = 0.0; if (ObjectUtil.isNotEmpty(oilOrder)) discountAmount = oilOrder.getDiscountAmount(); - this.insertAllOrderInfo(receiveParameter, discountAmount,merchantConfig); + this.insertAllOrderInfo(receiveParameter, discountAmount, merchantConfig); System.out.println(resMap); } return resMap; diff --git a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/entity/LJOrder.java b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/entity/LJOrder.java index 7931606ee..b863027c0 100644 --- a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/entity/LJOrder.java +++ b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/entity/LJOrder.java @@ -21,7 +21,7 @@ import java.util.List; * @since 2023-11-07 15:04:17 */ @Data -@TableName("mt_order") +@TableName("lj_order") @ApiModel(value = "LJOrder对象", description = "商品订单表") public class LJOrder extends BaseEntity implements Serializable { @@ -101,6 +101,10 @@ public class LJOrder extends BaseEntity implements Serializable { * 操作员工 */ private Integer staffId; + /** + * 优惠券 用户 id + */ + private Integer couponUserId; @TableField(exist = false) private String goodsName; diff --git a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/entity/OrderGoods.java b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/entity/OrderGoods.java index 00e63a005..f66882ee4 100644 --- a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/entity/OrderGoods.java +++ b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/entity/OrderGoods.java @@ -15,7 +15,7 @@ import java.io.Serializable; * 订单商品表(OrderGoods)实体类 */ @Data -@TableName("mt_order_goods") +@TableName("lj_order_goods") @ApiModel(value = "OrderGoods对象", description = "订单商品表") public class OrderGoods extends BaseEntity implements Serializable { diff --git a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/OilOrderService.java b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/OilOrderService.java index 024ed1c69..26415afb0 100644 --- a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/OilOrderService.java +++ b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/OilOrderService.java @@ -98,13 +98,8 @@ public interface OilOrderService extends IService { * 消费有礼调用接口 * @param storeId 店铺id * @param userId 用户id - * @param activeId 活动id - * @param cardFavorableId 优惠券id - * @param type 活动类型 - * @param orderAmount 订单金额 - * @param oilId 油品id */ - void updateCardAndActiveById(Integer storeId,Integer userId,Integer activeId,Integer cardFavorableId,String type,Double orderAmount,Double payAmount,Integer oilId) throws Exception; + void updateCardAndActiveById(Integer storeId,Integer userId,Integer orderId); /** * 扫描小程序中二维码所处理的逻辑 @@ -154,7 +149,7 @@ public interface OilOrderService extends IService { public void addOilTracks(OilOrder oilOrder,Integer storeId); /** - * 添加油品订单信息 + * 修改油品订单信息 * @param order * @return */ diff --git a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/impl/LJOrderServiceImpl.java b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/impl/LJOrderServiceImpl.java index 3acc6e418..8dc2c012f 100644 --- a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/impl/LJOrderServiceImpl.java +++ b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/impl/LJOrderServiceImpl.java @@ -217,7 +217,10 @@ public class LJOrderServiceImpl extends ServiceImpl impl return row; } - // 添加优惠记录 + /** + * 添加优惠记录 + * @param order + */ @Override public void insertFavorable(LJOrder order) { FavorableRecords favorableRecords = new FavorableRecords(); diff --git a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/impl/OilOrderServiceImpl.java b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/impl/OilOrderServiceImpl.java index e481c3c3a..926a81f22 100644 --- a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/impl/OilOrderServiceImpl.java +++ b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/impl/OilOrderServiceImpl.java @@ -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 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 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 selectOilOrderList(Page page, OilOrder order) { @@ -170,13 +205,6 @@ public class OilOrderServiceImpl extends ServiceImpl i return oilOrderIPage; } - @Resource - OilGunMapper oilGunMapper; - @Resource - OilNameMapper oilNameMapper; - @Resource - OilTankMapper oilTankMapper; - @Override public IPage selectOilOrderListByZtDz(Page page, OilOrder order) { if (ObjectUtil.isEmpty(order.getDeptId())) { @@ -228,21 +256,6 @@ public class OilOrderServiceImpl extends ServiceImpl 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 i order.setStoreId(storeId); List 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); @@ -329,34 +338,31 @@ public class OilOrderServiceImpl extends ServiceImpl i if (oilOrderVos.size() > 0) { for (OilOrderVo oilOrderVo : oilOrderVos) { if (ObjectUtil.isNotEmpty(oilOrderVo.getActiveId()) && ObjectUtil.isNotEmpty(oilOrderVo.getActiveType())) { -// 满减 + // 满减 if (oilOrderVo.getActiveType().equals("1")) { ActiveFullminusVO oneById = activeFullminusService.getOneById(oilOrderVo.getActiveId()); List activeDiscountChildList = oneById.getActiveDiscountChildList(); for (ActiveDiscountChild activeDiscountChild : activeDiscountChildList) { if (activeDiscountChild.getAmount() <= oilOrderVo.getOrderAmount()) { -// oilOrderVo.setDeductionAmount(activeDiscountChild.getDeductionAmount()); deductionAmount += activeDiscountChild.getDeductionAmount(); break; } } } -// 折扣 + // 折扣 if (oilOrderVo.getActiveType().equals("2")) { ActiveDiscountVO oneById = activeDiscountService.getOneById(oilOrderVo.getActiveId()); List 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; } } } } -// 优惠券 + // 优惠券 if (ObjectUtil.isNotEmpty(oilOrderVo.getCouponId())) { - //CardFavorableVO cardFavorableVO = cardFavorableService.selectOneById(oilOrderVo.getCouponId()); LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(CardFavorableRecord::getCardFavorableId, oilOrderVo.getCouponId()); queryWrapper.eq(CardFavorableRecord::getMtUserId, oilOrderVo.getUserId()); @@ -383,92 +389,79 @@ public class OilOrderServiceImpl extends ServiceImpl i public Map insertOilOrder(Map map) throws Exception { AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo(); Integer storeId = nowAccountInfo.getStoreId(); -// 油品订单信息 + // 油品订单信息 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"); -// 油品订单金额 + // 油品订单金额 Double oilAmount = Double.valueOf(map.get("oilAmount")); -// 商品订单金额 + // 商品订单金额 Double goodsAmount = Double.valueOf(map.get("goodsAmount")); -// 油品实付金额 + // 油品实付金额 Double oilActualPay = Double.valueOf(map.get("oilActualPay")); -// 商品实付金额 + // 商品实付金额 Double goodsActualPay = Double.valueOf(map.get("goodsActualPay")); -// 找零金额 + // 找零金额 Double seekZero = Double.valueOf(map.get("seekZero")); -// 油枪id + // 油枪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 + // 优惠券 用户 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("[]")) { payUser = map.get("payUser"); } else { payUser = "散客"; } - //油品优惠金额 + // 油品优惠金额 Double oilDiscount = Double.valueOf(map.get("oilDiscount")); -// 商品优惠金额 + // 商品优惠金额 Double goodsDiscount = Double.valueOf(map.get("goodsDiscount")); - //员工id + // 员工id Integer staffId = null; if (ObjectUtil.isNotEmpty(map.get("staffId"))) { staffId = Integer.valueOf(map.get("staffId")); } - // 会员消费金额(储值卡需要减少的金额) + // 会员消费金额(储值卡需要减少的金额) Double consumeAmount = Double.valueOf(map.get("consumeAmount")); Integer userId = null; Boolean isMember = false; -// 根据日期生成订单信息 + // 根据日期生成订单信息 SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss"); String timestamp = dateFormat.format(new Date()); String randomString = UUID.randomUUID().toString().replace("-", "").substring(0, 6); String orderNo = "2345" + timestamp + randomString; if (StringUtils.isNotEmpty(map.get("userId"))) { -// 会员id + // 会员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 i Map orders = new HashMap<>(); - OilOrder oilOrder1 = null; - LJOrder ljOrder1 = null; - String transactionType = null; if (oilAmount > 0 && goodsAmount > 0) { transactionType = "5"; @@ -488,16 +478,16 @@ public class OilOrderServiceImpl extends ServiceImpl i transactionType = "2"; } - // 根据店铺id查询商户配置信息 + // 根据店铺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; } -// 添加商品订单信息 + // 添加商品订单信息 if (!goodsOrder.equals("[]")) { LJOrder ljOrder = new LJOrder(); ljOrder.setTerminal(terminal); @@ -514,112 +504,94 @@ public class OilOrderServiceImpl extends ServiceImpl 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()); } -// 将商品订单的json数据转换为数组 + // 将商品订单的json数据转换为数组 List goods = JSONArray.parseArray(goodsOrder, JSONObject.class); for (JSONObject good : goods) { -// 查询商品库存信息 看是否能购买 + // 查询商品库存信息 看是否能购买 LJGoods ljGoods = goodsService.selectLJGoodsById(Integer.parseInt(good.get("id").toString())); if (ljGoods.getStock() < Integer.parseInt(good.get("num").toString())) { orders.put("error", "1"); 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(ljOrder2.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 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 oilNum = amount / oilPrice; - oilLiters += oilNum; - if (i == 0) { - order.setOrderType("主订单"); - order.setOrderAmount(amount); - order.setPayAmount(oilActualPay); - order.setOrderNo(orderNo); - order.setDiscountAmount(oilDiscount); - order.setBalanceAmount(Double.valueOf(balanceAmount)); - order.setOilCardAmount(Double.valueOf(oilCardAmount)); - 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); - } + Double amount = oilAmount; + Double oilPrice = Double.valueOf(jsonObject.get("oilPrice").toString()); + Double oilNum = amount / oilPrice; + order.setOrderType("主订单"); + order.setOrderAmount(amount); + order.setPayAmount(oilActualPay); + order.setOrderNo(orderNo); + order.setDiscountAmount(oilDiscount); + order.setBalanceAmount(Double.valueOf(balanceAmount)); + order.setOilCardAmount(Double.valueOf(oilCardAmount)); + if (payType.equals("CASH") && ObjectUtil.isNotEmpty(staffId)) { + staffCommissionService.countStaffCommission(staffId, storeId, oilAmount, oilActualPay, "1", orderNo); + } + order.setActiveAmount(activeAmount); + order.setStoreId(storeId); + order.setUserId(userId); + order.setStaffId(staffId); + order.setTerminal(terminal); + 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(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.get("activeType"))) { + order.setActiveType(jsonObject.get("activeType").toString()); + } + if (payType.equals("CASH") || payType.equals("after_pay") || payType.equals("card_value")) { + order.setPayTime(new Date()); + order.setOrderStatus("paid"); + this.insertCardBalance(consumeAmount, userId, storeId, orderNo); + this.addOilTrack(jsonObject, storeId); 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) jsonObjects.get(i).get("oilName")); - order.setOilGunNum(jsonObjects.get(i).get("gunName").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())); - } - if (ObjectUtil.isNotEmpty(jsonObjects.get(i).get("type"))) { - order.setActiveType(jsonObjects.get(i).get("type").toString()); - } - if (payType.equals("CASH") || payType.equals("credit") || payType.equals("balance")) { - 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())); - } - if (map.get("allAmount").equals("0")) { - order.setPayTime(new Date()); - order.setOrderStatus("paid"); + this.updateGrowthValue(oilAmount, oilActualPay, userId, Integer.valueOf(jsonObject.get("oils").toString()), storeId, orderNo); } + } + if (map.get("allAmount").equals("0")) { + order.setPayTime(new Date()); + order.setOrderStatus("paid"); + } - baseMapper.insert(order); - oilOrder1 = this.selectOilOrderByOrderNo(orderNo); + baseMapper.insert(order); + if (order.getOrderStatus().equals("paid")){ + this.updateCardAndActiveById(storeId, userId, order.getId()); } } @@ -632,7 +604,7 @@ public class OilOrderServiceImpl extends ServiceImpl 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 { @@ -653,16 +625,11 @@ public class OilOrderServiceImpl extends ServiceImpl i cashierOrder.setPayType(payType); cashierOrder.setAfterDiscountAmount(oilAmount + goodsAmount - oilDiscount - goodsDiscount); -// 如果金额不等于0调用第三方支付接口 - if (!map.get("allAmount").equals("0") && !map.get("payType").equals("CASH") && !payType.equals("credit")) { + // 如果金额不等于0调用第三方支付接口 + 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 list = merchantConfigService.selectMeChByIsOpen(storeId); -// if (list.size() > 0) { -// oilConfigService.oilRule(storeId); -// } - // 处理支付需要的数据 + // 处理支付需要的数据 Map map1 = new HashMap<>(); map1.put("authCode", map.get("authCode")); map1.put("allAmount", allAmount.toString()); @@ -675,16 +642,15 @@ public class OilOrderServiceImpl extends ServiceImpl 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", oilCardAmount1.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 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 i } // 调用消费有礼接口 - public void updateCardAndActiveById(Integer storeId, Integer userId, Integer activeId, Integer cardFavorableId, String type, Double orderAmount, Double payAmount, Integer oilId) 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 map = new HashMap<>(); + map.put("userId",userId.toString()); + map.put("storeId",storeId.toString()); + map.put("orderId",orderId.toString()); + payCenterService.cashRegisterSpendWisely(map); } } @@ -760,28 +719,26 @@ public class OilOrderServiceImpl extends ServiceImpl i AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo(); Map res = new HashMap<>(); String authCode = map.get("authCode"); -// 油品订单金额 + // 油品订单金额 Double oilAmount = Double.valueOf(map.get("oilAmount")); - // 将油品订单信息的json数据转换为数组 + // 将油品订单信息的json数据转换为数组 List oilOrders = null; if (!map.get("oilOrder").equals("[]")) { oilOrders = JSONArray.parseArray(map.get("oilOrder"), JSONObject.class); -// 二维码支付 + // 二维码支付 if (authCode.contains("9E")) { String[] split = authCode.split("9E"); -// 获取用户id + // 获取用户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+")) { String[] split = authCode.split("19"); -// 获取用户id + // 获取用户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; @@ -792,27 +749,25 @@ public class OilOrderServiceImpl extends ServiceImpl i AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo(); Map res = new HashMap<>(); String authCode = oilOrderVo.getAuthCode(); -// 油品订单金额 + // 油品订单金额 Double oilAmount = oilOrderVo.getOrderAmount(); -// 二维码支付 + // 二维码支付 if (authCode.contains("9E")) { String[] split = authCode.split("9E"); -// 获取用户id + // 获取用户id Integer userId = Integer.valueOf(split[1]); res = this.updateUserBalanceAndInsetOrderPos(userId, oilAmount, oilOrderVo, nowAccountInfo.getStoreId()); } -// 条码支付 + // 条码支付 if (authCode.contains("19") && authCode.matches("\\d+")) { String[] split = authCode.split("19"); -// 获取用户id + // 获取用户id Integer userId = Integer.valueOf(split[1]); res = this.updateUserBalanceAndInsetOrderPos(userId, oilAmount, oilOrderVo, nowAccountInfo.getStoreId()); } return res; } - @Autowired - private LJUserService userService; /** * 修改用户储值卡信息并添加订单信息 @@ -825,12 +780,12 @@ public class OilOrderServiceImpl extends ServiceImpl i private Map updateUserBalanceAndInsetOrder(int userId, Map map, Double oilAmount, List oilOrders, Integer storeId) { Map res = new HashMap<>(); LJStore store = storeService.selectStoreByStoreId(storeId); - // 根据userId查询用户储值卡信息 + // 根据userId查询用户储值卡信息 UserBalance balance = userBalanceService.selectUserBalance(userId, store.getChainStoreId()); -// 根据用户id查询用户信息 + // 根据用户id查询用户信息 LJUserVo userVo1 = userService.selectUserById(userId, storeId); - // 根据日期生成订单信息 + // 根据日期生成订单信息 SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss"); String timestamp = dateFormat.format(new Date()); String randomString = UUID.randomUUID().toString().replace("-", "").substring(0, 6); @@ -846,12 +801,12 @@ public class OilOrderServiceImpl extends ServiceImpl i for (Object refuelMoney : refuelMoneys) { String oilType = ((JSONObject) refuelMoney).get("oilType").toString(); Double refuelMoneyLiters = Double.valueOf(((JSONObject) refuelMoney).get("refuelMoney").toString()); -// 根据油品名称查询油品id + // 根据油品名称查询油品id OilName oilName = oilNameService.selectOilNameById(Integer.valueOf(oilType)); OilOrder order = new OilOrder(); OilOrder oilOrder = null; - // 添加收银台订单信息 + // 添加收银台订单信息 CashierOrder cashierOrder = new CashierOrder(); boolean flag = false; Double oilLiters = 0.0; @@ -884,7 +839,6 @@ public class OilOrderServiceImpl extends ServiceImpl 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("未开票"); @@ -1058,7 +1012,7 @@ public class OilOrderServiceImpl extends ServiceImpl i } else { if (cardBalance >= oilAmount) { -// 添加油品订单信息 + // 添加油品订单信息 OilOrder order = new OilOrder(); Double oilLiters = 0.0; for (int i = 0; i < oilOrders.size(); i++) { @@ -1086,7 +1040,6 @@ public class OilOrderServiceImpl extends ServiceImpl 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("未开票"); @@ -1102,7 +1055,7 @@ public class OilOrderServiceImpl extends ServiceImpl i } OilOrder oilOrder = this.selectOilOrderByOrderNo(orderNo); -// 添加收银台订单信息 + // 添加收银台订单信息 CashierOrder cashierOrder = new CashierOrder(); if (ObjectUtil.isNotEmpty(map.get("staffId"))) cashierOrder.setStaffId(Integer.valueOf(map.get("staffId"))); @@ -1115,7 +1068,6 @@ public class OilOrderServiceImpl extends ServiceImpl 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 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", "储值卡余额不足!"); @@ -1145,12 +1096,12 @@ public class OilOrderServiceImpl extends ServiceImpl i private Map updateUserBalanceAndInsetOrder1(int userId, Map map, Double oilAmount, List oilOrders, Integer storeId) { Map res = new HashMap<>(); LJStore store = storeService.selectStoreByStoreId(storeId); - // 根据userId查询用户储值卡信息 + // 根据userId查询用户储值卡信息 UserBalance balance = userBalanceService.selectUserBalance(userId, store.getChainStoreId()); -// 根据用户id查询用户信息 + // 根据用户id查询用户信息 LJUserVo userVo1 = userService.selectUserById(userId, storeId); - // 根据日期生成订单信息 + // 根据日期生成订单信息 SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss"); String timestamp = dateFormat.format(new Date()); String randomString = UUID.randomUUID().toString().replace("-", "").substring(0, 6); @@ -1158,13 +1109,12 @@ public class OilOrderServiceImpl extends ServiceImpl i AccountInfo accountInfo = TokenUtil.getNowAccountInfo(); Double cardBalance = balance.getCardBalance(); - JSONArray refuelMoneys = JSONArray.parseArray(balance.getRefuelMoney()); CardFuelRecord cardFuelRecord = new CardFuelRecord(); cardFuelRecord.setMtUserId(userId); List recordByUserId = cardFuelRecordService.getRecordByUserId(cardFuelRecord); -// 锁价后应付金额 + // 锁价后应付金额 Double lockupAmount = 0.0; for (CardFuelRecord fuelRecord : recordByUserId) { for (int i = 0; i < oilOrders.size(); i++) { @@ -1180,7 +1130,7 @@ public class OilOrderServiceImpl extends ServiceImpl i OilOrder order = new OilOrder(); OilOrder oilOrder = null; - // 添加收银台订单信息 + // 添加收银台订单信息 CashierOrder cashierOrder = new CashierOrder(); boolean flag = false; if (cardBalance >= lockupAmount) { @@ -1216,7 +1166,6 @@ public class OilOrderServiceImpl extends ServiceImpl 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("未开票"); @@ -1263,7 +1212,7 @@ public class OilOrderServiceImpl extends ServiceImpl i } else { if (cardBalance >= oilAmount) { -// 添加油品订单信息 + // 添加油品订单信息 OilOrder order = new OilOrder(); Double oilLiters = 0.0; for (int i = 0; i < oilOrders.size(); i++) { @@ -1291,7 +1240,6 @@ public class OilOrderServiceImpl extends ServiceImpl 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("未开票"); @@ -1307,7 +1255,7 @@ public class OilOrderServiceImpl extends ServiceImpl i } OilOrder oilOrder = this.selectOilOrderByOrderNo(orderNo); -// 添加收银台订单信息 + // 添加收银台订单信息 CashierOrder cashierOrder = new CashierOrder(); if (ObjectUtil.isNotEmpty(map.get("staffId"))) cashierOrder.setStaffId(Integer.valueOf(map.get("staffId"))); @@ -1320,7 +1268,6 @@ public class OilOrderServiceImpl extends ServiceImpl 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 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", "储值卡余额不足!"); @@ -1350,16 +1296,16 @@ public class OilOrderServiceImpl extends ServiceImpl i private Map updateUserBalanceAndInsetOrderPos(int userId, Double oilAmount, OilOrderVo oilOrders, Integer storeId) { Map res = new HashMap<>(); LJStore store = storeService.selectStoreByStoreId(storeId); - // 根据userId查询用户储值卡信息 + // 根据userId查询用户储值卡信息 UserBalance balance = userBalanceService.selectUserBalance(userId, store.getChainStoreId()); -// 根据用户id查询用户信息 + // 根据用户id查询用户信息 LJUserVo userVo1 = userService.selectUserById(userId, storeId); if (ObjectUtil.isEmpty(userVo1)) { res.put("error", "当前会员不存在!"); return res; } - // 根据日期生成订单信息 + // 根据日期生成订单信息 SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss"); String timestamp = dateFormat.format(new Date()); String randomString = UUID.randomUUID().toString().replace("-", "").substring(0, 6); @@ -1379,7 +1325,7 @@ public class OilOrderServiceImpl extends ServiceImpl i CardFuelRecord cardFuelRecord = new CardFuelRecord(); cardFuelRecord.setMtUserId(userId); List recordByUserId = cardFuelRecordService.getRecordByUserId(cardFuelRecord); -// 锁价后应付金额 + // 锁价后应付金额 Double lockupAmount = 0.0; for (CardFuelRecord fuelRecord : recordByUserId) { if (fuelRecord.getOilName().equals(oilOrders.getOils())) { @@ -1387,8 +1333,6 @@ public class OilOrderServiceImpl extends ServiceImpl i } } -// if (cardBalance < oilAmount) { - String status = "unpaid"; if (lockupAmount > 0.0) { @@ -1416,7 +1360,7 @@ public class OilOrderServiceImpl extends ServiceImpl i } else { if (cardBalance >= oilAmount) { -// 添加油品订单信息 + // 添加油品订单信息 oilOrders.setInvoicing("未开票"); oilOrders.setOrderStatus("paid"); oilOrders.setPayTime(new Date()); @@ -1428,7 +1372,6 @@ public class OilOrderServiceImpl extends ServiceImpl 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 i return res; } - @Autowired - @Lazy - private AllOrderInfoService allOrderInfoService; /** * 添加所有订单信息 @@ -1485,90 +1425,21 @@ public class OilOrderServiceImpl extends ServiceImpl 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 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)); - } - list.add(refuelMoney1); - } - balance.setRefuelMoney(JSONObject.toJSONString(list)); + if (oilName.getOilType().equals("汽油")) { + userBalanceService.growthValue(userid,store.getChainStoreId(),storeId,"1",oilAmount,"油品订单消费",orderNo); } - // 查询会员等级列表信息 - Page page = new Page(1, 20); - LJUserGrade ljUserGrade1 = new LJUserGrade(); - List 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 { + 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.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"); @@ -1590,7 +1461,7 @@ public class OilOrderServiceImpl extends ServiceImpl i oilOrder.setStaffId(Integer.parseInt(split[1])); } } - // 判断当前店铺是否存在此用户的会员信息,没有的话进行添加 + // 判断当前店铺是否存在此用户的会员信息,没有的话进行添加 LJStore store = storeService.selectStoreByStoreId(oilOrder.getStoreId()); UserBalance balance = userBalanceService.selectUserBalance(oilOrder.getUserId(), store.getChainStoreId()); if (ObjectUtil.isEmpty(balance)) { @@ -1619,22 +1490,20 @@ public class OilOrderServiceImpl extends ServiceImpl i String oilCardAmount = map.get("oilCardAmount"); //囤油卡消费升数 Double oilCardLiters = Double.valueOf(map.get("oilCardLiters")); -//是否使用囤油卡 + // 是否使用囤油卡 String isOilStorageCard = map.get("isOilStorageCard"); -// 储值卡消费金额 + // 储值卡消费金额 String balanceAmount = map.get("balanceAmount"); -// 活动id + // 活动id String activeId = map.get("activeId"); -// 优惠券id + // 优惠券id String cardFavorableId = map.get("cardFavorableId"); -// 活动类型 + // 活动类型 String type = map.get("type"); -// 优惠券记录id + // 优惠券记录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"); Map applet = new HashMap<>(); @@ -1643,13 +1512,13 @@ public class OilOrderServiceImpl extends ServiceImpl i OilTank oilTank = oilTankService.queryById(tankId); Double storedQuantity = oilTank.getStoredQuantity(); -// 是否使用子卡消费 + // 是否使用子卡消费 String isUseChildCard = map.get("isUseChildCard"); -// 根据订单号查询订单信息 + // 根据订单号查询订单信息 log.info("订单号1547:" + orderNo); OilOrder oilOrder = this.selectOilOrderByOrderNo(orderNo); -// 获取油品信息 + // 获取油品信息 OilNumber oilNumber = oilNumberService.selectOilNumberByOilName(oilOrder.getOils(), oilOrder.getStoreId()); if (ObjectUtils.isNotEmpty(cardFavorableId)) { @@ -1668,9 +1537,7 @@ public class OilOrderServiceImpl extends ServiceImpl 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")) { @@ -1686,8 +1553,8 @@ public class OilOrderServiceImpl extends ServiceImpl i } if (isOilStorageCard.equals("true")) { -// 使用囤油卡 -// 校验囤油卡升数 + // 使用囤油卡 + // 校验囤油卡升数 if (balanceAmount.equals("0") && map.get("payAmount").equals("0")) { if (Double.compare(oilCardLiters, oilOrder.getOilNum()) != 0) { applet.put("error", "囤油卡消费升数不对!"); @@ -1704,10 +1571,9 @@ public class OilOrderServiceImpl extends ServiceImpl i } } } else { -// 未使用囤油卡 -// 校验支付金额和优惠金额数据是否相同 + // 未使用囤油卡 + // 校验支付金额和优惠金额数据是否相同 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,22 +1587,11 @@ public class OilOrderServiceImpl extends ServiceImpl 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 list = merchantConfigService.selectMeChByIsOpen(); -// if (list.size() > 0) { -// oilConfigService.oilRule(); -// } this.insertCardOrder(oilOrder.getUserId(), oilOrder.getStoreId(), orderNo, oilOrder.getOrderAmount(), "unpaid", Double.valueOf(balanceAmount), payAmount); - // 处理支付需要的数据 + // 处理支付需要的数据 ReceiveParameter receiveParameter = new ReceiveParameter(); receiveParameter.setOrderNo(orderNo); receiveParameter.setType("1"); @@ -1746,13 +1601,13 @@ public class OilOrderServiceImpl extends ServiceImpl i receiveParameter.setPayType(oilOrder.getPayType()); receiveParameter.setUserId(oilOrder.getUserId()); receiveParameter.setOilGunId(oilOrder.getOilGunNum()); - // 调用支付接口 + // 调用支付接口 try { applet = fyPayService.applet(receiveParameter); String resultMsg = (String) applet.get("resultMsg"); // 判断商户订单号是否重复 重复则重新生成订单号 // if (StringUtils.isNotEmpty(resultMsg)){ -// // 根据日期生成订单信息 +// // 根据日期生成订单信息 // SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss"); // String timestamp = dateFormat.format(new Date()); // String randomString = UUID.randomUUID().toString().replace("-","").substring(0,6); @@ -1769,7 +1624,7 @@ public class OilOrderServiceImpl extends ServiceImpl i e.printStackTrace(); } } else { - this.updateGrowthValue(oilOrder.getOrderAmount(), payAmount, userId, Integer.valueOf(oilOrder.getOils()), oilCardAmount, oilOrder.getStoreId(), orderNo); + this.updateGrowthValue(oilOrder.getOrderAmount(), payAmount, userId, Integer.valueOf(oilOrder.getOils()), oilOrder.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"); @@ -1784,11 +1639,9 @@ public class OilOrderServiceImpl extends ServiceImpl i applet.put("success", "ok"); } -// 修改订单的优惠金额和支付金额 + // 修改订单的优惠金额和支付金额 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 i this.updateOilOrder(oilOrder); if (oilOrder.getOrderStatus().equals("paid")) { if (ObjectUtil.isNotEmpty(oilOrder.getUserId())) integralSettingsService.refuelPoints(oilOrder); - this.updateCardAndActiveById(oilOrder.getStoreId(), oilOrder.getUserId(), oilOrder.getActiveId(), oilOrder.getCouponId(), oilOrder.getActiveType(), oilOrder.getOrderAmount(), oilOrder.getPayAmount(), Integer.valueOf(oilOrder.getOils())); + this.updateCardAndActiveById(oilOrder.getStoreId(), oilOrder.getUserId(), oilOrder.getId()); } return applet; } - @Autowired - CardValueChildOrderService cardValueChildOrderService; /** * 添加储值卡子卡订单信息 @@ -1836,15 +1687,6 @@ public class OilOrderServiceImpl extends ServiceImpl 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 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 hashMap = new HashMap<>(); @@ -1905,7 +1746,7 @@ public class OilOrderServiceImpl extends ServiceImpl i } catch (Exception e) { e.printStackTrace(); } - //tagUtils + if (ObjectUtil.isNotEmpty(oilOrder.getUserId())) integralSettingsService.refuelPoints(oilOrder); oilOrder.setPayTime(new Date()); CardValueChildOrder cardValueChildOrder = cardValueChildOrderService.selectCardValueChildOrderByOrderNo(orderNo); @@ -1915,20 +1756,19 @@ public class OilOrderServiceImpl extends ServiceImpl i cardValueChildOrderService.updateCardValueChildOrder(cardValueChildOrder); if (ObjectUtil.isNotEmpty(user)) { -// 查询主卡信息 + // 查询主卡信息 CardValudChildrens cardValudChildrens = cardValudChildrensService.selectCardValueChildrenByMobileAndStoreId(user.getMobile(), oilOrder.getStoreId()); userId = cardValudChildrens.getUserId(); } } 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.getActiveId(), oilOrder.getCouponId(), oilOrder.getActiveType(), oilOrder.getOrderAmount(), oilOrder.getPayAmount(), Integer.valueOf(oilOrder.getOils())); + this.updateCardAndActiveById(oilOrder.getStoreId(), oilOrder.getUserId(), oilOrder.getId()); 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 i return row; } - @Autowired - private OilTankService oilTankService; - @Autowired - private OilTrackingService oilTrackingService; /** * 添加油品库存跟踪信息 @@ -1948,8 +1784,7 @@ public class OilOrderServiceImpl extends ServiceImpl 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("油品出售"); SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss"); @@ -1964,10 +1799,7 @@ public class OilOrderServiceImpl extends ServiceImpl i oilTracking.setTankId(Integer.valueOf(oilOrder.get("tankId").toString())); 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); } @@ -1979,12 +1811,12 @@ public class OilOrderServiceImpl extends ServiceImpl i @Override public void addOilTracks(OilOrder oilOrder, Integer storeId) { OilTank oilTank = oilTankService.queryById(oilOrder.getTankId()); -// 修改油罐容量 + // 修改油罐容量 Double storedQuantity = oilTank.getStoredQuantity(); if (ObjectUtil.isEmpty(storedQuantity) || storedQuantity - oilOrder.getOilNum() <= 0) { throw new RuntimeException("油罐容量不足!"); } -// 添加库存跟踪信息 + // 添加库存跟踪信息 OilTracking oilTracking = new OilTracking(); oilTracking.setDocument("油品出售"); SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss"); @@ -2007,100 +1839,27 @@ public class OilOrderServiceImpl extends ServiceImpl 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); - } - } - } - - balance.setRefuelMoney(refuelMoney); + if (oilName.getOilType().equals("汽油")) { + userBalanceService.growthValue(userid,store.getChainStoreId(),storeId,"1",oilAmount,"油品订单消费",orderNo); } - //查询会员等级列表信息 - Page page = new Page(1, 20); - LJUserGrade ljUserGrade1 = new LJUserGrade(); - List 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 { + 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); } - // 修改用户成长值 - userBalanceService.updateUserBalance(balance); - - this.insertGrowthValueChange(userid, storeId, addGrowthVal, growthAfter, orderNo); } } @@ -2113,27 +1872,25 @@ public class OilOrderServiceImpl extends ServiceImpl i */ private boolean insertCardBalance(Double amount, Integer userId, Integer storeId, String orderNo) { CardBalanceChange cardBalanceChange = new CardBalanceChange(); - // 根据用户id查询用户余额信息 + // 根据用户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); balance.setCardBalance(afterBalance); -// 修改加油次数 + // 修改加油次数 Integer consumeNum = balance.getConsumeNum(); balance.setConsumeNum(consumeNum + 1); userBalanceService.updateUserBalance(balance); } -// 添加余额记录信息 + // 添加余额记录信息 cardBalanceChange.setUserId(userId); cardBalanceChange.setChangeType("0"); cardBalanceChange.setFromType("油品订单消费"); @@ -2188,16 +1945,6 @@ public class OilOrderServiceImpl extends ServiceImpl i } } - @Resource - OilOrderMapper oilOrderMapper; - @Resource - LJOrderMapper ljOrderMapper; - @Resource - CardValueRecordMapper cardValueRecordMapper; - @Resource - CardFuelRecordMapper cardFuelRecordMapper; - @Resource - LJStaffMapper ljStaffMapper; @Override public Map turnoverStatistics() { @@ -2212,7 +1959,6 @@ public class OilOrderServiceImpl extends ServiceImpl i // 屯油卡流水 Map fuelStreamMap = cardFuelRecordMapper.fuelStream(storeId); // 计算总流水 -// sumStream // 进行Map的合并 Map mergedMap = mergeMaps( oilStreamMap, @@ -2226,7 +1972,6 @@ public class OilOrderServiceImpl extends ServiceImpl i // 数据组装 return stringDoubleMap; -// return mergedMap; } // 员工统计 @@ -2268,16 +2013,12 @@ public class OilOrderServiceImpl extends ServiceImpl i // 油品销售额 @Override public List> oilSales() { - - AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo(); Integer storeId = nowAccountInfo.getStoreId(); List> maps = oilOrderMapper.oilSales(storeId); return maps; } - @Resource - OilNumberMapper oilNumberMapper; // 各油品销售额 @Override @@ -2291,7 +2032,6 @@ public class OilOrderServiceImpl extends ServiceImpl i // 获取所有油品名称 List oilNames = oilNumberMapper.getOilName(storeId); - // 构建结果列表 List> resultList = new ArrayList<>(); @@ -2357,8 +2097,6 @@ public class OilOrderServiceImpl extends ServiceImpl i // 计算环比增长率 double growthRate = (res - last) / last * 100; -// double growthRate = ((res - last) / Math.abs(last)) * 100.0; - // 使用DecimalFormat将结果格式化为两位小数 DecimalFormat decimalFormat = new DecimalFormat("#.##"); @@ -2368,14 +2106,14 @@ public class OilOrderServiceImpl extends ServiceImpl i @Override public Map orderStatistics(OilOrder order) { -//油品笔数 -//油品总金额 -//优惠总额 -//交易数量 -//实收总额 -//微信 -//支付宝 -//现金 + //油品笔数 + //油品总金额 + //优惠总额 + //交易数量 + //实收总额 + //微信 + //支付宝 + //现金 AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo(); Integer storeId = nowAccountInfo.getStoreId(); order.setStoreId(storeId); @@ -2439,7 +2177,7 @@ public class OilOrderServiceImpl extends ServiceImpl i public Map addOrderPos(OilOrderVo oilOrderVo) throws Exception { Map res = new HashMap<>(); AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo(); - // 根据日期生成订单信息 + // 根据日期生成订单信息 SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss"); String timestamp = dateFormat.format(new Date()); String randomString = UUID.randomUUID().toString().replace("-", "").substring(0, 6); @@ -2483,18 +2221,13 @@ public class OilOrderServiceImpl extends ServiceImpl 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.getActiveId(), oilOrderVo.getCouponId(), oilOrderVo.getActiveType(), oilOrderVo.getOrderAmount(), oilOrderVo.getPayAmount(), Integer.valueOf(oilOrderVo.getOils())); + this.updateCardAndActiveById(nowAccountInfo.getStoreId(), oilOrderVo.getUserId(), oilOrderVo.getId()); 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 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)); @@ -2520,7 +2253,7 @@ public class OilOrderServiceImpl extends ServiceImpl i public Map addOrderPosScan(OilOrderVo oilOrderVo) throws Exception { Map res = new HashMap<>(); AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo(); - // 根据日期生成订单信息 + // 根据日期生成订单信息 SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss"); String timestamp = dateFormat.format(new Date()); String randomString = UUID.randomUUID().toString().replace("-", "").substring(0, 6); @@ -2542,7 +2275,6 @@ public class OilOrderServiceImpl extends ServiceImpl i } ReceiveParameterPos receiveParameterPos = new ReceiveParameterPos(); -// receiveParameterPos.setPayType("WECHAT"); receiveParameterPos.setPayType(oilOrderVo.getPayType()); receiveParameterPos.setType("1"); receiveParameterPos.setContent("油品订单"); diff --git a/fuintBackend/fuint-application/src/main/java/com/fuint/pay/controller/PayCenterController.java b/fuintBackend/fuint-application/src/main/java/com/fuint/pay/controller/PayCenterController.java index f1b202368..8385dea1e 100644 --- a/fuintBackend/fuint-application/src/main/java/com/fuint/pay/controller/PayCenterController.java +++ b/fuintBackend/fuint-application/src/main/java/com/fuint/pay/controller/PayCenterController.java @@ -63,9 +63,16 @@ public class PayCenterController extends BaseController { return getSuccessResult("查询成功",payCenterService.cashRegisterSpendWisely(map)); } + /** + * 小程序支付成功后 消费有礼 + * @param map + * @param request + * @return + * @throws Exception + */ @PostMapping("/cashRegisterSpendWiselyApp") public ResponseObject cashRegisterSpendWiselyApp(@RequestBody Map map,HttpServletRequest request) throws Exception { - logger.info("收银台获取可用优惠券参数:{}", map); + logger.info("小程序获取可用优惠券参数:{}", map); return getSuccessResult("查询成功",payCenterService.cashRegisterSpendWiselyApp(map)); }