From 1ab2f0cd24f9931a99b39ea1b822a86892430028 Mon Sep 17 00:00:00 2001 From: hupeng Date: Fri, 12 Apr 2019 13:51:43 +0800 Subject: [PATCH] =?UTF-8?q?[=E6=A0=87=E7=AD=BE][=E4=BF=AE=E6=94=B9]:?= =?UTF-8?q?=E6=A0=87=E7=AD=BE=E4=B8=9A=E6=80=81=E8=BF=9B=E8=A1=8C=E7=BB=9F?= =?UTF-8?q?=E4=B8=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/iformall/enums/EnumTag.java | 69 +++++++++++++++---- .../impl/WxCouponOrderServiceImpl.java | 26 +++---- 2 files changed, 66 insertions(+), 29 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumTag.java b/mallinkService/src/main/java/com/iformall/enums/EnumTag.java index 38ad6f188..9c499b69b 100644 --- a/mallinkService/src/main/java/com/iformall/enums/EnumTag.java +++ b/mallinkService/src/main/java/com/iformall/enums/EnumTag.java @@ -7,11 +7,13 @@ public enum EnumTag { ID_1(1L, EnumTagType.ID_1, "男"), ID_2(2L, EnumTagType.ID_1, "女"), + ID_3(3L, EnumTagType.ID_2, "00后"), ID_4(4L, EnumTagType.ID_2, "90后"), ID_5(5L, EnumTagType.ID_2, "80后"), ID_6(6L, EnumTagType.ID_2, "70后"), ID_7(7L, EnumTagType.ID_2, "60后"), + ID_8(8L, EnumTagType.ID_3, "鼠"), ID_9(9L, EnumTagType.ID_3, "牛"), ID_10(10L, EnumTagType.ID_3, "虎"), @@ -24,6 +26,7 @@ public enum EnumTag { ID_17(17L, EnumTagType.ID_3, "鸡"), ID_18(18L, EnumTagType.ID_3, "狗"), ID_19(19L, EnumTagType.ID_3, "猪"), + ID_20(20L, EnumTagType.ID_4, "白羊座"), ID_21(21L, EnumTagType.ID_4, "金牛座"), ID_22(22L, EnumTagType.ID_4, "双子座"), @@ -36,16 +39,20 @@ public enum EnumTag { ID_29(29L, EnumTagType.ID_4, "摩羯座"), ID_30(30L, EnumTagType.ID_4, "水瓶座"), ID_31(31L, EnumTagType.ID_4, "双鱼座"), + ID_32(32L, EnumTagType.ID_5, "线上"), ID_33(33L, EnumTagType.ID_5, "线下"), + ID_34(34L, EnumTagType.ID_6, "高中"), ID_35(35L, EnumTagType.ID_6, "大专"), ID_36(36L, EnumTagType.ID_6, "本科"), ID_37(37L, EnumTagType.ID_6, "硕士"), ID_38(38L, EnumTagType.ID_6, "博士"), + ID_39(39L, EnumTagType.ID_7, "移动"), ID_40(40L, EnumTagType.ID_7, "联通"), ID_41(41L, EnumTagType.ID_7, "电信"), + ID_42(42L, EnumTagType.ID_8, "5000以下"), ID_43(43L, EnumTagType.ID_8, "5000~10000"), ID_44(44L, EnumTagType.ID_8, "10001~20000"), @@ -53,38 +60,46 @@ public enum EnumTag { ID_46(46L, EnumTagType.ID_8, "20001~30000"), ID_47(47L, EnumTagType.ID_8, "30001~50000"), ID_48(48L, EnumTagType.ID_8, "50001以上"), + ID_49(49L, EnumTagType.ID_9, "iphone"), ID_50(50L, EnumTagType.ID_9, "华为"), ID_51(51L, EnumTagType.ID_9, "VO"), ID_52(52L, EnumTagType.ID_9, "三星"), ID_53(53L, EnumTagType.ID_9, "小米"), ID_54(54L, EnumTagType.ID_9, "其他"), + ID_55(55L, EnumTagType.ID_10,"未婚"), ID_56(56L, EnumTagType.ID_10,"已婚"), ID_57(57L, EnumTagType.ID_10,"已婚有孩"), + ID_58(58L, EnumTagType.ID_11,"有车一族"), + ID_59(59L, EnumTagType.ID_12,"学生"), ID_60(60L, EnumTagType.ID_12,"上班族"), ID_61(61L, EnumTagType.ID_12,"企业高管"), ID_62(62L, EnumTagType.ID_12,"个体户"), ID_63(63L, EnumTagType.ID_12,"自由职业"), ID_64(64L, EnumTagType.ID_12,"其他"), + ID_65(65L, EnumTagType.ID_13,"租房"), ID_66(66L, EnumTagType.ID_13,"自购"), ID_67(67L, EnumTagType.ID_13,"宿舍"), - ID_68(68L, EnumTagType.ID_14,"服装"), - ID_69(69L, EnumTagType.ID_14,"服饰"), - ID_70(70L, EnumTagType.ID_14,"餐饮"), - ID_71(71L, EnumTagType.ID_14,"休闲娱乐"), - ID_72(72L, EnumTagType.ID_14,"家居"), - ID_73(73L, EnumTagType.ID_14,"图书音像"), - ID_74(74L, EnumTagType.ID_14,"母婴"), - ID_75(75L, EnumTagType.ID_14,"儿童"), - ID_76(76L, EnumTagType.ID_14,"生活服务"), + + ID_68(68L, EnumTagType.ID_14,"餐饮"), + ID_69(69L, EnumTagType.ID_14,"娱乐"), + ID_70(70L, EnumTagType.ID_14,"服饰"), + ID_71(71L, EnumTagType.ID_14,"亲子"), + ID_72(72L, EnumTagType.ID_14,"超市"), + ID_73(73L, EnumTagType.ID_14,"美妆"), + ID_74(74L, EnumTagType.ID_14,"珠宝"), + ID_75(75L, EnumTagType.ID_14,"服务"), + ID_76(76L, EnumTagType.ID_14,"家居"), + ID_77(77L, EnumTagType.ID_15,"中低端"), ID_78(78L, EnumTagType.ID_15,"中端"), ID_79(79L, EnumTagType.ID_15,"中高端"), ID_80(80L, EnumTagType.ID_15,"高端"), + ID_81(81L, EnumTagType.ID_16,"快时尚"), ID_82(82L, EnumTagType.ID_16,"轻奢"), ID_83(83L, EnumTagType.ID_16,"奢侈品"), @@ -96,44 +111,70 @@ public enum EnumTag { ID_89(89L, EnumTagType.ID_16,"日本品牌"), ID_90(90L, EnumTagType.ID_16,"韩国品牌"), ID_91(91L, EnumTagType.ID_16,"欧美品牌等"), - ID_92(92L, EnumTagType.ID_17,"轻餐"), - ID_93(93L, EnumTagType.ID_17,"小吃快餐"), - ID_94(94L, EnumTagType.ID_17,"西餐"), - ID_95(95L, EnumTagType.ID_17,"日料,中餐,甜点/咖啡"), - ID_96(96L, EnumTagType.ID_17,"火锅"), + + ID_92(92L, EnumTagType.ID_17,"西餐"), + ID_93(93L, EnumTagType.ID_17,"日本料理"), + ID_94(94L, EnumTagType.ID_17,"韩国料理"), + ID_95(95L, EnumTagType.ID_17,"东南亚菜"), + ID_96(96L, EnumTagType.ID_17,"自助餐"), + ID_97(97L, EnumTagType.ID_18,"工作日白天"), ID_98(98L, EnumTagType.ID_18,"工作日晚上"), ID_99(99L, EnumTagType.ID_18,"周末(含节假日)白天"), ID_100(100L, EnumTagType.ID_18,"周末(含节假日)晚上"), + ID_101(101L, EnumTagType.ID_19,"现金"), ID_102(102L, EnumTagType.ID_19,"移动支付"), ID_103(103L, EnumTagType.ID_19,"银行卡支付"), + ID_104(104L, EnumTagType.ID_20,"实惠型"), ID_105(105L, EnumTagType.ID_20,"享乐型"), ID_106(106L, EnumTagType.ID_20,"品质型"), + ID_107(107L, EnumTagType.ID_21,"低频"), ID_108(108L, EnumTagType.ID_21,"中频"), ID_109(109L, EnumTagType.ID_21,"高频"), + ID_110(110L, EnumTagType.ID_22,"低度"), ID_111(111L, EnumTagType.ID_22,"中度"), ID_112(112L, EnumTagType.ID_22,"高度"), + ID_113(113L, EnumTagType.ID_23,"低客单价"), ID_114(114L, EnumTagType.ID_23,"中客单价"), ID_115(115L, EnumTagType.ID_23,"高客单价"), + ID_116(116L, EnumTagType.ID_24,"口碑宣传型"), ID_117(117L, EnumTagType.ID_24,"纠结型客户"), ID_118(118L, EnumTagType.ID_24,"选择型客户"), ID_119(119L, EnumTagType.ID_24,"参与型客户"), ID_120(120L, EnumTagType.ID_24,"安静型客户"), + ID_121(121L, EnumTagType.ID_25,"时尚"), ID_122(122L, EnumTagType.ID_25,"旅游"), ID_123(123L, EnumTagType.ID_25,"运动"), ID_124(124L, EnumTagType.ID_25,"电玩"), ID_125(125L, EnumTagType.ID_25,"看书"), ID_126(126L, EnumTagType.ID_25,"其他"), + ID_127(127L, EnumTagType.ID_26,"附近住户"), ID_128(128L, EnumTagType.ID_26,"较远住户"), + ID_129(129L, EnumTagType.ID_17,"火锅"), + ID_130(130L, EnumTagType.ID_17,"特色菜"), + ID_131(131L, EnumTagType.ID_17,"私房菜"), + ID_132(132L, EnumTagType.ID_17,"素食"), + ID_133(133L, EnumTagType.ID_17,"烧烤"), + ID_134(134L, EnumTagType.ID_17,"小吃快餐"), + ID_135(135L, EnumTagType.ID_17,"川菜"), + ID_136(136L, EnumTagType.ID_17,"湘菜"), + ID_137(137L, EnumTagType.ID_17,"鲁菜"), + ID_138(138L, EnumTagType.ID_17,"粤菜"), + ID_139(139L, EnumTagType.ID_17,"湖北菜"), + ID_140(140L, EnumTagType.ID_17,"云贵菜"), + ID_141(141L, EnumTagType.ID_17,"东北菜"), + ID_142(142L, EnumTagType.ID_17,"面包店"), + ID_143(143L, EnumTagType.ID_17,"咖啡厅"), + ID_144(144L, EnumTagType.ID_17,"饮品店"), ; diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java index 17236f375..e7108ed13 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java @@ -38,6 +38,7 @@ import org.springframework.transaction.annotation.Transactional; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.*; +import java.math.BigDecimal; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.*; @@ -450,22 +451,17 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService { WxAppinfo wxAppinfo = wxAppinfoService.getCAppInfo(couponOrder.getTenantId()); WxPayAccount payAccount = wxPayAccountMapper.selectByPrimaryKey(wxAppinfo.getPayId()); - Integer subsidyNum; - String parameter = couponMerchant.getParameter(); - JSONObject jParameter; - try { - jParameter = JSONObject.parseObject(parameter); - } catch (Exception e) { - jParameter = null; - } - - if (jParameter != null) { - subsidyNum = jParameter.getIntValue("subsidyNum"); - } else { - // 本张券的补贴额 - subsidyNum = coupon.getSubsidyNum(); + Integer subsidyNum = coupon.getSubsidyNum(); + if (subsidyNum == null || subsidyNum.intValue() == 0) { + String parameter = couponMerchant.getParameter(); + try { + JSONObject jParameter = JSONObject.parseObject(parameter); + subsidyNum = new BigDecimal(jParameter.getString("subsidyNumStr")).multiply(new BigDecimal(100)).intValue(); + } catch (Exception e) { + subsidyNum = null; + } } - if (subsidyNum > 0) { + if (subsidyNum != null && subsidyNum.intValue() > 0) { // 有补贴时入库 Double dSubChargeFee = Math.ceil(subsidyNum * 1.0D * payAccount.getRate() / 10000); Integer realSubsidyFee = subsidyNum - dSubChargeFee.intValue();