JK 4 anos atrás
pai
commit
d0563232f2

+ 48 - 26
YijiaRestful/src/main/java/com/platform/yijia/controller/ElectronicMembershipCardController.java

@@ -102,15 +102,16 @@ public class ElectronicMembershipCardController {
             List<CustomerElectronicCard> electronicCardList = new ArrayList<>();
             CustomerElectronicCard customerElectronicCard = new CustomerElectronicCard();
             CustomerCardSetting customerCardSetting = new CustomerCardSetting();
-            if(stationInfos.getCardEnabledFlagGroup().equals("1")){
+            customerElectronicCard.setUnionId(unionId);
+            customerCardSetting.setStationId(stationInfos.getStationId());
+            customerElectronicCard.setStationId(stationInfos.getStationId());
+            if(stationInfos.getCardRuleFlagGroup().equals("1")){
                 if(stationInfos.getCardEnabledFlagGroup().equals("1")){
-                    customerElectronicCard.setUnionId(unionId);
                     customerCardSetting.setStationId(stationInfos.getGroupId());
                     customerElectronicCard.setStationId(stationInfos.getGroupId());
                 }
             }else {
                 if(stationInfos.getCardEnabledFlag().equals("1")){
-                    customerCardSetting.setStationId(stationId);
                     customerCardSetting.setStationId(stationInfos.getStationId());
                     customerElectronicCard.setStationId(stationInfos.getStationId());
                 }
@@ -342,7 +343,7 @@ public class ElectronicMembershipCardController {
                 String amt = resultMap.get("amt").toString();
                 String oilType = resultMap.get("oilType").toString();
                 String groupId = resultMap.get("groupId").toString();
-                String oilGun = resultMap.get("oilGun").toString();
+                //String oilGun = resultMap.get("oilGun").toString();
 
                 CustomerCardUseRecord customerCardUseRecord = new CustomerCardUseRecord();  //电子会员卡插入消费记录
                 customerCardUseRecord.setMobilePhone(mobilePhone);
@@ -481,6 +482,14 @@ public class ElectronicMembershipCardController {
                             stationName = m.get("stationName");
                             gzhAppId = m.get("gzhAppId");
                             gzhAppSecret = m.get("gzhAppSecret");
+//                            Oil oil_1 = new Oil();
+//                            oil.setOilsType(customerCardUseRecordInfo.getCardOilsType());
+//                            if(customerCardUseRecordInfo.getCardOilsType().equals("1") || customerCardUseRecordInfo.getCardOilsType().equals("2")){
+//                                oil.setDictType("oil");
+//                            }else {
+//                                oil.setDictType("oil_name");
+//                            }
+//                            String cardName =sysDictDataService.selectOilType(oil).getOilName();
                             //推送模板
                             List<WxMpTemplateData> wxMpTemplate = new ArrayList<>();
                             wxMpTemplate.add(new WxMpTemplateData("first","尊敬的"+consumer+",您好:\n" + "您在"+stationName+"的最新消费交易信息如下"));
@@ -876,7 +885,15 @@ public class ElectronicMembershipCardController {
                             logger.info("商户编号:"+ resultMap.get("mno"));
                             reqData.put("ordNo", orderNo); //商户订单号
                             reqData.put("amt", amt); //订单总金额
-                            reqData.put("subject", cardRecordByOrderNo.getOilsCardName()+ "电子卡" + " - " +cardRecordByOrderNo.getStationName()); //订单标题
+                            Oil oil = new Oil();
+                            oil.setOilsType(cardRecordByOrderNo.getCardOilsType());
+                            if(cardRecordByOrderNo.getCardOilsType().equals("1") || cardRecordByOrderNo.getCardOilsType().equals("2")){
+                                oil.setDictType("oil");
+                            }else {
+                                oil.setDictType("oil_name");
+                            }
+                            String cardName =sysDictDataService.selectOilType(oil).getOilName();
+                            reqData.put("subject", cardName+ "电子卡" + " - " +cardRecordByOrderNo.getStationName()); //订单标题
                             reqData.put("tradeSource", "01"); //交易来源 01服务商,02收银台,03硬件
                             reqData.put("trmIp", "172.16.2.1");//商家ip地址
                             reqData.put("outFrontFailUrl", ""); //js 支付,前台 事变通知地址
@@ -1139,9 +1156,9 @@ public class ElectronicMembershipCardController {
                     logger.info("===========客户电子会员卡充值成功已到账====");
                     logger.info("===========开始微信公众号电子卡推送消息功能:");
                     String stationName = customerCardUseRecordInfo.getStationName();
-                    String blogOpenid = customerCardUseRecordInfo.getBlogOpenid();
+                    //String blogOpenid = customerCardUseRecordInfo.getBlogOpenid();
                     Integer stationId = customerCardUseRecordInfo.getStationId();      //油站ID
-                    String customerName = customerCardUseRecordInfo.getCustomerName(); //客户名称
+                    //String customerName = customerCardUseRecordInfo.getCustomerName(); //客户名称
                     BigDecimal balance = customerElectronicCard.getAmt();   //当前余额
                     String customerNo = electronicCardInfo.getCustomerNo();     //电子卡号
                     //获取要推送充值成功模板的ID
@@ -1152,25 +1169,29 @@ public class ElectronicMembershipCardController {
                     if(gzhNewsTemplateInfo !=null && gzhNewsTemplateInfo.getTemplateId() !=null){
                         logger.info("推送消息的油站ID:"+ gzhNewsTemplateInfo.getStationId().toString());
                         logger.info("当前要推送消息所用使用的模板ID:"+ gzhNewsTemplateInfo.getTemplateId());
-                        List<WxMpTemplateData> wxMpTemplate = new ArrayList<>();
-                        Oil oil = new Oil();
-                        oil.setOilsType(customerCardUseRecordInfo.getCardOilsType());
-                        oil.setDictType("oil");
-                        String cardName =sysDictDataService.selectOilType(oil).getOilName();
-                        wxMpTemplate.add(new WxMpTemplateData("first","尊敬的"+customerName+",您好:\n" + "您在"+stationName+"的"+cardName+"电子卡充值成功信息如下"));
-                        wxMpTemplate.add(new WxMpTemplateData("keyword1", customerNo));
-                        wxMpTemplate.add(new WxMpTemplateData("keyword2", amt + " 元"));
-                        wxMpTemplate.add(new WxMpTemplateData("keyword3", presentAmt.toString()+ " 元"));
-                        wxMpTemplate.add(new WxMpTemplateData("keyword4", balance.toString()+ " 元"));
-                        wxMpTemplate.add(new WxMpTemplateData("keyword5", new SimpleDateFormat("yyyy年MM月dd日HH时mm分").format(new Date())));
-                        wxMpTemplate.add(new WxMpTemplateData("remark","感谢您在"+ stationName+"的本次充值!"));
-                        logger.info("要推送的消息内容:" +wxMpTemplate.toString());
-                        Map<String, String> m = stationService.getStationAppIdAndAppSecret(stationId);
-                        if(m !=null && m.containsKey("gzhAppId") && m.containsKey("gzhAppSecret")){
-                            String gzhAppId = m.get("gzhAppId");
-                            String gzhAppSecret = m.get("gzhAppSecret");
-                            AppUserInfo appUserInfos = appUserInfoService.getAppUserInfo(appUserInfo);
-                            if(appUserInfos !=null){
+                        AppUserInfo appUserInfos = appUserInfoService.getAppUserInfo(appUserInfo);
+                        if(appUserInfos !=null){
+                            List<WxMpTemplateData> wxMpTemplate = new ArrayList<>();
+                            Oil oil = new Oil();
+                            oil.setOilsType(customerCardUseRecordInfo.getCardOilsType());
+                            if(customerCardUseRecordInfo.getCardOilsType().equals("1") || customerCardUseRecordInfo.getCardOilsType().equals("2")){
+                                oil.setDictType("oil");
+                            }else {
+                                oil.setDictType("oil_name");
+                            }
+                            String cardName =sysDictDataService.selectOilType(oil).getOilName();
+                            wxMpTemplate.add(new WxMpTemplateData("first","尊敬的"+appUserInfos.getBlogNickName()+",您好:\n" + "您在"+stationName+"的"+cardName+"电子卡充值成功信息如下"));
+                            wxMpTemplate.add(new WxMpTemplateData("keyword1", customerNo));
+                            wxMpTemplate.add(new WxMpTemplateData("keyword2", amt + " 元"));
+                            wxMpTemplate.add(new WxMpTemplateData("keyword3", presentAmt.toString()+ " 元"));
+                            wxMpTemplate.add(new WxMpTemplateData("keyword4", balance.toString()+ " 元"));
+                            wxMpTemplate.add(new WxMpTemplateData("keyword5", new SimpleDateFormat("yyyy年MM月dd日HH时mm分").format(new Date())));
+                            wxMpTemplate.add(new WxMpTemplateData("remark","感谢您在"+ stationName+"的本次充值!"));
+                            logger.info("要推送的消息内容:" +wxMpTemplate.toString());
+                            Map<String, String> m = stationService.getStationAppIdAndAppSecret(stationId);
+                            if(m !=null && m.containsKey("gzhAppId") && m.containsKey("gzhAppSecret")){
+                                String gzhAppId = m.get("gzhAppId");
+                                String gzhAppSecret = m.get("gzhAppSecret");
                                 if(StringUtils.isNotBlank(appUserInfos.getBlogOpenid())){
                                     wxPushUtil.push(gzhAppId, gzhAppSecret, gzhNewsTemplateInfo.getTemplateId(), appUserInfos.getBlogOpenid(), wxMpTemplate);
                                     logger.info("结束微信公众号电子会员卡消息推送成功,推送人:"+ appUserInfos.getBlogOpenid());
@@ -1240,6 +1261,7 @@ public class ElectronicMembershipCardController {
                 customerCardSetting.setCardOilsType(cardOilsType);
             }
             customerCardSetting.setOrderBy("ASC");  //优惠规则升序排序
+            customerCardSetting.setDelFlag("0");
             List<CustomerCardSetting> cardRechargeSettingList = electronicMembershipCardService.getCardRechargeSettingList(customerCardSetting);
             resultData = ResultData.success(cardRechargeSettingList);
         }else {

+ 1 - 0
YijiaRestful/src/main/java/com/platform/yijia/pojo/CustomerCardUseRecord.java

@@ -31,4 +31,5 @@ public class CustomerCardUseRecord {
     private String stationName;             //'油站名称'
     private String status;                  //'充值状态'
     private String oilsCardName;            //卡名字
+    private String dictType;                //数据字典表:数据类型
 }

+ 1 - 4
YijiaRestful/src/main/resources/mapper/ElectronicMembershipCardMapper.xml

@@ -135,15 +135,12 @@
             T1.create_time,
             T1.station_id,
             T1.status,
-            T3.dept_name                AS station_name,
-            T4.dict_label               AS oilsCardName
+            T3.dept_name                AS station_name
         FROM
             customer_card_use_record    AS T1
         LEFT JOIN app_user_info         AS T2 ON T1.station_id = T2.station_id AND T1.union_id =T2.union_id
         LEFT JOIN sys_dept              AS T3 ON T1.station_id = T3.dept_id
-        LEFT JOIN sys_dict_data         AS T4 ON T1.card_oils_type = T4.dict_value
         <where>
-            T4.dict_type ="oil"
             <if test=" orderNo !=null and orderNo !=''">
                 AND T1.order_no = #{orderNo}
             </if>