From 50f5e034649a297c602a0faa223992e4b42db397 Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期二, 09 六月 2020 17:35:36 +0800
Subject: [PATCH] 金额统计
---
fanli/src/main/java/com/yeshi/fanli/util/factory/msg/MsgOrderDetailFactory.java | 261 ++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 261 insertions(+), 0 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/util/factory/msg/MsgOrderDetailFactory.java b/fanli/src/main/java/com/yeshi/fanli/util/factory/msg/MsgOrderDetailFactory.java
index 96588be..7367531 100644
--- a/fanli/src/main/java/com/yeshi/fanli/util/factory/msg/MsgOrderDetailFactory.java
+++ b/fanli/src/main/java/com/yeshi/fanli/util/factory/msg/MsgOrderDetailFactory.java
@@ -1,5 +1,266 @@
package com.yeshi.fanli.util.factory.msg;
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+import org.springframework.transaction.annotation.Transactional;
+
+import com.google.gson.Gson;
+import com.yeshi.fanli.entity.bus.msg.MsgOrderDetail;
+import com.yeshi.fanli.entity.bus.msg.MsgOrderDetail.MsgTypeOrderTypeEnum;
+import com.yeshi.fanli.entity.bus.user.UserInfo;
+import com.yeshi.fanli.util.Constant;
+import com.yeshi.fanli.util.StringUtil;
+import com.yeshi.fanli.util.TimeUtil;
+import com.yeshi.fanli.util.account.UserUtil;
+import com.yeshi.fanli.vo.msg.ClientTextStyleVO;
+import com.yeshi.fanli.vo.msg.CommonMsgItemVO;
+import com.yeshi.fanli.vo.msg.CommonMsgItemVOFactory;
+
public class MsgOrderDetailFactory {
+ /**
+ * 鍒涘缓璁㈠崟琚粺璁℃秷鎭�
+ * @param uid
+ * @param orderId 璁㈠崟鍙�
+ * @param source 璁㈠崟鏉ユ簮锛氭窐瀹濄�佷含涓溿�佸ぉ鐚�
+ * @param type 璁㈠崟绫诲瀷锛氳嚜璐�佸垎浜�佸洟闃�
+ * @param goodsCount 鍟嗗搧鏁伴噺
+ * @param payMoney 浠樻閲戦
+ * @param money 杩斿埄閲戦
+ * @param downTime 涓嬪崟鏃堕棿
+ * @param beiZhu 澶囨敞淇℃伅 - 闈炲繀濉�
+ * @return
+ */
+ @Transactional
+ public static MsgOrderDetail createOrderStatistics(Long uid, String orderId, int source, int type, int goodsCount,
+ BigDecimal payMoney, BigDecimal money, Date downTime, String beiZhu) {
+ if (uid == null || StringUtil.isNullOrEmpty(orderId) || downTime == null)
+ return null;
+
+ String fanliName = "";
+ MsgTypeOrderTypeEnum orderTypeEnum = null;
+ String sourceName = Constant.getSourceName(source);
+ if (Constant.TYPE_REBATE == type) {
+ fanliName = "棰勪及杩斿埄:";
+ sourceName += "-杩斿埄璁㈠崟";
+ orderTypeEnum = MsgTypeOrderTypeEnum.orderStatistics;
+ } else if (Constant.TYPE_SHAER == type) {
+ fanliName = "棰勪及濂栭噾:";
+ sourceName += "-鍒嗕韩璁㈠崟";
+ orderTypeEnum = MsgTypeOrderTypeEnum.orderShare;
+ } else if (Constant.TYPE_INVITE == type) {
+ fanliName = "棰勪及鏀剁泭:";
+ sourceName += "-鍥㈤槦璁㈠崟";
+ orderTypeEnum = MsgTypeOrderTypeEnum.orderInvite;
+ }
+
+ // 娣诲姞鍐呭
+ List<CommonMsgItemVO> listMsg = new ArrayList<>();
+ listMsg.add(CommonMsgItemVOFactory.createMsgItemVO(new ClientTextStyleVO("璁㈠崟璇︽儏", ClientTextStyleVO.COLOR_TITLE),
+ new ClientTextStyleVO(sourceName, ClientTextStyleVO.COLOR_CONTENT)));
+
+ if (Constant.TYPE_INVITE == type) {
+ listMsg.add(CommonMsgItemVOFactory.createMsgItemVO(new ClientTextStyleVO("璁㈠崟鍙�", ClientTextStyleVO.COLOR_TITLE),
+ new ClientTextStyleVO(UserUtil.filterOrderId(orderId), ClientTextStyleVO.COLOR_CONTENT), true));
+ } else {
+ listMsg.add(CommonMsgItemVOFactory.createMsgItemVO(new ClientTextStyleVO("璁㈠崟鍙�", ClientTextStyleVO.COLOR_TITLE),
+ new ClientTextStyleVO(orderId, ClientTextStyleVO.COLOR_CONTENT), true));
+ }
+
+ listMsg.add(CommonMsgItemVOFactory.createMsgItemVO(new ClientTextStyleVO("涓嬪崟鏃堕棿", ClientTextStyleVO.COLOR_TITLE),
+ new ClientTextStyleVO(TimeUtil.formatDate(downTime), ClientTextStyleVO.COLOR_CONTENT)));
+
+ List<ClientTextStyleVO> contentList = new ArrayList<>();
+ contentList.add(new ClientTextStyleVO("鍏�", ClientTextStyleVO.COLOR_CONTENT));
+ contentList.add(new ClientTextStyleVO(goodsCount + "", ClientTextStyleVO.COLOR_HIGHLIGHT_CONTENT));
+ contentList.add(new ClientTextStyleVO("浠跺晢鍝�", ClientTextStyleVO.COLOR_CONTENT));
+ listMsg.add(CommonMsgItemVOFactory.createMsgItemVO(new ClientTextStyleVO("鍟嗗搧鏁伴噺", ClientTextStyleVO.COLOR_TITLE),
+ contentList));
+
+ List<ClientTextStyleVO> contentList2 = new ArrayList<>();
+ contentList2.add(new ClientTextStyleVO("瀹炰粯娆�:", ClientTextStyleVO.COLOR_CONTENT));
+ contentList2.add(new ClientTextStyleVO("楼" + filterMoney(payMoney), ClientTextStyleVO.COLOR_HIGHLIGHT_CONTENT));
+ contentList2.add(new ClientTextStyleVO("&" + fanliName, ClientTextStyleVO.COLOR_CONTENT));
+ contentList2.add(new ClientTextStyleVO("楼" + filterMoney(money), ClientTextStyleVO.COLOR_HIGHLIGHT_CONTENT));
+ listMsg.add(CommonMsgItemVOFactory.createMsgItemVO(new ClientTextStyleVO("閲戦", ClientTextStyleVO.COLOR_TITLE),
+ contentList2));
+
+ listMsg.add(CommonMsgItemVOFactory.createMsgItemVO(new ClientTextStyleVO("澶囨敞", ClientTextStyleVO.COLOR_TITLE),
+ new ClientTextStyleVO(StringUtil.isNullOrEmpty(beiZhu) ? "鏃�" : beiZhu,
+ ClientTextStyleVO.COLOR_CONTENT)));
+
+ MsgOrderDetail detail = new MsgOrderDetail();
+ detail.setBeiZhu(beiZhu);
+ detail.setCreateTime(new Date());
+ detail.setGoodsCount(goodsCount);
+ detail.setHongBaoMoney(money);
+ detail.setOrderId(orderId);
+ detail.setOrderType(source);
+ detail.setPayMoney(payMoney);
+ detail.setRead(false);
+ detail.setType(orderTypeEnum);
+ detail.setUser(new UserInfo(uid));
+ detail.setExtraInfo(new Gson().toJson(listMsg));
+ return detail;
+ }
+
+ private static BigDecimal filterMoney(BigDecimal money) {
+ if (money == null)
+ return BigDecimal.valueOf(0.00) ;
+ else
+ return money.setScale(2);
+ }
+
+
+ /**
+ * 璁㈠崟鎵惧洖鎴愬姛
+ * @param uid
+ * @param orderId 璁㈠崟鍙�
+ * @param source 璁㈠崟鏉ユ簮锛氭窐瀹濄�佷含涓溿�佸ぉ鐚�
+ * @param type 璁㈠崟绫诲瀷锛氳嚜璐�佸垎浜�佸洟闃�
+ * @param goodsCount 鍟嗗搧鏁伴噺
+ * @param payMoney 浠樻閲戦
+ * @param money 杩斿埄閲戦
+ * @param submitTime 鎻愪氦鏃堕棿
+ * @param beiZhu 澶囨敞淇℃伅 - 闈炲繀濉�
+ * @return
+ */
+ public static MsgOrderDetail createOrderFoundSuccess(Long uid, String orderId, int source, int type, int goodsCount,
+ BigDecimal payMoney, BigDecimal money, Date submitTime, String beiZhu) {
+ if (uid == null || StringUtil.isNullOrEmpty(orderId) || submitTime == null)
+ return null;
+
+ String fanliName = "";
+ String sourceName = Constant.getSourceName(source);
+ if (Constant.TYPE_REBATE == type) {
+ fanliName = "棰勪及杩斿埄:";
+ sourceName += "-杩斿埄璁㈠崟";
+ } else if (Constant.TYPE_SHAER == type) {
+ fanliName = "棰勪及濂栭噾:";
+ sourceName += "-鍒嗕韩璁㈠崟";
+ }
+
+ List<CommonMsgItemVO> listMsg = new ArrayList<>();
+ listMsg.add(CommonMsgItemVOFactory.createMsgItemVO(new ClientTextStyleVO("鎵惧洖鐘舵��", ClientTextStyleVO.COLOR_TITLE),
+ new ClientTextStyleVO("璁㈠崟鎵惧洖鎴愬姛", ClientTextStyleVO.COLOR_CONTENT)));
+
+ listMsg.add(CommonMsgItemVOFactory.createMsgItemVO(new ClientTextStyleVO("璁㈠崟璇︽儏", ClientTextStyleVO.COLOR_TITLE),
+ new ClientTextStyleVO(sourceName, ClientTextStyleVO.COLOR_CONTENT)));
+
+ // 璁㈠崟鍙峰彲鐐瑰嚮
+ listMsg.add(CommonMsgItemVOFactory.createMsgItemVO(new ClientTextStyleVO("璁㈠崟鍙�", ClientTextStyleVO.COLOR_TITLE),
+ new ClientTextStyleVO(orderId, ClientTextStyleVO.COLOR_CONTENT), true));
+
+ listMsg.add(CommonMsgItemVOFactory.createMsgItemVO(new ClientTextStyleVO("鎻愪氦鏃堕棿", ClientTextStyleVO.COLOR_TITLE),
+ new ClientTextStyleVO(TimeUtil.formatDate(submitTime), ClientTextStyleVO.COLOR_CONTENT)));
+
+ List<ClientTextStyleVO> contentList = new ArrayList<>();
+ contentList.add(new ClientTextStyleVO("鍏�", ClientTextStyleVO.COLOR_CONTENT));
+ contentList.add(new ClientTextStyleVO(goodsCount + "", ClientTextStyleVO.COLOR_HIGHLIGHT_CONTENT));
+ contentList.add(new ClientTextStyleVO("浠跺晢鍝�", ClientTextStyleVO.COLOR_CONTENT));
+ listMsg.add(CommonMsgItemVOFactory.createMsgItemVO(new ClientTextStyleVO("鍟嗗搧鏁伴噺", ClientTextStyleVO.COLOR_TITLE),contentList));
+
+ List<ClientTextStyleVO> contentList2 = new ArrayList<>();
+ contentList2.add(new ClientTextStyleVO("瀹炰粯娆�:", ClientTextStyleVO.COLOR_CONTENT));
+ contentList2.add(new ClientTextStyleVO("楼" + filterMoney(payMoney), ClientTextStyleVO.COLOR_HIGHLIGHT_CONTENT));
+ contentList2.add(new ClientTextStyleVO("&" + fanliName, ClientTextStyleVO.COLOR_CONTENT));
+ contentList2.add(new ClientTextStyleVO("楼" + filterMoney(money), ClientTextStyleVO.COLOR_HIGHLIGHT_CONTENT));
+ listMsg.add(CommonMsgItemVOFactory.createMsgItemVO(new ClientTextStyleVO("閲戦", ClientTextStyleVO.COLOR_TITLE),contentList2));
+
+ listMsg.add(CommonMsgItemVOFactory.createMsgItemVO(new ClientTextStyleVO("澶囨敞", ClientTextStyleVO.COLOR_TITLE),
+ new ClientTextStyleVO(StringUtil.isNullOrEmpty(beiZhu)?"鏃�" : beiZhu, ClientTextStyleVO.COLOR_CONTENT)));
+
+
+ MsgOrderDetail detail = new MsgOrderDetail();
+ detail.setOrderId(orderId);
+ detail.setBeiZhu(beiZhu);
+ detail.setCreateTime(new Date());
+ detail.setOrderType(source);
+ detail.setPayMoney(payMoney);
+ detail.setRead(false);
+ detail.setType(MsgTypeOrderTypeEnum.foundSucceed);
+ detail.setUser(new UserInfo(uid));
+ detail.setExtraInfo(new Gson().toJson(listMsg));
+
+ return detail;
+ }
+
+
+
+ /**
+ * 璁㈠崟鎵惧洖澶辫触
+ * @param uid
+ * @param orderId
+ * @param beiZhu
+ * @return
+ */
+ public static MsgOrderDetail createOrderFoundFail(Long uid, String orderId, String beiZhu) {
+ if (uid == null || StringUtil.isNullOrEmpty(orderId))
+ return null;
+
+ List<CommonMsgItemVO> listMsg = new ArrayList<>();
+ listMsg.add(CommonMsgItemVOFactory.createMsgItemVO(new ClientTextStyleVO("鎵惧洖鐘舵��", ClientTextStyleVO.COLOR_TITLE),
+ new ClientTextStyleVO("璁㈠崟鎵惧洖澶辫触", ClientTextStyleVO.COLOR_CONTENT)));
+ listMsg.add(CommonMsgItemVOFactory.createMsgItemVO(new ClientTextStyleVO("璁㈠崟鍙�", ClientTextStyleVO.COLOR_TITLE),
+ new ClientTextStyleVO(orderId, ClientTextStyleVO.COLOR_CONTENT)));
+ listMsg.add(CommonMsgItemVOFactory.createMsgItemVO(new ClientTextStyleVO("鍘熷洜", ClientTextStyleVO.COLOR_TITLE),
+ new ClientTextStyleVO("璇蜂粩缁嗘牳瀵硅鍗曞彿鏄惁杈撳叆閿欒锛屽鏈夌枒闂鑱旂郴浜哄伐瀹㈡湇", ClientTextStyleVO.COLOR_CONTENT)));
+ listMsg.add(CommonMsgItemVOFactory.createMsgItemVO(new ClientTextStyleVO("澶囨敞", ClientTextStyleVO.COLOR_TITLE),
+ new ClientTextStyleVO(StringUtil.isNullOrEmpty(beiZhu)?"鏃�" : beiZhu, ClientTextStyleVO.COLOR_CONTENT)));
+
+ MsgOrderDetail detail = new MsgOrderDetail();
+ detail.setOrderId(orderId);
+ detail.setType(MsgTypeOrderTypeEnum.foundFail);
+ detail.setUser(new UserInfo(uid));
+ detail.setRead(false);
+ detail.setCreateTime(new Date());
+ detail.setExtraInfo(new Gson().toJson(listMsg));
+ return detail;
+ }
+
+
+ /**
+ * 鍟嗗璺戣矾
+ * @param uid
+ * @param orderId
+ * @param orderSource
+ * @param type
+ * @return
+ */
+ public static MsgOrderDetail orderInvalidToBusinessRunning(Long uid, String orderId, int orderSource, int type) {
+ if (uid == null || StringUtil.isNullOrEmpty(orderId))
+ return null;
+
+ String fanliName = "";
+ String sourceName = Constant.getSourceName(orderSource);
+ if (Constant.TYPE_REBATE == type) {
+ fanliName = "杩斿埄璁㈠崟";
+ } else {
+ fanliName = "鍒嗕韩璁㈠崟";
+ }
+
+ List<CommonMsgItemVO> listMsg = new ArrayList<>();
+ listMsg.add(CommonMsgItemVOFactory.createMsgItemVO(new ClientTextStyleVO("璁㈠崟鐘舵��", ClientTextStyleVO.COLOR_TITLE),
+ new ClientTextStyleVO("鍟嗗搴楅摵宸茶"+sourceName+"灏佺锛屽晢鍝佷剑閲戝凡琚喕缁擄紝鏃犳硶缁撶畻浣i噾锛岃鍗曞凡澶辨晥", ClientTextStyleVO.COLOR_CONTENT)));
+ listMsg.add(CommonMsgItemVOFactory.createMsgItemVO(new ClientTextStyleVO("璁㈠崟璇︽儏", ClientTextStyleVO.COLOR_TITLE),
+ new ClientTextStyleVO(fanliName, ClientTextStyleVO.COLOR_CONTENT)));
+ listMsg.add(CommonMsgItemVOFactory.createMsgItemVO(new ClientTextStyleVO("璁㈠崟鍙�", ClientTextStyleVO.COLOR_TITLE),
+ new ClientTextStyleVO(orderId, ClientTextStyleVO.COLOR_CONTENT)));
+ listMsg.add(CommonMsgItemVOFactory.createMsgItemVO(new ClientTextStyleVO("澶囨敞", ClientTextStyleVO.COLOR_TITLE),
+ new ClientTextStyleVO("鏃�", ClientTextStyleVO.COLOR_CONTENT)));
+
+ MsgOrderDetail detail = new MsgOrderDetail();
+ detail.setOrderId(orderId);
+ detail.setOrderType(orderSource);
+ detail.setType(MsgTypeOrderTypeEnum.businessRunning);
+ detail.setUser(new UserInfo(uid));
+ detail.setRead(false);
+ detail.setCreateTime(new Date());
+ detail.setUniquekey(StringUtil.Md5(uid+"&"+ orderId + "&" +orderSource + "&" + MsgTypeOrderTypeEnum.businessRunning.name()));
+ detail.setExtraInfo(new Gson().toJson(listMsg));
+ return detail;
+ }
}
--
Gitblit v1.8.0