From 5a0d041f9cc8bedf8531cddd075c84f7941798e6 Mon Sep 17 00:00:00 2001 From: kira <164851225@qq.com> Date: Thu, 2 Aug 2018 10:12:06 +0800 Subject: [PATCH 01/14] fixbug --- .../com/royalpay/payment/manage/task/PostponeClientTask.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/java/au/com/royalpay/payment/manage/task/PostponeClientTask.java b/src/main/java/au/com/royalpay/payment/manage/task/PostponeClientTask.java index 34f765665..36365eb9e 100644 --- a/src/main/java/au/com/royalpay/payment/manage/task/PostponeClientTask.java +++ b/src/main/java/au/com/royalpay/payment/manage/task/PostponeClientTask.java @@ -22,6 +22,7 @@ import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; +import org.springframework.util.StringUtils; import java.util.Date; import java.util.HashMap; @@ -111,6 +112,9 @@ public class PostponeClientTask { JSONObject client = clientManager.getClientInfo(account.getIntValue("client_id")); try { + if(StringUtils.isEmpty(account.getString("wechat_openid"))){ + return; + } MpWechatApi api = mpWechatApiProvider.getApiFromOpenId(account.getString("wechat_openid")); if (api != null) { String templateId = api.getTemplateId("client-postpone"); From 3307ce25b76155b10316e492f2cb81fceb079c42 Mon Sep 17 00:00:00 2001 From: kira <164851225@qq.com> Date: Thu, 2 Aug 2018 10:42:12 +0800 Subject: [PATCH 02/14] fixbug --- .../manage/dev/core/ManualService.java | 9 ++ .../dev/core/impl/ManualServiceimpl.java | 95 +++++++++++++++++++ .../manage/dev/web/ManualController.java | 26 +++++ 3 files changed, 130 insertions(+) create mode 100644 src/main/java/au/com/royalpay/payment/manage/dev/core/ManualService.java create mode 100644 src/main/java/au/com/royalpay/payment/manage/dev/core/impl/ManualServiceimpl.java create mode 100644 src/main/java/au/com/royalpay/payment/manage/dev/web/ManualController.java diff --git a/src/main/java/au/com/royalpay/payment/manage/dev/core/ManualService.java b/src/main/java/au/com/royalpay/payment/manage/dev/core/ManualService.java new file mode 100644 index 000000000..cc083f972 --- /dev/null +++ b/src/main/java/au/com/royalpay/payment/manage/dev/core/ManualService.java @@ -0,0 +1,9 @@ +package au.com.royalpay.payment.manage.dev.core; + +/** + * @author kira + * @date 2018/8/2 + */ +public interface ManualService { + void clientPostpone(); +} diff --git a/src/main/java/au/com/royalpay/payment/manage/dev/core/impl/ManualServiceimpl.java b/src/main/java/au/com/royalpay/payment/manage/dev/core/impl/ManualServiceimpl.java new file mode 100644 index 000000000..6218b5be9 --- /dev/null +++ b/src/main/java/au/com/royalpay/payment/manage/dev/core/impl/ManualServiceimpl.java @@ -0,0 +1,95 @@ +package au.com.royalpay.payment.manage.dev.core.impl; + +import au.com.royalpay.payment.manage.dev.core.ManualService; +import au.com.royalpay.payment.manage.mappers.system.ClientAccountMapper; +import au.com.royalpay.payment.manage.mappers.system.ClientRateMapper; +import au.com.royalpay.payment.manage.merchants.core.ClientModifySupport; +import au.com.royalpay.payment.manage.merchants.entity.impls.SwitchPermissionModify; +import au.com.royalpay.payment.manage.task.PostponeClientTask; +import au.com.royalpay.payment.tools.scheduler.SynchronizedScheduler; + +import com.alibaba.fastjson.JSONObject; + +import org.apache.commons.lang3.time.DateFormatUtils; +import org.apache.commons.lang3.time.DateUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; + +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import javax.annotation.Resource; + +/** + * @author kira + * @date 2018/8/2 + */ +@Service +public class ManualServiceimpl implements ManualService { + + Logger logger = LoggerFactory.getLogger(PostponeClientTask.class); + @Resource + private ClientRateMapper clientRateMapper; + @Resource + private ClientAccountMapper clientAccountMapper; + @Resource + private SynchronizedScheduler synchronizedScheduler; + @Resource + private ClientModifySupport clientModifySupport; + + @Override + public void clientPostpone() { + logger.info("start doing client postpone"); + synchronizedScheduler.executeProcess("manage_task:postPoneClient", 120_000, () -> { + Date now = new Date(); + Date tomorrow = DateUtils.addDays(now, 1); + Date yearTomorrow = DateUtils.addYears(tomorrow, 1); + String expireDate = DateFormatUtils.format(yearTomorrow, "yyyy-MM-dd"); + List expiryClient = clientRateMapper.getAllExpiry(now); + + if (CollectionUtils.isEmpty(expiryClient)) { + return; + } + Map expiryClients = new HashMap<>(); + expiryClient.forEach(p -> { + expiryClients.put(p.getInteger("client_id"), p); + }); + expiryClients.values().forEach(p -> { + int client_id = p.getIntValue("client_id"); + List adminAccounts = clientAccountMapper.listAdminAccounts(client_id); + List clientRates = clientRateMapper.maxChannelExpiryTime(client_id, null); + JSONObject wechatRate = clientRateMapper.latestChannelCleanDays("Wechat", p.getIntValue("client_id")); + int cleanDays = 1; + if (wechatRate.getInteger("clean_days") != null) { + cleanDays = wechatRate.getIntValue("clean_days"); + } else { + cleanDays = wechatRate.getIntValue("c_clean_days"); + } + int finalCleanDays = cleanDays; + clientRates.forEach(o -> { + JSONObject record = clientRateMapper.latestExpiryConfig(client_id, o.getString("rate_name")); + record.remove("client_rate_id"); + record.put("active_time", now); + record.put("manager_id", 0); + record.put("expiry_time", yearTomorrow); + record.put("create_time", now); + record.put("update_time", now); + record.put("clean_days", finalCleanDays); + record.put("manager_name", "System"); + record.put("remark", "费率到期系统自动延期1年"); + clientRateMapper.saveRate(record); + + }); + if(p.getBooleanValue("tax_in_surcharge")){ + clientModifySupport.processClientConfigModify(new SwitchPermissionModify(null,p.getString("client_moniker"),"tax_in_surcharge",false)); + } + }); + }); + logger.info("end doing client postpone"); + + } +} diff --git a/src/main/java/au/com/royalpay/payment/manage/dev/web/ManualController.java b/src/main/java/au/com/royalpay/payment/manage/dev/web/ManualController.java new file mode 100644 index 000000000..32892a63f --- /dev/null +++ b/src/main/java/au/com/royalpay/payment/manage/dev/web/ManualController.java @@ -0,0 +1,26 @@ +package au.com.royalpay.payment.manage.dev.web; + +import au.com.royalpay.payment.manage.dev.core.ManualService; +import au.com.royalpay.payment.manage.permission.manager.ManagerMapping; +import au.com.royalpay.payment.tools.permission.enums.ManagerRole; + +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +/** + * Created by yixian on 2017-01-25. + */ +@RestController +@ManagerMapping(role = ManagerRole.DEVELOPER,value = "/dev/manual") +public class ManualController { + @Resource + private ManualService manualService; + + @RequestMapping(method = RequestMethod.GET,value = "/client/postpone") + public void clientPostpone(){ + manualService.clientPostpone(); + } +} From 5e0fa354b2a0d0d1c5dd2df32e9de8d46aa37a24 Mon Sep 17 00:00:00 2001 From: kira <164851225@qq.com> Date: Thu, 2 Aug 2018 15:13:28 +0800 Subject: [PATCH 03/14] hide hf exchange rate --- src/main/ui/static/commons/templates/order_detail.html | 2 +- src/main/ui/static/payment/invoice/templates/invoice.html | 2 +- .../ui/static/payment/partner/templates/partner_pay_logs.html | 4 +++- .../payment/tradelog/templates/partner_trade_detail_edit.html | 2 +- .../static/payment/tradelog/templates/partner_trade_logs.html | 4 +++- src/main/ui/static/payment/tradelog/templates/trade_logs.html | 4 +++- .../payment/vipcustomer/templates/vipcustomer_detail.html | 4 +++- 7 files changed, 15 insertions(+), 7 deletions(-) diff --git a/src/main/ui/static/commons/templates/order_detail.html b/src/main/ui/static/commons/templates/order_detail.html index e51a8e8d2..748662a23 100644 --- a/src/main/ui/static/commons/templates/order_detail.html +++ b/src/main/ui/static/commons/templates/order_detail.html @@ -120,7 +120,7 @@

-
+

diff --git a/src/main/ui/static/payment/invoice/templates/invoice.html b/src/main/ui/static/payment/invoice/templates/invoice.html index 113dd5bc0..cf06b87f7 100644 --- a/src/main/ui/static/payment/invoice/templates/invoice.html +++ b/src/main/ui/static/payment/invoice/templates/invoice.html @@ -211,7 +211,7 @@

-

-

+

{{trade.exchange_rate}}

diff --git a/src/main/ui/static/payment/partner/templates/partner_pay_logs.html b/src/main/ui/static/payment/partner/templates/partner_pay_logs.html index 0d5c69752..0055cf480 100644 --- a/src/main/ui/static/payment/partner/templates/partner_pay_logs.html +++ b/src/main/ui/static/payment/partner/templates/partner_pay_logs.html @@ -194,7 +194,9 @@ - + + + diff --git a/src/main/ui/static/payment/tradelog/templates/partner_trade_detail_edit.html b/src/main/ui/static/payment/tradelog/templates/partner_trade_detail_edit.html index 2eb6e0ff9..978617150 100644 --- a/src/main/ui/static/payment/tradelog/templates/partner_trade_detail_edit.html +++ b/src/main/ui/static/payment/tradelog/templates/partner_trade_detail_edit.html @@ -98,7 +98,7 @@
-
+

diff --git a/src/main/ui/static/payment/tradelog/templates/partner_trade_logs.html b/src/main/ui/static/payment/tradelog/templates/partner_trade_logs.html index 50b3dc590..e093dd66e 100644 --- a/src/main/ui/static/payment/tradelog/templates/partner_trade_logs.html +++ b/src/main/ui/static/payment/tradelog/templates/partner_trade_logs.html @@ -332,7 +332,9 @@ - + + + diff --git a/src/main/ui/static/payment/tradelog/templates/trade_logs.html b/src/main/ui/static/payment/tradelog/templates/trade_logs.html index f04435a1e..7dc4e3a21 100644 --- a/src/main/ui/static/payment/tradelog/templates/trade_logs.html +++ b/src/main/ui/static/payment/tradelog/templates/trade_logs.html @@ -360,7 +360,9 @@ - + + + diff --git a/src/main/ui/static/payment/vipcustomer/templates/vipcustomer_detail.html b/src/main/ui/static/payment/vipcustomer/templates/vipcustomer_detail.html index a030da0ff..8b0e25e48 100644 --- a/src/main/ui/static/payment/vipcustomer/templates/vipcustomer_detail.html +++ b/src/main/ui/static/payment/vipcustomer/templates/vipcustomer_detail.html @@ -125,7 +125,9 @@ ng-click="showRefundLog(trade.order_id)">(-{{trade.refund_fee}}) - + + + From c8657980cf89ca7fcf35da474b3e0a50c971d702 Mon Sep 17 00:00:00 2001 From: eason Date: Thu, 2 Aug 2018 16:44:32 +0800 Subject: [PATCH 04/14] =?UTF-8?q?=E4=BC=98=E5=8C=96=20BD=E6=8F=90=E6=88=90?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mappers/payment/TransactionMapper.xml | 40 +++++-------------- 1 file changed, 11 insertions(+), 29 deletions(-) diff --git a/src/main/resources/au/com/royalpay/payment/manage/mappers/payment/TransactionMapper.xml b/src/main/resources/au/com/royalpay/payment/manage/mappers/payment/TransactionMapper.xml index c6911c549..3cb0cd8e4 100644 --- a/src/main/resources/au/com/royalpay/payment/manage/mappers/payment/TransactionMapper.xml +++ b/src/main/resources/au/com/royalpay/payment/manage/mappers/payment/TransactionMapper.xml @@ -504,21 +504,12 @@ + +