From 254295a0c1913c90029a6411cab85d565ea72f7a Mon Sep 17 00:00:00 2001
From: cun-nan <19819293608@163.com>
Date: Mon, 14 Oct 2024 14:11:37 +0800
Subject: [PATCH] 10.14
---
.../src/views/homeComponents/agent.vue | 19 +-
.../src/views/homeComponents/manage.vue | 19 +-
.../src/views/homeComponents/shopowner.vue | 19 +-
.../service/impl/OilOrderServiceImpl.java | 275 ++++++------------
gasStation-uni/pagesHome/QRcode/QRcode.vue | 2 +-
5 files changed, 118 insertions(+), 216 deletions(-)
diff --git a/fuintAdmin_zt/src/views/homeComponents/agent.vue b/fuintAdmin_zt/src/views/homeComponents/agent.vue
index afb5cd62a..009302168 100644
--- a/fuintAdmin_zt/src/views/homeComponents/agent.vue
+++ b/fuintAdmin_zt/src/views/homeComponents/agent.vue
@@ -138,16 +138,19 @@
-
diff --git a/fuintAdmin_zt/src/views/homeComponents/manage.vue b/fuintAdmin_zt/src/views/homeComponents/manage.vue
index 2688bd0ba..e614b6ced 100644
--- a/fuintAdmin_zt/src/views/homeComponents/manage.vue
+++ b/fuintAdmin_zt/src/views/homeComponents/manage.vue
@@ -148,16 +148,19 @@
-
diff --git a/fuintAdmin_zt/src/views/homeComponents/shopowner.vue b/fuintAdmin_zt/src/views/homeComponents/shopowner.vue
index 3eec88059..2eb0c3335 100644
--- a/fuintAdmin_zt/src/views/homeComponents/shopowner.vue
+++ b/fuintAdmin_zt/src/views/homeComponents/shopowner.vue
@@ -131,16 +131,19 @@
硬件设备
-
-
-
-
-
-
-
![]()
+
+
+
+
+
+
+
+
![]()
+
+
{{ item.name }}
-
{{ item.name }}
+
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 b1c4c2196..2c2c14fd8 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
@@ -438,7 +438,7 @@ public class OilOrderServiceImpl extends ServiceImpl i
Integer staffId = null;
if (ObjectUtil.isNotEmpty(map.get("staffId"))) {
staffId = Integer.valueOf(map.get("staffId"));
- }else {
+ } else {
staffId = nowAccountInfo.getStaffId();
}
// 会员消费金额(储值卡需要减少的金额)
@@ -456,7 +456,7 @@ public class OilOrderServiceImpl extends ServiceImpl i
isMember = true;
}
// 使用积分数量
- Integer usePoint = Integer.valueOf(ObjectUtil.isNotEmpty(map.get("usePoint")) ? map.get("usePoint") :"0");
+ Integer usePoint = Integer.valueOf(ObjectUtil.isNotEmpty(map.get("usePoint")) ? map.get("usePoint") : "0");
// 积分金额
Double pointAmount = Double.valueOf(ObjectUtil.isNotEmpty(map.get("pointAmount")) ? map.get("pointAmount") : "0.0");
// 终端
@@ -493,20 +493,20 @@ public class OilOrderServiceImpl extends ServiceImpl i
}
// 查看会员储值卡余额是否足够付款
- if (payType.equals("card_value")){
- if (ObjectUtil.isEmpty(userId)){
+ if (payType.equals("card_value")) {
+ if (ObjectUtil.isEmpty(userId)) {
orders.put("error", "请先选择会员信息");
return orders;
}
UserBalance userBalance = userBalanceService.selectUserBalance(userId, nowAccountInfo.getChainStoreId());
- if (userBalance.getCardBalance() oilIds = cardValueRuleService.getOilIds(storeId);
boolean flag = false;
for (String oilId : oilIds) {
- if (oilId.equals(JSONObject.parseObject(oilOrder).get("oils").toString())){
+ if (oilId.equals(JSONObject.parseObject(oilOrder).get("oils").toString())) {
flag = true;
}
}
@@ -517,13 +517,13 @@ public class OilOrderServiceImpl extends ServiceImpl i
}
// 查看会员囤油卡余额是否足够付款
- if (payType.equals("fule_card")){
- if (ObjectUtil.isEmpty(userId)){
+ if (payType.equals("fule_card")) {
+ if (ObjectUtil.isEmpty(userId)) {
orders.put("error", "请先选择会员信息");
return orders;
}
Double fuelAmount = userFuelService.selectByUserIdAndOilId(userId, Integer.valueOf(JSONObject.parseObject(oilOrder).get("oils").toString()), storeId);
- if (fuelAmount i
if (payType.equals("CASH") || payType.equals("after_pay") || payType.equals("card_value")) {
order.setPayTime(new Date());
order.setOrderStatus("paid");
- if(ObjectUtil.isNotEmpty(userId)) this.insertCardBalance(consumeAmount, userId, storeId, orderNo);
+ if (ObjectUtil.isNotEmpty(userId)) this.insertCardBalance(consumeAmount, userId, storeId, orderNo);
this.addOilTracks(order, storeId);
if (ObjectUtil.isNotEmpty(userId)) {
this.updateGrowthValue(oilAmount, oilActualPay, userId, Integer.valueOf(jsonObject.get("oils").toString()), storeId, orderNo);
@@ -628,7 +628,7 @@ public class OilOrderServiceImpl extends ServiceImpl i
}
baseMapper.insert(order);
- if (order.getOrderStatus().equals("paid")){
+ if (order.getOrderStatus().equals("paid")) {
this.updateCardAndActiveById(storeId, userId, order.getId());
}
}
@@ -747,12 +747,11 @@ public class OilOrderServiceImpl extends ServiceImpl i
public void updateCardAndActiveById(Integer storeId, Integer userId, Integer orderId) {
if (ObjectUtil.isNotEmpty(userId)) {
Map map = new HashMap<>();
- map.put("userId",userId.toString());
- map.put("storeId",storeId.toString());
- map.put("orderId",orderId.toString());
+ map.put("userId", userId.toString());
+ map.put("storeId", storeId.toString());
+ map.put("orderId", orderId.toString());
payCenterService.cashRegisterSpendWisely(map);
}
-
}
@Override
@@ -763,10 +762,10 @@ public class OilOrderServiceImpl extends ServiceImpl i
// 油品订单金额
Double oilAmount = Double.valueOf(map.get("oilAmount"));
// 将油品订单信息的json数据转换为数组
- List oilOrders = null;
+ JSONObject oilOrders = null;
- if (!map.get("oilOrder").equals("[]")) {
- oilOrders = JSONArray.parseArray(map.get("oilOrder"), JSONObject.class);
+ if (ObjectUtil.isNotEmpty(map.get("oilOrder"))) {
+ oilOrders = JSONObject.parseObject(map.get("oilOrder"));
// 二维码支付
if (authCode.contains("9E")) {
String[] split = authCode.split("9E");
@@ -1134,7 +1133,7 @@ public class OilOrderServiceImpl extends ServiceImpl i
* @param oilOrders 油品订单
* @return 是否成功
*/
- private Map updateUserBalanceAndInsetOrder1(int userId, Map map, Double oilAmount, List oilOrders, Integer storeId) {
+ private Map updateUserBalanceAndInsetOrder1(int userId, Map map, Double oilAmount, JSONObject oilOrders, Integer storeId) {
Map res = new HashMap<>();
LJStore store = storeService.selectStoreByStoreId(storeId);
// 根据userId查询用户储值卡信息
@@ -1149,180 +1148,74 @@ public class OilOrderServiceImpl extends ServiceImpl i
String orderNo = "2345" + timestamp + randomString;
AccountInfo accountInfo = TokenUtil.getNowAccountInfo();
+ // 油品实付金额
+ Double oilActualPay = Double.valueOf(map.get("oilActualPay"));
+ // 储值卡消费金额 没有默认传0
+ Double balanceAmount = Double.valueOf(ObjectUtil.isNotEmpty(map.get("balanceAmount")) ? map.get("balanceAmount") : "0");
+ // 囤油卡消费升数 没有默认传0
+ Double oilCardAmount = Double.valueOf(ObjectUtil.isNotEmpty(map.get("oilCardAmount")) ? map.get("oilCardAmount") : "0");
+ // 储值卡余额
Double cardBalance = balance.getCardBalance();
- CardFuelRecord cardFuelRecord = new CardFuelRecord();
- cardFuelRecord.setMtUserId(userId);
- List recordByUserId = cardFuelRecordService.getRecordByUserId(cardFuelRecord);
+ // 判断油品消费升数是否可使用
+ Double fuelAmount = userFuelService.selectByUserIdAndOilId(userId, Integer.valueOf(oilOrders.get("oils").toString()), storeId);
- // 锁价后应付金额
- Double lockupAmount = 0.0;
- for (CardFuelRecord fuelRecord : recordByUserId) {
- for (int i = 0; i < oilOrders.size(); i++) {
- if (fuelRecord.getOilName().equals(oilOrders.get(i).get("oilName"))) {
- lockupAmount += fuelRecord.getLockupPrice() * Double.valueOf(oilOrders.get(i).get("liters").toString());
- }
- }
+ if (fuelAmount < oilCardAmount && cardBalance < oilActualPay) {
+ res.put("error", "余额不足,请分开支付");
+ return res;
}
- String status = "unpaid";
-
- if (lockupAmount > 0.0) {
- OilOrder order = new OilOrder();
- OilOrder oilOrder = null;
-
- // 添加收银台订单信息
- CashierOrder cashierOrder = new CashierOrder();
- boolean flag = false;
- if (cardBalance >= lockupAmount) {
- flag = true;
- status = "paid";
- } else {
- flag = false;
- status = "payFail";
- }
- Double oilLiters = 0.0;
- for (int i = 0; i < oilOrders.size(); i++) {
- Double amount = Double.valueOf(oilOrders.get(i).get("amount").toString());
- Double oilPrice = Double.valueOf(oilOrders.get(i).get("oilPrice").toString());
- Double oilNum = amount / oilPrice;
- oilLiters += oilNum;
- if (i == 0) {
- order.setOrderType("主订单");
- order.setOrderAmount(amount);
- order.setPayAmount(amount);
- order.setOrderNo(orderNo);
- } else {
- order.setOrderType("子订单");
- order.setOrderAmount(amount);
- order.setPayAmount(0.0);
- order.setOrderNo(orderNo + "1");
- }
- order.setStoreId(accountInfo.getStoreId());
- order.setUserId(userId);
- order.setCommissionAmount(Double.valueOf(map.get("commissionAmount")));
- if (ObjectUtil.isNotEmpty(map.get("staffId")))
- order.setStaffId(Integer.valueOf(map.get("staffId")));
- order.setTerminal(map.get("terminal"));
- order.setOils((String) oilOrders.get(i).get("oilName"));
- order.setOilGunNum(oilOrders.get(i).get("gunName").toString());
- order.setOilNum(oilNum);
- order.setPayUser(userVo1.getMobile());
- order.setPayType(map.get("payType"));
- order.setInvoicing("未开票");
- order.setOrderStatus(status);
- if (flag) order.setPayTime(new Date());
-
- this.addOilTrack(oilOrders.get(i), accountInfo.getStoreId());
- if (ObjectUtil.isNotEmpty(this.selectOilOrderByOrderNo(orderNo))) {
- baseMapper.updateById(order);
- } else {
- baseMapper.insert(order);
- }
-
- oilOrder = this.selectOilOrderByOrderNo(orderNo);
- this.updateGrowthValue1(oilAmount, 0.0, userId, Integer.valueOf(oilOrder.getOils()), 0.0, storeId, orderNo);
- }
-
- if (flag) {
-
- if (ObjectUtil.isNotEmpty(map.get("staffId")))
- cashierOrder.setStaffId(Integer.valueOf(map.get("staffId")));
- cashierOrder.setStoreId(accountInfo.getStoreId());
- cashierOrder.setPayUser(userVo1.getMobile());
- cashierOrder.setAmount(oilAmount);
- cashierOrder.setOilPayAmount(oilAmount);
- cashierOrder.setPayAmount(oilAmount);
- cashierOrder.setStatus(status);
- cashierOrder.setPayTime(new Date());
- cashierOrder.setOrderNo(orderNo);
- cashierOrder.setOilOrderAmount(oilAmount);
- cashierOrder.setTerminal(map.get("terminal"));
- cashierOrder.setOilOrderId(oilOrder.getId());
- cashierOrder.setSeekZero(0.0);
- cashierOrder.setPayType(map.get("payType"));
- cashierOrderService.insertCashierOrder(cashierOrder);
- this.insertAllOrderInfo(orderNo, storeId, oilAmount, oilAmount, 0.0, map.get("payType"), userId, "PC", "1", status);
- if (ObjectUtil.isNotEmpty(map.get("staffId")))
- staffCommissionService.countStaffCommission(Integer.valueOf(map.get("staffId")), storeId, oilAmount, oilAmount, "1", orderNo);
- res.put("success", "success");
- } else {
- res.put("error", "储值卡余额不足!");
- }
-
+ OilOrder order = new OilOrder();
+ // 添加收银台/油品订单信息
+ CashierOrder cashierOrder = new CashierOrder();
+ Double amount = oilAmount;
+ Double oilPrice = Double.valueOf(oilOrders.get("oilPrice").toString());
+ Double oilNum = amount / oilPrice;
+ order.setOrderType("主订单");
+ order.setOrderAmount(amount);
+ order.setPayAmount(oilActualPay);
+ order.setOrderNo(orderNo);
+ order.setStoreId(accountInfo.getStoreId());
+ order.setUserId(userId);
+ order.setStaffId(accountInfo.getStaffId());
+ order.setTerminal(map.get("terminal"));
+ order.setOils(oilOrders.get("oils").toString());
+ order.setOilGunNum(oilOrders.get("oilGunNum").toString());
+ order.setOilNum(oilNum);
+ order.setPayUser(userVo1.getMobile());
+ order.setPayType(map.get("payType"));
+ order.setInvoicing("未开票");
+ order.setOrderStatus("paid");
+ order.setPayTime(new Date());
+ this.addOilTracks(order, accountInfo.getStoreId());
+ if (ObjectUtil.isNotEmpty(this.selectOilOrderByOrderNo(orderNo))) {
+ baseMapper.updateById(order);
} else {
- if (cardBalance >= oilAmount) {
- // 添加油品订单信息
- OilOrder order = new OilOrder();
- Double oilLiters = 0.0;
- for (int i = 0; i < oilOrders.size(); i++) {
- Double amount = Double.valueOf(oilOrders.get(i).get("amount").toString());
- Double oilPrice = Double.valueOf(oilOrders.get(i).get("oilPrice").toString());
- Double oilNum = amount / oilPrice;
- oilLiters += oilNum;
- if (i == 0) {
- order.setOrderType("主订单");
- order.setOrderAmount(amount);
- order.setPayAmount(amount);
- order.setOrderNo(orderNo);
- } else {
- order.setOrderType("子订单");
- order.setOrderAmount(amount);
- order.setPayAmount(0.0);
- order.setOrderNo(orderNo + "1");
- }
- order.setStoreId(accountInfo.getStoreId());
- order.setUserId(userId);
- order.setCommissionAmount(Double.valueOf(map.get("commissionAmount")));
- if (ObjectUtil.isNotEmpty(map.get("staffId")))
- order.setStaffId(Integer.valueOf(map.get("staffId")));
- order.setTerminal(map.get("terminal"));
- order.setOils((String) oilOrders.get(i).get("oilName"));
- order.setOilGunNum(oilOrders.get(i).get("gunName").toString());
- order.setOilNum(oilNum);
- order.setPayUser(userVo1.getMobile());
- order.setPayType(map.get("payType"));
- order.setInvoicing("未开票");
- order.setOrderStatus("paid");
- order.setPayTime(new Date());
-
- this.addOilTrack(oilOrders.get(i), accountInfo.getStoreId());
- if (ObjectUtil.isNotEmpty(this.selectOilOrderByOrderNo(orderNo))) {
- baseMapper.updateById(order);
- } else {
- baseMapper.insert(order);
- }
- }
- OilOrder oilOrder = this.selectOilOrderByOrderNo(orderNo);
-
- // 添加收银台订单信息
- CashierOrder cashierOrder = new CashierOrder();
- if (ObjectUtil.isNotEmpty(map.get("staffId")))
- cashierOrder.setStaffId(Integer.valueOf(map.get("staffId")));
- cashierOrder.setStoreId(accountInfo.getStoreId());
- cashierOrder.setPayUser(userVo1.getMobile());
- cashierOrder.setAmount(oilAmount);
- cashierOrder.setOilPayAmount(oilAmount);
- cashierOrder.setPayAmount(oilAmount);
- cashierOrder.setStatus("paid");
- cashierOrder.setPayTime(new Date());
- cashierOrder.setOrderNo(orderNo);
- cashierOrder.setOilOrderAmount(oilAmount);
- cashierOrder.setTerminal(map.get("terminal"));
- cashierOrder.setOilOrderId(oilOrder.getId());
- cashierOrder.setSeekZero(0.0);
- cashierOrder.setPayType(map.get("payType"));
- cashierOrderService.insertCashierOrder(cashierOrder);
- this.updateGrowthValue1(oilAmount, oilAmount, userId, Integer.valueOf(oilOrder.getOils()), 0.0, storeId, orderNo);
- 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);
- res.put("success", "success");
- } else {
- res.put("error", "储值卡余额不足!");
- }
+ baseMapper.insert(order);
}
+
+ this.updateGrowthValue1(oilAmount, 0.0, userId, Integer.valueOf(order.getOils()), 0.0, storeId, orderNo);
+
+ cashierOrder.setStaffId(order.getStaffId());
+ cashierOrder.setStoreId(accountInfo.getStoreId());
+ cashierOrder.setPayUser(userVo1.getMobile());
+ cashierOrder.setAmount(oilAmount);
+ cashierOrder.setOilPayAmount(oilAmount);
+ cashierOrder.setPayAmount(oilAmount);
+ cashierOrder.setStatus("paid");
+ cashierOrder.setPayTime(new Date());
+ cashierOrder.setOrderNo(orderNo);
+ cashierOrder.setOilOrderAmount(oilAmount);
+ cashierOrder.setTerminal(map.get("terminal"));
+ cashierOrder.setOilOrderId(order.getId());
+ cashierOrder.setSeekZero(0.0);
+ cashierOrder.setPayType(map.get("payType"));
+ cashierOrderService.insertCashierOrder(cashierOrder);
+ this.insertAllOrderInfo(orderNo, storeId, oilAmount, oilAmount, 0.0, map.get("payType"), userId, "PC", "1", "paid");
+ staffCommissionService.countStaffCommission(accountInfo.getStaffId(), storeId, oilAmount, oilAmount, "1", orderNo);
+ res.put("success", "success");
+
return res;
}
@@ -1468,13 +1361,13 @@ public class OilOrderServiceImpl extends ServiceImpl i
OilName oilName = oilNameService.selectOilNameById(oilId);
LJStore store = storeService.selectStoreByStoreId(storeId);
if (oilName.getOilType().equals("汽油")) {
- userBalanceService.growthValue(userid,store.getChainStoreId(),storeId,"1",oilAmount,"油品订单消费",orderNo);
+ userBalanceService.growthValue(userid, store.getChainStoreId(), storeId, "1", oilAmount, "油品订单消费", orderNo);
}
if (oilName.getOilType().equals("柴油")) {
- userBalanceService.growthValue(userid,store.getChainStoreId(),storeId,"2",oilAmount,"油品订单消费",orderNo);
+ userBalanceService.growthValue(userid, store.getChainStoreId(), storeId, "2", oilAmount, "油品订单消费", orderNo);
}
if (oilName.getOilType().equals("天然气")) {
- userBalanceService.growthValue(userid,store.getChainStoreId(),storeId,"3",oilAmount,"油品订单消费",orderNo);
+ userBalanceService.growthValue(userid, store.getChainStoreId(), storeId, "3", oilAmount, "油品订单消费", orderNo);
}
this.insertCardBalance(oilActualPay, userid, storeId, orderNo);
}
@@ -1893,13 +1786,13 @@ public class OilOrderServiceImpl extends ServiceImpl i
OilName oilName = oilNameService.selectOilNameById(oilId);
LJStore store = storeService.selectStoreByStoreId(storeId);
if (oilName.getOilType().equals("汽油")) {
- userBalanceService.growthValue(userid,store.getChainStoreId(),storeId,"1",oilAmount,"油品订单消费",orderNo);
+ userBalanceService.growthValue(userid, store.getChainStoreId(), storeId, "1", oilAmount, "油品订单消费", orderNo);
}
if (oilName.getOilType().equals("柴油")) {
- userBalanceService.growthValue(userid,store.getChainStoreId(),storeId,"2",oilAmount,"油品订单消费",orderNo);
+ userBalanceService.growthValue(userid, store.getChainStoreId(), storeId, "2", oilAmount, "油品订单消费", orderNo);
}
if (oilName.getOilType().equals("天然气")) {
- userBalanceService.growthValue(userid,store.getChainStoreId(),storeId,"3",oilAmount,"油品订单消费",orderNo);
+ userBalanceService.growthValue(userid, store.getChainStoreId(), storeId, "3", oilAmount, "油品订单消费", orderNo);
}
}
}
diff --git a/gasStation-uni/pagesHome/QRcode/QRcode.vue b/gasStation-uni/pagesHome/QRcode/QRcode.vue
index e60f30f54..571a16eb9 100644
--- a/gasStation-uni/pagesHome/QRcode/QRcode.vue
+++ b/gasStation-uni/pagesHome/QRcode/QRcode.vue
@@ -109,7 +109,7 @@
deduction: [{
key: "oilStorageCard",
value: "优先使用囤油卡付款",
- desc: "若囤油卡升数不足进行支付,则会与储值卡组合付款"
+ desc: "若囤油卡升数不足时,则无法使用囤油卡支付"
},
{
key: "balance",