Переглянути джерело

公众号用户订单消费明细

jk-GitHub-coder 3 роки тому
батько
коміт
8cfacd23fb

+ 28 - 0
YijiaRestful/src/main/java/com/platform/yijia/controller/ElectronicMembershipCardController.java

@@ -833,9 +833,23 @@ public class ElectronicMembershipCardController {
             String payType = "";
             if(infoMap.get("payType").equals("wx")){
                 payType ="微信";
+                if(infoMap !=null && infoMap.containsKey("amt") && infoMap.get("amt") !=null){
+                    m.put("amt", infoMap.get("amt").toString());
+                }
+            }
+
+            if(infoMap.get("payType").equals("zfb")){
+                payType ="支付宝";
+                if(infoMap.containsKey("amt") && infoMap.get("amt") !=null ){
+                    m.put("amt", infoMap.get("amt").toString());
+                }
             }
+
             if(infoMap.get("payType").equals("dzk")){
                 payType ="电子卡";
+                if(infoMap !=null && infoMap.containsKey("dzkAmt") && infoMap.get("dzkAmt") !=null){
+                    m.put("amt", infoMap.get("dzkAmt").toString());
+                }
             }
             m.put("payType", payType);
         }
@@ -984,9 +998,23 @@ public class ElectronicMembershipCardController {
         if(infoMap.containsKey("payType") && infoMap.get("payType") !=null ){
             if(infoMap.get("payType").equals("wx")){
                 payWayP ="微信";
+                if(infoMap.containsKey("amt") && infoMap.get("amt") !=null ){
+                    amtP =infoMap.get("amt")+"";
+                }
+            }
+
+            if(infoMap.get("payType").equals("zfb")){
+                payWayP ="支付宝";
+                if(infoMap.containsKey("amt") && infoMap.get("amt") !=null ){
+                    amtP =infoMap.get("amt")+"";
+                }
             }
+
             if(infoMap.get("payType").equals("dzk")){
                 payWayP ="电子卡";
+                if(infoMap.containsKey("dzkAmt") && infoMap.get("dzkAmt") !=null ){
+                    amtP =infoMap.get("dzkAmt")+"";
+                }
             }
         }
 

+ 50 - 0
YijiaRestful/src/main/java/com/platform/yijia/controller/PayOrderController.java

@@ -1,4 +1,6 @@
 package com.platform.yijia.controller;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
 import com.google.gson.Gson;
 import com.google.gson.GsonBuilder;
 import com.platform.yijia.config.YiJiaRequest;
@@ -2137,5 +2139,53 @@ public class PayOrderController {
 
         return gson.toJson(resultData);
     }
+
+    /*
+     * 根据用户unionId和stationId查询用户订单
+     */
+    @RequestMapping(value = "/getUserOrderListByUnionId", method = RequestMethod.POST)
+    @ResponseBody
+    public String getUserOrderListByUnionId(@RequestBody AppUserInfo request){
+        Gson gson =new GsonBuilder().setDateFormat("yyyy-MM-dd HH:mm:ss").create();
+        ResultData resultData =null;
+        if(StringUtils.isNotBlank(request.getUnionId()) && request.getStationId() !=null){
+            AppUserInfo appUserInfo = new AppUserInfo();
+            appUserInfo.setUnionId(request.getUnionId());
+            if(request.getPageNum() !=null && request.getPageSize() !=null){
+                //Map<String, Object> resultMap = new HashMap<>();
+                StationInfo s = new StationInfo();
+                s.setStationId(request.getStationId());
+                StationInfo stationInfo = stationService.selectStationInfo(s);
+                if (stationInfo !=null){
+                    String jiBie = stationInfo.getJiBie();
+                    switch (jiBie){
+                        case "1":
+                            appUserInfo.setStaJiBie("1");
+                            break;
+                        case "2":
+                            appUserInfo.setStaJiBie("2");
+                            break;
+                    }
+                    appUserInfo.setPayType(request.getPayType());
+                    appUserInfo.setStationId(request.getStationId());
+                    PageHelper.startPage(request.getPageNum(), request.getPageSize());
+                    List<PayOrder> payOrderList = payOrderService.getUserOrderListByUnionId(appUserInfo);
+                    PageInfo pageInfo = new PageInfo(payOrderList);
+                    resultData = ResultData.success(pageInfo);
+                }else {
+                    resultData = ResultData.error(CodeMsg.SEARCH_FAIL);
+                }
+
+            }else {
+                resultData = ResultData.error(CodeMsg.PARAMS_NUll);
+            }
+        }else {
+            resultData=ResultData.error(CodeMsg.PARAMS_NUll);
+        }
+        return gson.toJson(resultData);
+    }
+
+
+
 }
 

+ 6 - 0
YijiaRestful/src/main/java/com/platform/yijia/dao/PayOrderMapper.java

@@ -38,6 +38,12 @@ public interface PayOrderMapper {
     List<PayOrder> getOrderListByOpenIdAndUserType(AppUserInfo appUserInfo);
 
     /*
+     * 根据用户unionId查询用户订单
+     * @return
+     */
+    List<PayOrder> getUserOrderListByUnionId(AppUserInfo appUserInfo);
+
+    /*
      *修改订单状态
      */
     int updateOrderStatus(PayOrder payOrder);

+ 9 - 0
YijiaRestful/src/main/java/com/platform/yijia/pojo/AppUserInfo.java

@@ -21,4 +21,13 @@ public class AppUserInfo {
     private String unionId;
     private String aLiId;
     private Integer stationId;
+
+
+    //分页参数
+    private Integer pageNum;
+    private Integer pageSize;
+    private String payType;
+
+    //所在油站级别
+    private String staJiBie;
 }

+ 6 - 0
YijiaRestful/src/main/java/com/platform/yijia/service/PayOrderService.java

@@ -55,6 +55,12 @@ public interface PayOrderService {
     List<PayOrder> getOrderListByOpenIdAndUserType(AppUserInfo appUserInfo);
 
     /*
+     * 根据用户unionId查询用户订单
+     * @return
+     */
+    List<PayOrder> getUserOrderListByUnionId(AppUserInfo appUserInfo);
+
+    /*
      * 根据订单号查询订单信息和用户信息  注:此方法在随行付回调校验之后修改状态完成后
      * @param payOrder
      * @return

+ 9 - 0
YijiaRestful/src/main/java/com/platform/yijia/service/impl/PayOrderServiceImpl.java

@@ -112,6 +112,15 @@ public class PayOrderServiceImpl implements PayOrderService {
     }
 
     /*
+     * 根据用户unionId查询用户订单
+     * @return
+     */
+    @Override
+    public List<PayOrder> getUserOrderListByUnionId(AppUserInfo appUserInfo) {
+        return payOrderMapper.getUserOrderListByUnionId(appUserInfo);
+    }
+
+    /*
      * 根据订单号查询订单信息和用户信息  注:此方法在随行付回调校验之后修改状态完成后
      * @param payOrder
      * @return

+ 45 - 0
YijiaRestful/src/main/resources/mapper/PayOrderMapper.xml

@@ -437,6 +437,51 @@
   </select>
 
 
+    <!--根据用户unionId查询用户订单-->
+    <select id="getUserOrderListByUnionId" parameterType="com.platform.yijia.pojo.AppUserInfo" resultType="com.platform.yijia.pojo.PayOrder">
+        SELECT
+            B.order_no              AS orderNo,
+            B.oil_gun               AS oilGun,
+            B.oil_type              AS oilType,
+            B.oil_name              AS oilName,
+            B.consumer              AS consumer,
+            B.order_liters          AS orderLiters,
+            B.pay_date              AS payDate,
+            B.amt                   AS amt,
+            C.dict_label            AS payType,
+            B.created_date          AS createdDate,
+            B.oil_pirce             AS oilPirce,
+            B.station_name          AS stationName,
+            B.receivable_amt        AS receivableAmt,
+            B.discount_amt          AS discountAmt,
+            B.score                 AS score,
+            B.status                AS status,
+            B.discount_coupon_amt   AS discountCouponAmt
+        FROM
+                    app_user_info           AS A
+        LEFT JOIN   pay_order               AS B ON A.user_id = B.consumer_id
+        LEFT JOIN   sys_dict_data           AS C ON B.pay_type = C.dict_value AND C.dict_type = "pay_type"
+        <where>
+            B.status ="1"
+            <if test="payType != null and payType !=''">
+                AND B.pay_type = #{payType}
+            </if>
+            <if test="unionId != null and unionId !=''">
+                AND A.union_id = #{unionId}
+            </if>
+            <if test="stationId != null and stationId !=''">
+                <if test="staJiBie !=null and staJiBie == '1'.toString()">
+                    AND A.station_id = #{stationId}
+                </if>
+                <if test="staJiBie !=null and staJiBie == '2'.toString()">
+                    AND B.station_id = #{stationId}
+                </if>
+            </if>
+        </where>
+        ORDER BY B.created_date DESC
+    </select>
+
+
   <!-- 查询加油员-->
   <select id="selectPersonelName" parameterType="map" resultType="map">
     SELECT