Explorar el Código

油站轮播图 公众号登录

jk-GitHub-coder hace 4 años
padre
commit
994a2ca848

+ 32 - 0
YijiaRestful/src/main/java/com/platform/yijia/controller/AppUserInfoController.java

@@ -117,6 +117,38 @@ public class AppUserInfoController {
         return gson.toJson(resultData);
     }
 
+    /*
+     * 获取公众号授权后的信息
+     * @param code
+     * @param stationId
+     * @return
+     */
+    @RequestMapping(value = "/getGzhAuthorizeInfo", method = RequestMethod.GET)
+    @ResponseBody
+    public String getGzhAuthorizeInfo(@RequestParam String code, Integer stationId){
+        logger.info("获取公众号授权后的信息前端传递参数:code:"+ code );
+        logger.info("获取公众号授权后的信息前端传递参数:stationId:" +stationId);
+        Gson gson =new Gson();
+        //返回结果集
+        ResultData resultData = null;
+        if(code != null && stationId !=null){
+            String gzhAppId ="";
+            String gzhAppSecret ="";
+            String accessToken ="";
+            Map<String, String> m = stationService.getStationAppIdAndAppSecret(stationId);
+            if(m !=null && m.containsKey("gzhAppId") && m.containsKey("gzhAppSecret")){
+                gzhAppId = m.get("gzhAppId");
+                gzhAppSecret = m.get("gzhAppSecret");
+                accessToken  = this.getTokenByRedisCache(gzhAppId, gzhAppSecret);
+                net.sf.json.JSONObject gzhAuthorizeInfo = WeiXinUserUtil.getGzhAuthorizeInfo(gzhAppId, gzhAppSecret, accessToken);
+                resultData = ResultData.success(gzhAuthorizeInfo);
+            }
+        }else {
+            resultData = ResultData.success(CodeMsg.REQUEST_FAIL);
+        }
+        return gson.toJson(resultData);
+    }
+
 
     //获取公众号信息
     @RequestMapping(value = "/getGzhUserInfo", method = RequestMethod.GET)

+ 1 - 1
YijiaRestful/src/main/java/com/platform/yijia/controller/PayController.java

@@ -211,7 +211,7 @@ public class PayController {
 
 
                     //reqData.put("outFrontUrl", ""); //js 支付,前台 成功通知地址
-                    //reqData.put("outFrontFailUrl", ""); //js 支付,前台 事变通知地址
+                    reqData.put("outFrontFailUrl", ""); //js 支付,前台 事变通知地址
                     //reqData.put("notifyUrl", "https://www.huijy.net/api/getCallback"); //回调地址
                     reqData.put("notifyUrl", "https://www.huijy.net/demo/getCallback"); //回调地址
                     //reqData.put("needReceipt", "00"); //电子发票功能 微信开具电子 发票使用

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

@@ -29,6 +29,8 @@ public class PayOrderController {
     @RequestMapping(value = "/AddPayOrderInfo", consumes = "application/json", method = RequestMethod.POST)
     @ResponseBody
     public String  AddPayOrderInfo(@RequestBody PayOrderRequest payOrderRequest){
+        logger.info("获取订单前端传来参数openID:"+ payOrderRequest.getOpenId());
+        logger.info("获取订单前端传来参数userType:"+ payOrderRequest.getUserType());
         Gson gson =new Gson();
         ResultData resultData =null;
         //根据token 和登录类型 身份验证

+ 19 - 4
YijiaRestful/src/main/java/com/platform/yijia/controller/StationController.java

@@ -3,10 +3,7 @@ import com.alibaba.fastjson.JSONObject;
 import com.google.gson.Gson;
 import com.platform.yijia.param.request.StationRequest;
 import com.platform.yijia.param.response.StationInfoVo;
-import com.platform.yijia.pojo.AppUserInfo;
-import com.platform.yijia.pojo.StationInfo;
-import com.platform.yijia.pojo.StationNoticeManage;
-import com.platform.yijia.pojo.StationOilGun;
+import com.platform.yijia.pojo.*;
 import com.platform.yijia.service.AppUserInfoService;
 import com.platform.yijia.service.StationNoticeManageService;
 import com.platform.yijia.service.StationOilGunService;
@@ -34,6 +31,24 @@ public class StationController {
     private AppUserInfoService appUserInfoService;
 
 
+    //获取油站轮播图
+    @RequestMapping(value = "/getStationPicList", method = RequestMethod.GET)
+    @ResponseBody
+    public String getStationPicList(@RequestParam Integer stationId){
+        Gson gson =new Gson();
+        //返回结果集
+        ResultData resultData=null;
+        if(stationId !=null){
+            StationPic stationPic = new StationPic();
+            stationPic.setStationId(stationId);
+            List<StationPic> stationPicList = stationService.getStationPicList(stationPic);
+            resultData =ResultData.success(stationPicList);
+        }else {
+            resultData =ResultData.error(CodeMsg.REQUEST_FAIL);
+        }
+        return  gson.toJson(resultData);
+    }
+
     /**
      * 根据坐标获取油站列表
      */

+ 4 - 0
YijiaRestful/src/main/java/com/platform/yijia/dao/StationInfoMapper.java

@@ -5,10 +5,14 @@ import com.platform.yijia.pojo.StationInfoExample;
 import java.util.List;
 import java.util.Map;
 
+import com.platform.yijia.pojo.StationPic;
 import org.apache.ibatis.annotations.Param;
 
 public interface StationInfoMapper {
 
+    //获取油站轮播图片
+    List<StationPic> getStationPicList (StationPic stationPic);
+
     //获取该油站的优惠方式
     String getStationDiscountWay(String stationId);
 

+ 16 - 0
YijiaRestful/src/main/java/com/platform/yijia/pojo/StationPic.java

@@ -0,0 +1,16 @@
+package com.platform.yijia.pojo;
+
+import lombok.Data;
+
+/***
+ * 油站轮播图图片
+ */
+@Data
+public class StationPic {
+    private Integer id;                 //'油站图片主键id',
+    private String name;            //'图片名称',
+    private String url;              //'图片地址',
+    private Integer stationId;          //'油站ID',
+    private String stationName;         //油站名称
+    private Integer parentId;           //支付管理id
+}

+ 4 - 0
YijiaRestful/src/main/java/com/platform/yijia/service/StationService.java

@@ -4,12 +4,16 @@ import com.platform.yijia.param.request.StationRequest;
 import com.platform.yijia.param.response.StationInfoResponse;
 import com.platform.yijia.param.response.StationInfoVo;
 import com.platform.yijia.pojo.StationInfo;
+import com.platform.yijia.pojo.StationPic;
 
 import java.util.List;
 import java.util.Map;
 
 public interface StationService {
 
+    //获取油站轮播图片
+    List<StationPic> getStationPicList (StationPic stationPic);
+
     //跟据油站插叙有站列表 查询油站列表
     StationInfoVo stationInfoList(StationRequest stationRequest);
 

+ 12 - 0
YijiaRestful/src/main/java/com/platform/yijia/service/impl/StationServiceImpl.java

@@ -5,6 +5,7 @@ import com.platform.yijia.param.response.StationInfoResponse;
 import com.platform.yijia.param.response.StationInfoVo;
 import com.platform.yijia.pojo.StationInfo;
 import com.platform.yijia.pojo.StationInfoExample;
+import com.platform.yijia.pojo.StationPic;
 import com.platform.yijia.service.StationService;
 import com.platform.yijia.utils.MapHelper;
 import com.platform.yijia.utils.PageUtil;
@@ -21,6 +22,17 @@ public class StationServiceImpl implements StationService {
 
     @Resource
     private StationInfoMapper stationInfoMapper;
+
+    /**
+     * 获取油站轮播图
+     * @param stationPic
+     * @return
+     */
+    @Override
+    public List<StationPic> getStationPicList(StationPic stationPic) {
+        return stationInfoMapper.getStationPicList(stationPic);
+    }
+
     @Override
     public StationInfoVo stationInfoList(StationRequest stationRequest) {
         //根据传过来的坐标查询数据

+ 20 - 6
YijiaRestful/src/main/java/com/platform/yijia/utils/weixinapp/WeiXinUserUtil.java

@@ -26,10 +26,12 @@ public class WeiXinUserUtil {
     //public final static String weiXinUserInfo_url = "https://api.weixin.qq.com/sns/userinfo?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN";
     //凭证获取路径
     public final static String token_url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET";
+
     //微信小程序路径获取openID "https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=APPSECRET&js_code=CODE&grant_type=authorization_code";
-    public final static String openID_url  ="https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=APPSECRET&js_code=CODE&grant_type=authorization_code";
-    //根据 appID secret code
-    //public final static String request_Url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code";
+    public final static String OPENID_URL  ="https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=APPSECRET&js_code=CODE&grant_type=authorization_code";
+
+    //微信公众号获取通过code换取网页授权access_token
+    public final static String GZHAUTHORIZEINFO_URL = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code";
 
     //获取UnionId
     public final static String unionId_Url ="https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN";
@@ -37,8 +39,20 @@ public class WeiXinUserUtil {
     //日志
     private static final Logger logger = LoggerFactory.getLogger(WeiXinUserUtil.class);
 
-//    @Resource
-//    private  RedisCacheUtil redisCacheUtil;
+    /*
+     * 获取用户公众号的授权信息
+     * @param appId
+     * @param appSecret
+     * @param code
+     * @return
+     */
+    public static JSONObject getGzhAuthorizeInfo(String appId, String appSecret, String code){
+        logger.info("appId参数: "+ appId+" ;appSecret参数: " +appSecret +" ;code参数: " +code);
+        String requestUrl = GZHAUTHORIZEINFO_URL.replace("APPID", appId).replace("SECRET", appSecret).replace("CODE", code);
+        JSONObject jsonObject = HttpRequestUtil.getHttpsRequestData(requestUrl, "GET", null);
+        logger.info("获取用户公众号的授权后信息:" + jsonObject.toString());
+        return jsonObject;
+    }
 
 
     /*
@@ -62,7 +76,7 @@ public class WeiXinUserUtil {
      * @return
      */
     public static Map<String, Object> getUserSessionKeyAndOpenID(String appId, String appSecret, String code){
-        String requestUrl = openID_url.replace("APPID", appId).replace("APPSECRET", appSecret).replace("CODE", code);
+        String requestUrl = OPENID_URL.replace("APPID", appId).replace("APPSECRET", appSecret).replace("CODE", code);
         Map<String, Object> resultMap = new HashMap<>();
         //发起GET请求
         JSONObject jsonObject = HttpRequestUtil.getHttpsRequestData(requestUrl, "GET", null);

+ 30 - 0
YijiaRestful/src/main/resources/mapper/StationInfoMapper.xml

@@ -457,4 +457,34 @@
   </select>
 
 
+  <!--油站轮播图片信息返回结果-->
+  <resultMap id="StationPicResultMap" type="com.platform.yijia.pojo.StationPic">
+    <id     column="id"                     jdbcType="INTEGER" property="id" />
+    <result column="name"                   jdbcType="VARCHAR" property="name" />
+    <result column="url"                    jdbcType="VARCHAR" property="url" />
+    <result column="station_id"             jdbcType="INTEGER" property="stationId" />
+    <result column="station_name"           jdbcType="VARCHAR" property="stationName" />
+    <result column="parent_id"              jdbcType="VARCHAR" property="parentId" />
+
+  </resultMap>
+
+  <!--查询油站轮播图片信息-->
+  <select id="getStationPicList" resultMap="StationPicResultMap" parameterType="com.platform.yijia.pojo.StationPic">
+    SELECT
+    id,
+    name,
+    url,
+    station_id,
+    station_name,
+    parent_id
+    FROM
+    station_pic
+    <where>
+      <if test="stationId !=null and stationId !=''">
+        AND station_id = #{stationId}
+      </if>
+    </where>
+  </select>
+
+
 </mapper>