|
@@ -1,5 +1,11 @@
|
|
|
package com.iamberry.wechat.tools;
|
|
|
|
|
|
+import org.jsoup.Jsoup;
|
|
|
+import org.jsoup.nodes.Document;
|
|
|
+import org.jsoup.select.Elements;
|
|
|
+
|
|
|
+import java.io.UnsupportedEncodingException;
|
|
|
+import java.net.URLEncoder;
|
|
|
import java.util.TreeMap;
|
|
|
/**
|
|
|
* 微信1.0网页地址授权工具类
|
|
@@ -11,19 +17,62 @@ import java.util.TreeMap;
|
|
|
*/
|
|
|
public class AddrUtil {
|
|
|
|
|
|
- public static String getAddress(String url, String access_token){
|
|
|
- String nonceStr = Sha1Util.getNonceStr();
|
|
|
- String timestamp = Sha1Util.getTimeStamp();
|
|
|
- TreeMap<String, String> signatureParams = new TreeMap<String, String>();
|
|
|
- signatureParams.put("noncestr", nonceStr);
|
|
|
- signatureParams.put("appid", NameUtils.getConfig("appId"));
|
|
|
- signatureParams.put("timestamp", timestamp);
|
|
|
- signatureParams.put("url", url);//当前页面链接
|
|
|
- signatureParams.put("accesstoken", access_token);//网页授权得到
|
|
|
- String s1 = TenpayUtil.getKeyValue(signatureParams);
|
|
|
- String addrSign = Sha1Util.getSha1(s1);
|
|
|
- String json = "{\"nonceStr\":\"%s\",\"appId\":\"%s\",\"timeStamp\":\"%s\",\"addrSign\":\"%s\"}";
|
|
|
- json = String.format(json, nonceStr, NameUtils.getConfig("appId"), timestamp, addrSign);
|
|
|
- return json;
|
|
|
+ /**
|
|
|
+ * 发货时处理省份问题
|
|
|
+ * @param province
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public static String dealProvince(String province) {
|
|
|
+ // 判断是否为直辖市
|
|
|
+ if (province.contains("北京")) {
|
|
|
+ return "北京市";
|
|
|
+ } else if (province.contains("上海")) {
|
|
|
+ return "上海市";
|
|
|
+ } else if (province.contains("天津")) {
|
|
|
+ return "天津市";
|
|
|
+ } else if (province.contains("重庆")) {
|
|
|
+ return "重庆市";
|
|
|
+ }
|
|
|
+
|
|
|
+ // 自治区
|
|
|
+ if (province.contains("内蒙古")) {
|
|
|
+ return "内蒙古自治区";
|
|
|
+ } else if (province.contains("广西")) {
|
|
|
+ return "广西壮族自治区";
|
|
|
+ } else if (province.contains("西藏")) {
|
|
|
+ return "西藏自治区";
|
|
|
+ } else if (province.contains("宁夏")) {
|
|
|
+ return "宁夏回族自治区";
|
|
|
+ } else if (province.contains("新疆")) {
|
|
|
+ return "新疆维吾尔自治区";
|
|
|
+ }
|
|
|
+
|
|
|
+ // 其他省份,不能缺少省
|
|
|
+ if (!province.contains("省")) {
|
|
|
+ return province + "省";
|
|
|
+ }
|
|
|
+ return province;
|
|
|
+ }
|
|
|
+
|
|
|
+ public static void main(String[] args) {
|
|
|
+ System.out.println(getPostCode("宣恩县"));
|
|
|
+ }
|
|
|
+
|
|
|
+ public static String getPostCode(String addr) {
|
|
|
+ try {
|
|
|
+ String url = "http://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&rsv_idx=1&tn=baidu&wd=" + URLEncoder.encode(addr + "邮编", "UTF-8");
|
|
|
+ Document doc = Jsoup.parse(HttpClient431Util.doGet(null, url));
|
|
|
+ Elements rows = doc.select(".op_exactqa_s_answer");
|
|
|
+ return rows.text().trim();
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+
|
|
|
+ public static String dealCite(String cite) {
|
|
|
+ //
|
|
|
+
|
|
|
+ return null;
|
|
|
}
|
|
|
}
|