From e62b017a25e722591aea4d2137120652f9ecb569 Mon Sep 17 00:00:00 2001 From: xjm Date: Mon, 29 Jul 2024 14:14:55 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=84=E7=A0=82=E7=AB=99=E7=BB=9F=E8=AE=A1?= =?UTF-8?q?=E8=A1=A8=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ssjygl/stat/sale/OrderStatService.java | 27 +++++++++--- .../PrepayCustomerController.java | 7 ++++ .../PrepayCustomerSyncService.java | 42 +++++++++++++++++++ 3 files changed, 71 insertions(+), 5 deletions(-) diff --git a/ssjygl-xsx-common/src/main/java/com/cowr/ssjygl/stat/sale/OrderStatService.java b/ssjygl-xsx-common/src/main/java/com/cowr/ssjygl/stat/sale/OrderStatService.java index 33c8019..1ab0a6a 100644 --- a/ssjygl-xsx-common/src/main/java/com/cowr/ssjygl/stat/sale/OrderStatService.java +++ b/ssjygl-xsx-common/src/main/java/com/cowr/ssjygl/stat/sale/OrderStatService.java @@ -2265,14 +2265,19 @@ public class OrderStatService { } Record rec = new Record() - .set("id", 99).set("name", "石畈处置砂").set("isdeploy", 1).set("del", 0) - .set("id", 98).set("name", "竹瓦处置砂").set("isdeploy", 1).set("del", 0) - .set("id", 97).set("name", "河东湾处置砂").set("isdeploy", 1).set("del", 0); + .set("id", 99).set("name", "石畈处置砂").set("isdeploy", 1).set("del", 0); + List sups = Db.find("select t.*, s.yield from supermarket t \n" + " left join supermarket_yield s on s.supermarket_id = t.id and s.year = ? \n" + " where id <= 6 or id = 11 or id = 12 ", year); if (sups.size() > 0) { sups.add(rec); + sups.add(new Record() + .set("id", 98).set("name", "竹瓦处置砂").set("isdeploy", 1).set("del", 0) + ); + sups.add(new Record() + .set("id", 97).set("name", "河东湾处置砂").set("isdeploy", 1).set("del", 0) + ); } String paramsSql = ""; @@ -2773,6 +2778,8 @@ public class OrderStatService { double all_xsl_6 = 0.0; double all_xsl_11 = 0.0; double all_xsl_12 = 0.0; + double all_xsl_97 = 0.0; + double all_xsl_98 = 0.0; double all_xsl_99 = 0.0; double all_xse_1 = 0.0; double all_xse_2 = 0.0; @@ -2806,6 +2813,8 @@ public class OrderStatService { double xsl_6 = 0.0; double xsl_11 = 0.0; double xsl_12 = 0.0; + double xsl_97 = 0.0; + double xsl_98 = 0.0; double xsl_99 = 0.0; double xse_1 = 0.0; double xse_2 = 0.0; @@ -2833,6 +2842,8 @@ public class OrderStatService { xsl_6 += DataUtil.getDefaultByRecord(r, "xsl_6"); xsl_11 += DataUtil.getDefaultByRecord(r, "xsl_11"); xsl_12 += DataUtil.getDefaultByRecord(r, "xsl_12"); + xsl_97 += DataUtil.getDefaultByRecord(r, "xsl_97"); + xsl_98 += DataUtil.getDefaultByRecord(r, "xsl_98"); xsl_99 += DataUtil.getDefaultByRecord(r, "xsl_99"); xse_1 += DataUtil.getDefaultByRecord(r, "xse_1"); xse_2 += DataUtil.getDefaultByRecord(r, "xse_2"); @@ -2842,8 +2853,8 @@ public class OrderStatService { xse_6 += DataUtil.getDefaultByRecord(r, "xse_6"); xse_11 += DataUtil.getDefaultByRecord(r, "xse_11"); xse_12 += DataUtil.getDefaultByRecord(r, "xse_12"); - xse_97 += DataUtil.getDefaultByRecord(r, "xse_98"); - xse_98 += DataUtil.getDefaultByRecord(r, "xse_97"); + xse_97 += DataUtil.getDefaultByRecord(r, "xse_97"); + xse_98 += DataUtil.getDefaultByRecord(r, "xse_98"); xse_99 += DataUtil.getDefaultByRecord(r, "xse_99"); all_prepay_total_amount += DataUtil.getDefaultByRecord(r, "prepay_total_amount"); @@ -2859,6 +2870,8 @@ public class OrderStatService { all_xsl_6 += DataUtil.getDefaultByRecord(r, "xsl_6"); all_xsl_11 += DataUtil.getDefaultByRecord(r, "xsl_11"); all_xsl_12 += DataUtil.getDefaultByRecord(r, "xsl_12"); + all_xsl_97 += DataUtil.getDefaultByRecord(r, "xsl_97"); + all_xsl_98 += DataUtil.getDefaultByRecord(r, "xsl_98"); all_xsl_99 += DataUtil.getDefaultByRecord(r, "xsl_99"); all_xse_1 += DataUtil.getDefaultByRecord(r, "xse_1"); all_xse_2 += DataUtil.getDefaultByRecord(r, "xse_2"); @@ -2886,6 +2899,8 @@ public class OrderStatService { record.set("xsl_6", xsl_6); record.set("xsl_11", xsl_11); record.set("xsl_12", xsl_12); + record.set("xsl_97", xsl_97); + record.set("xsl_98", xsl_98); record.set("xsl_99", xsl_99); record.set("xse_1", xse_1); record.set("xse_2", xse_2); @@ -2938,6 +2953,8 @@ public class OrderStatService { record.set("xsl_6", all_xsl_6); record.set("xsl_11", all_xsl_11); record.set("xsl_12", all_xsl_12); + record.set("xsl_97", all_xsl_97); + record.set("xsl_98", all_xsl_98); record.set("xsl_99", all_xsl_99); record.set("xse_1", all_xse_1); record.set("xse_2", all_xse_2); diff --git a/ssjygl-xsx-service/src/main/java/com/cowr/service/ssjygl/prepay/prepaycustomer/PrepayCustomerController.java b/ssjygl-xsx-service/src/main/java/com/cowr/service/ssjygl/prepay/prepaycustomer/PrepayCustomerController.java index a73f360..4c63394 100644 --- a/ssjygl-xsx-service/src/main/java/com/cowr/service/ssjygl/prepay/prepaycustomer/PrepayCustomerController.java +++ b/ssjygl-xsx-service/src/main/java/com/cowr/service/ssjygl/prepay/prepaycustomer/PrepayCustomerController.java @@ -2,7 +2,9 @@ package com.cowr.service.ssjygl.prepay.prepaycustomer; import com.cowr.common.validator.CustomerIdValidator; import com.cowr.common.view.Result; +import com.cowr.service.ssjygl.main.AuthInterceptor; import com.jfinal.aop.Before; +import com.jfinal.aop.Clear; import com.jfinal.core.Controller; public class PrepayCustomerController extends Controller { @@ -11,4 +13,9 @@ public class PrepayCustomerController extends Controller { public void pushPrepayCustomer() { renderJson(Result.object(PrepayCustomerSyncService.me.pushPrepayCustomer(getInt("customer_id")))); } + @Clear(AuthInterceptor.class) + public void updatePrepayCustomerSurplus() { + PrepayCustomerSyncService.me.updatePrepayCustomerSurplus(); + renderJson(Result.success()); + } } diff --git a/ssjygl-xsx-service/src/main/java/com/cowr/service/ssjygl/prepay/prepaycustomer/PrepayCustomerSyncService.java b/ssjygl-xsx-service/src/main/java/com/cowr/service/ssjygl/prepay/prepaycustomer/PrepayCustomerSyncService.java index fba8703..fdf1a3b 100644 --- a/ssjygl-xsx-service/src/main/java/com/cowr/service/ssjygl/prepay/prepaycustomer/PrepayCustomerSyncService.java +++ b/ssjygl-xsx-service/src/main/java/com/cowr/service/ssjygl/prepay/prepaycustomer/PrepayCustomerSyncService.java @@ -6,10 +6,17 @@ import com.cowr.model.SyncTask; import com.cowr.service.ssjygl.base.BaseSyncService; import com.cowr.service.ssjygl.main.Config; import com.cowr.service.ssjygl.synctask.SyncTaskService; +import com.jfinal.log.Log; +import com.jfinal.plugin.activerecord.Db; +import com.jfinal.plugin.activerecord.Record; import com.jfinal.plugin.redis.Redis; +import org.apache.commons.collections4.CollectionUtils; + +import java.util.List; public class PrepayCustomerSyncService extends BaseSyncService { public static PrepayCustomerSyncService me = new PrepayCustomerSyncService(); + private static Log log = Log.getLog(PrepayCustomerSyncService.class); public String redisbasekey() { @@ -38,4 +45,39 @@ public class PrepayCustomerSyncService extends BaseSyncService { return SyncTaskService.me.save(synctask); } + + // 更新所有错误余额的用户 + public void updatePrepayCustomerSurplus() { + List list = Db.find("SELECT\n" + + "\tc.id,\n" + + "\tIF(c.id = 225,IFNULL(pd.amount,0) - IFNULL(rd.amount,0) - IFNULL(o.amount,0),\n" + + "\tIFNULL(pd.amount,0) - IFNULL(rd.amount,0) - IFNULL(o.amount,0)) amount1\n" + + "FROM\n" + + "\tprepay_customer pc\n" + + "\tLEFT JOIN customer c ON pc.customer_id = c.id\n" + + "\tLEFT JOIN ( SELECT customer_id, sum( amount ) amount FROM prepay_detail WHERE state = 2 GROUP BY customer_id ) pd ON pd.customer_id = c.id\n" + + "\tLEFT JOIN ( SELECT customer_id, sum( amount ) amount FROM refund_detail WHERE state = 3 GROUP BY customer_id ) rd ON rd.customer_id = c.id\n" + + "\tLEFT JOIN ( SELECT customer_id, sum( presell_amount ) amount FROM presell_order WHERE del = 0 GROUP BY customer_id ) po ON po.customer_id = c.id\n" + + "\tLEFT JOIN ( SELECT customer_id, sum( weight ) weight, sum( total_price ) amount FROM order_temp WHERE state = 5 GROUP BY customer_id ) o ON o.customer_id = c.id \n" + + "where (\tpc.surplus - IF(c.id = 225,IFNULL(pd.amount,0) - IFNULL(rd.amount,0) - IFNULL(o.amount,0),\n" + + "\tIFNULL(pd.amount,0) - IFNULL(rd.amount,0) - IFNULL(o.amount,0))) != 0\n" + + "GROUP BY\n" + + "\tc.id,\n" + + "\tc.`name`;"); + if (CollectionUtils.isNotEmpty(list)){ + for (Record record : list) { + PrepayCustomer prepayCustomer = PrepayCustomer.dao.findFirst("select * from prepay_customer where customer_id = ? ", record.getInt("id")); + prepayCustomer.setSurplus(record.getBigDecimal("amount1")); + prepayCustomer.update(); + + SyncTask synctask = new SyncTask(); + synctask.addUpdateData(prepayCustomer); + + SyncTaskService.me.save(synctask); + + log.info("修改用户的余额: " + prepayCustomer.getCustomerId() + "_" + prepayCustomer.getSurplus()); + + } + } + } }