From c671763676915a5bc4868bfb9bee1375aac02f36 Mon Sep 17 00:00:00 2001 From: wuwenxiong <646448316@qq.com> Date: Mon, 14 Feb 2022 15:43:56 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A2=84=E4=BB=98=E6=8F=90=E8=B4=A7=E5=8D=95?= =?UTF-8?q?=E7=BB=93=E7=AE=97=E6=97=B6=E4=BD=99=E9=A2=9D=E5=88=A4=E6=96=AD?= =?UTF-8?q?=E6=94=B9=E4=B8=BA=E8=AF=A5=E8=B4=A6=E6=88=B7=E4=B8=8B=E7=9A=84?= =?UTF-8?q?=E2=80=9C=E9=A2=84=E5=94=AE=E4=BD=99=E9=A2=9D=E2=80=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../presellorder/PresellOrderService.java | 53 +++++++++++++++++++ .../order/ordertemp/OrderTempSyncService.java | 2 +- 2 files changed, 54 insertions(+), 1 deletion(-) diff --git a/ssjygl-xsx-common/src/main/java/com/cowr/ssjygl/presellorder/PresellOrderService.java b/ssjygl-xsx-common/src/main/java/com/cowr/ssjygl/presellorder/PresellOrderService.java index 9943f81..0a84b6c 100644 --- a/ssjygl-xsx-common/src/main/java/com/cowr/ssjygl/presellorder/PresellOrderService.java +++ b/ssjygl-xsx-common/src/main/java/com/cowr/ssjygl/presellorder/PresellOrderService.java @@ -237,4 +237,57 @@ public class PresellOrderService extends BaseService { return out == null ? new BigDecimal(0) : out; } + + /** + * 根据客户id查询客户的可用余额 + * @param id + * @return + */ + public BigDecimal getPresellCustomerSurplus2ById(Integer id) { + List params = new ArrayList<>(); + params.add(id); + params.add(id); + + String sql = "SELECT\n" + + " IFNULL(\n" + + " (\n" + + " SELECT\n" + + " (\n" + + " IFNULL(\n" + + " (\n" + + " SELECT\n" + + " sum(t.presell_amount)\n" + + " FROM\n" + + " presell_order t\n" + + " WHERE\n" + + " t.del = 0\n" + + " AND t.customer_id = ?\n" + + " ),\n" + + " 0\n" + + " )\n" + + " ) - (\n" + + " IFNULL(\n" + + " (\n" + + " SELECT\n" + + " sum(\n" + + " t.total_price\n" + + " )\n" + + " FROM\n" + + " order_temp t\n" + + " WHERE\n" + + " t.sale_type = 1\n" + + " AND t.state = 5\n" + + " AND t.customer_id = ?\n" + + " ),\n" + + " 0\n" + + " )\n" + + " )\n" + + " ),\n" + + " 0\n" + + " ) AS suplus"; + + BigDecimal out = Db.queryBigDecimal(sql, params.toArray()); + + return out == null ? new BigDecimal(0) : out; + } } diff --git a/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/order/ordertemp/OrderTempSyncService.java b/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/order/ordertemp/OrderTempSyncService.java index d68e1e5..73b29a9 100644 --- a/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/order/ordertemp/OrderTempSyncService.java +++ b/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/order/ordertemp/OrderTempSyncService.java @@ -1127,7 +1127,7 @@ public class OrderTempSyncService { } //账户可用余额 - BigDecimal availableBalance = PresellOrderService.me.getPresellCustomerSurplusById(ordercluster.getCustomerId()); + BigDecimal availableBalance = PresellOrderService.me.getPresellCustomerSurplus2ById(ordercluster.getCustomerId()); if (availableBalance == null || availableBalance.compareTo(min) <= 0) { return Result.failed("客户余额不足"); }