Pu Zhibing
2024-12-17 f36d889393a741fb17f9e10bda1bef4d88cf5ffd
修改第三方账号
16个文件已修改
435 ■■■■■ 已修改文件
UserAHTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/UserCallbackController.java 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserAHTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/UserInfoController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserAHTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserAHTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/ALiSendSms.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserAHTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/AmapGeocoding.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserAHTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/ChinaMobileUtil.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserAHTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GDFalconUtil.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserAHTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GDMapElectricFenceUtil.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserAHTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GDMapGeocodingUtil.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserAHTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/HuaWeiSMSUtil.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserAHTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/ObsUploadUtil.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserAHTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/OssUploadUtil.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserAHTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PayMoneyUtil.java 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserAHTravel/guns-admin/src/main/resources/application.yml 52 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserAHTravel/guns-admin/src/main/resources/logback-spring.xml 309 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserAHTravel/guns-admin/src/main/resources/redis.properties 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserAHTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/UserCallbackController.java
@@ -249,13 +249,10 @@
            String json = JSONObject.toJSONString(aliSms);
            try {
                redisUtil.setStrValue("code:"+phone, code,15 * 60 * 1000);
                aLiSendSms.sendSms(phone, "SMS_467580138", json);
                SmsUtil.sendZTHYSms(phone, "您的验证码是:" + code + ",请勿将验证码透露给他人!");
            } catch (Exception e) {
                e.printStackTrace();
            }
//            msgUtils.sendMsg(dto.getPhone(), code);
            return ResultUtil.success("发送短信验证码成功!");
        }
        return ResultUtil.error("请输入手机号");
UserAHTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/UserInfoController.java
@@ -731,7 +731,7 @@
//            if(!types.contains(type)){
//                return ResultUtil.error("请上传图片文件(jpg/jpeg/png)");
//            }
            String s = OssUploadUtil.ossUpload(request, file);
            String s = ObsUploadUtil.obsUpload(request, file);
            return ResultUtil.success(s);
        }catch (Exception e){
            e.printStackTrace();
UserAHTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java
@@ -131,7 +131,7 @@
            sb.append((int) (random.nextDouble() * 10));
        }
        String authCode = sb.toString();
        String sms = "短信验证码【" + authCode + "】已发到您的手机,验证码将在5分钟后失效,请及时登录!";
        String sms = "您的验证码是:" + authCode + ",请勿将验证码透露给他人!";
        //发送验证码短信
        redisUtil.setStrValue(phone, authCode, 5 * 60);//设置五分钟过期
@@ -150,15 +150,7 @@
                templateCode = "c230a6b92504473c97c17741e1cc0b9d";//修改密码
                break;
        }
        aLiSendSms.sendSms(phone, "SMS_467580138", "{\"code\":\"" + authCode + "\"}");
//        HuaWeiSMSUtil.sendSms("[\"" + authCode + "\"]", phone, "8822061324669", templateCode);
//        String sData = aLiSendSms.sendSms(phone, templateCode, "{\"code\":\"" + authCode + "\"}");
////        JSONObject jsonObject = JSON.parseObject(sData);
////        String message = jsonObject.getString("Message");
////        if(!"OK".equals(message)){
////            System.err.println(message);
////            return ResultUtil.error(message);
////        }
        SmsUtil.sendZTHYSms(phone, sms);
        System.out.println(sms);
        return ResultUtil.success();
    }
UserAHTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/ALiSendSms.java
@@ -21,8 +21,8 @@
    // 设置鉴权参数,初始化客户端
    private DefaultProfile profile = DefaultProfile.getProfile(
            "cn-hangzhou",// 地域ID
            "LTAI5tR4whv88Y5CUucCJEu6",// 您的AccessKey ID
            "2fObO6LE6U2OzrUfXw9YBlQWHohFvg");// 您的AccessKey Secret
            "1111",// 您的AccessKey ID
            "1111");// 您的AccessKey Secret
    private IAcsClient client = new DefaultAcsClient(profile);
    private static void log_print(String functionName, Object result) {
UserAHTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/AmapGeocoding.java
@@ -11,7 +11,7 @@
public class AmapGeocoding {
    private static final String AMAP_GEOCODING_API = "https://restapi.amap.com/v3/geocode/regeo";
    private static final String AMAP_KEY = "116e73b6d14f7da0292daa6037955749"; // 替换为你的高德地图API Key
    private static final String AMAP_KEY = "b186a87ff13d88eb08fac9997519af5e"; // 替换为你的高德地图API Key
    public static String getCityCode(double latitude, double longitude) throws Exception {
        String url = AMAP_GEOCODING_API + "?location=" + longitude + "," + latitude
UserAHTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/ChinaMobileUtil.java
@@ -15,9 +15,9 @@
@Component
public class ChinaMobileUtil {
    private String APIKey = "zj42494b1bdd416b9762229af6b5cbbd";
    private String APIKey = "1111";
    private String SecretKey = "30323561316534653735613230316339";
    private String SecretKey = "111";
    @Autowired
    private HttpClientUtil httpClientUtil;
UserAHTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GDFalconUtil.java
@@ -21,7 +21,7 @@
@Component
public class GDFalconUtil implements ApplicationRunner {
    private String key = "8fc6a7da12d64696e9727605d81f72de";
    private String key = "b186a87ff13d88eb08fac9997519af5e";
    @Autowired
    private RestTemplate restTemplate;
UserAHTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GDMapElectricFenceUtil.java
@@ -33,7 +33,7 @@
    @Autowired
    private IGDInterfaceService gdInterfaceService;
    private String key = "8fc6a7da12d64696e9727605d81f72de";
    private String key = "b186a87ff13d88eb08fac9997519af5e";
    private JSONArray jsonArray = new JSONArray();
UserAHTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GDMapGeocodingUtil.java
@@ -20,7 +20,7 @@
@Component
public class GDMapGeocodingUtil {
    private String key = "8fc6a7da12d64696e9727605d81f72de";
    private String key = "b186a87ff13d88eb08fac9997519af5e";
    @Autowired
    private RestTemplate restTemplate;
UserAHTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/HuaWeiSMSUtil.java
@@ -40,8 +40,8 @@
    public static void sendSms(String code,String phone,String sender,String templateId) throws Exception{
        //必填,请参考"开发准备"获取如下数据,替换为实际值
        String url = "https://smsapi.cn-north-4.myhuaweicloud.com:443/sms/batchSendSms/v1"; //APP接入地址+接口访问URI
        String appKey = "7TK0Mo5YEF220G1pNF6fOwH6uEql"; //APP_Key
        String appSecret = "HTqSmIR0buStzPwSQrhfFNE7psCm"; //APP_Secret
        String appKey = "1111"; //APP_Key
        String appSecret = "1111"; //APP_Secret
        //条件必填,国内短信关注,当templateId指定的模板类型为通用模板时生效且必填,必须是已审核通过的,与模板类型一致的签名名称
        //国际/港澳台短信不用关注该参数
UserAHTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/ObsUploadUtil.java
@@ -11,18 +11,17 @@
public class ObsUploadUtil {
    //OBS图片访问域名
    public static String endPoint = "obs.cn-north-9.myhuaweicloud.com";
    public static String accessKeyId = "OELF1ZVCZ5BGRYE5IGPX";
    public static String accessKeySecret = "D3ZQCQda8tlSPTO9OPWTPJ51kLQFDu7hI6NX4u96";
    public static String bucketName = "kuaiyuncx";
    public static String oss_domain = "https://kuaiyuncx.obs.cn-north-9.myhuaweicloud.com/";
    public static String endPoint = "obs.cn-north-4.myhuaweicloud.com";
    public static String accessKeyId = "9L2JQW43N6QSKCSHXOHH";
    public static String accessKeySecret = "svg1NDBIwAYuiOee4gQB9rw1c87ug2mv7jYkH8o5";
    public static String bucketName = "anhenew";
    public static String oss_domain = "https://anhenew.obs.cn-north-4.myhuaweicloud.com/";
    // 创建ObsClient实例
    public static ObsClient obsClient = new ObsClient(accessKeyId, accessKeySecret, endPoint);
    public static String obsUpload(HttpServletRequest request,  MultipartFile file) throws IOException{
        //CommonsMultipartFile file = (CommonsMultipartFile)multipartFile;
        String fileName = "";
        if(file!=null && !"".equals(file.getOriginalFilename()) && file.getOriginalFilename()!=null){
            InputStream content = file.getInputStream();//获得指定文件的输入流
UserAHTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/OssUploadUtil.java
@@ -13,9 +13,9 @@
public class OssUploadUtil {
    //OSS图片访问域名
    public static String oss_domain = "http://bao-weiqing.oss-cn-hangzhou.aliyuncs.com/";
    public static String accessKeyId = "LTAI5tR4whv88Y5CUucCJEu6";
    public static String accessKeySecret = "2fObO6LE6U2OzrUfXw9YBlQWHohFvg";
    public static String bucketName="bao-weiqing";
    public static String accessKeyId = "111";
    public static String accessKeySecret = "111";
    public static String bucketName="111";
    public static String endpoint = "oss-cn-hangzhou.aliyuncs.com";
    public static OSSClient ossClient = new OSSClient(endpoint, accessKeyId,accessKeySecret);
UserAHTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PayMoneyUtil.java
@@ -72,16 +72,15 @@
    @Value("${callbackPath}")
    private String callbackPath;//支付回调网关地址
    private String app_cert_path = "/usr/local/server/cer/zhifubao/user/app_cert_path.crt";//应用公钥证书路径
    private String app_cert_path = "/root/server/app/cert/ali/appCertPublicKey_2021003115600201.crt";//应用公钥证书路径
    private String alipay_cert_path = "/usr/local/server/cer/zhifubao/user/alipay_cert_path.crt";//支付宝公钥证书文件路径
    private String alipay_cert_path = "/root/server/app/cert/ali/alipayCertPublicKey_RSA2.crt";//支付宝公钥证书文件路径
    private String alipay_root_cert_path = "/usr/local/server/cer/zhifubao/user/alipay_root_cert_path.crt";//支付宝CA根证书文件路径
    private String alipay_root_cert_path = "/root/server/app/cert/ali/alipayRootCert.crt";//支付宝CA根证书文件路径
    @Autowired
    private HttpClientUtil httpClientUtil;
    private Map<String, JSONObject> order = new HashMap<>();//存储支付订单用于主动查询支付结果
    /**
@@ -604,7 +603,7 @@
        Map<String, String> map1 = null;
        String body1 = null;
        try {
            String certPath = "/usr/local/server/cert/weixin/apiclient_cert.p12";
            String certPath = "/root/server/app/cert/weixin/apiclient_cert.p12";
            body1 = httpClientUtil.pushHttpsRequsetXml(url, xmlString.toString(), new HashMap<>(), mchId, certPath, "PKCS12");
        } catch (Exception e) {
            e.printStackTrace();
@@ -868,7 +867,7 @@
        xmlString.append("</xml>");
        Map<String, String> map1 = null;
        String certPath = "/usr/local/server/cert/weixin/apiclient_cert.p12";//证书地址
        String certPath = "/root/server/app/cert/weixin/apiclient_cert.p12";//证书地址
        String body1 = httpClientUtil.pushHttpsRequsetXml(url, xmlString.toString(), new HashMap<>(), mchId, certPath, "PKCS12");
        //将结果xml解析成map
        body1 = body1.replaceAll("<!\\[CDATA\\[","");
@@ -945,7 +944,7 @@
        xmlString.append("</xml>");
        Map<String, String> map1 = null;
        String certPath = "/usr/local/server/cert/weixin/apiclient_cert.p12";//证书地址
        String certPath = "/root/server/app/cert/weixin/apiclient_cert.p12";//证书地址
        String body1 = httpClientUtil.pushHttpsRequsetXml(url, xmlString.toString(), new HashMap<>(), mchId, certPath, "PKCS12");
        //将结果xml解析成map
        body1 = body1.replaceAll("<!\\[CDATA\\[","");
UserAHTravel/guns-admin/src/main/resources/application.yml
@@ -13,7 +13,6 @@
  application:
    name: user-server
  profiles:
#    active: dev
    active: dev
  mvc:
    static-path-pattern: /static/**
@@ -35,8 +34,6 @@
    log-impl: org.apache.ibatis.logging.slf4j.Slf4jImpl
logging:
  level.root: error
eureka:
@@ -56,9 +53,9 @@
spring:
  datasource:
    url: jdbc:mysql://1.95.6.206:3306/nttravel?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
    url: jdbc:mysql://127.0.0.1:3306/ahtravel?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
    username: root
    password: Xiwang2024!
    password: 123456
    db-name: guns #用来搜集数据库的所有表
    filters: wall,mergeStat
@@ -73,22 +70,7 @@
#spring:
#  datasource:
##    url: jdbc:mysql://192.168.110.34:3306/nttravel?useSSL=false&serverTimezone=GMT&useUnicode=true&amp&characterEncoding=utf-8&amp&serverTimezone=UTC&amp
#    url: jdbc:mysql://192.168.110.34:3306/nttravel?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
#    username: root
#    password: 123456
#    db-name: guns #用来搜集数据库的所有表
#    filters: wall,mergeStat
#spring:
#  datasource:
#    url: jdbc:mysql://127.0.0.1:3306/fbtravel?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=Asia/Shanghai
#    username: root
#    password: 123456
#    db-name: guns #用来搜集数据库的所有表
#    filters: wall,mergeStat
#多数据源情况的配置
guns:
@@ -107,37 +89,33 @@
wx:
  grantType: authorization_code #填authorization_code
  appid: wxc89ecab90d24edd8 #应用唯一标识,在微信开放平台提交应用审核通过后获得
  appSecret: bca863174d22736a4a9758a67484947e #应用密钥AppSecret,在微信开放平台提交应用审核通过后获得
  appletsAppid: wxe91f1af7638aa5dd #小程序APPid
  appletsAppSecret: a787e1a462715604e0c9528b6d8960d1 #
  mchId: 1677823911 #微信支付分配的商户号
  key: CnqmrOgKqOiEyytQtoyxuaRgRGjcWFnD #key为商户平台设置的密钥key:
  appid: 111 #应用唯一标识,在微信开放平台提交应用审核通过后获得
  appSecret: 111 #应用密钥AppSecret,在微信开放平台提交应用审核通过后获得
  appletsAppid: wx1e3ffc473b238a2a #小程序APPid
  appletsAppSecret: 6346afbc7afc56a008ef888ed5b74500 #
  mchId: 1618978168 #微信支付分配的商户号
  key: BTisLYCrwstKZRTBZef5pe51SCA7Kxe1 #key为商户平台设置的密钥key:
---
alipay:
  appid: 2021003183602081  #应用程序唯一标识
  appPrivateKey: MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCh2Oi+GQ1MolFx3+urEOPlYOFpUJhZlVHC2hooRsarMvI/XTnA/yR84QwkgqbZVSKLNyNuJ2MOcyuGGnNThlcgi6hq1sZCEOvxZrraLi85Zu295HPAcZdVNwWyOLSwiEQsS759fayDvVj0aVVIg88sy6NptpXgYtEpWj1NJkxrmb39fZeebPFnerDNDLeim5r6tnMcICTx41Cvkv23uXOeG79WY3F8e4DwsId/lc2VO8c0hQ2e3c2XXEYONSNSnnlLKtQT/gOu34ttKAeEc4SVeIKCsAG4XV4JxnnaJ7Muhvfpawf8jbOv+lYKd+JWUmbj6v0JXnD+uUBhWsojbWv7AgMBAAECggEBAJDmtYG0xi5tSMPOOZ2/knoD4ew7JxtVT41HXZHfw/D0vOQ0IAgFpnJTvl5VxvHfgfzoEcWGZ+5A+J+owMXwCcNupgt5XKk7ozJOyk2aeddHquSPS37pdBbsGyJ0GHnQllCeQ97wjGqqNKEmSR+SOwMdEqILwWXSsvb1/to6xsKxxlxSrTfCAGImmdbJ3latr5PWOcLwxxRArEuDb8j68pvbuwtGVueJu8q/hcoZ9ne8935wy/85HO91gl5CbJuqk/6YN39w/sazcHHsMo01j1TQlCSIV315nM1kNt4dmWcLWPFvG7TcOZNPSDA1BXTxEry6wimBBh0tETJY1mjxOckCgYEA24xF+/r7xdbenlB/uhw21i+gNLPEeJb2Ng6V6CwhX96g7QPdiymaSJn6sEeJTc0MPm0KCohtPdM+qDXCGq+5hLo0pI52ZCNYEUAZIuJrZLeZoK3b7RUAZjD3A2/LiTvMtZaomyovH9wLgDsn26oqUSLxw901FyL+9pxpBWg0z08CgYEAvLgcmTlLFJasoCOOIgTrxtvt0nqejKu691lEInQhg5KrjFSwljBSZ2043BgVA2Xl6oWopbXVUyOz/RvOdzdw8Jl6M430/FNu1rJRwRcMH31lYG66NTRZoRV9vN42qVYyXCGoaYPFHpmZnDdCs+/Pwu+V+VGQmnyfMlIWfRrKTZUCgYA4iaYYHukpaI0Jvfc2iT+B5t/d0pF88HtVLmpiUMMDekR85OrvhHYrziNls/Zi57QIe3IDhmCDdFwFW1qyHqCq0nzuB5XrccKjJpuShTZcyH8yhrNFGYxxxJhH9Uk3/QNZnAOtea6LCNKZYiKAihC9tj8GTnf2jleUUHEnKE+5NwKBgDD3oMwNNrMP6ZjfwOiI2FjQBiSAFpWvlaLKscgy0+Nc8lBGRU+jGC6oA4Hwabto/EBfEAR3avPYpsI9LdR3OUHkwPWRlwjF6VOiD16HyWh+VAiyknRtsff/KJISIqLLr+OCBD3kqAgpmNcU66Tey8zr98Eqbdf4ECKxdA5gHjAFAoGBAJISdjODKJgNDVKRzk5+EGoZ9buFyOuMxmTA0MbTScFidvVMt8jGc27b+AWcs54ZQcgGeNtl3c//K6vdrEBUTnR5tlLnlnFKzgOxlwI+i9eSOlWgz8T3+Ra3L5TIZ11kBO1I0/tB+ERLokZcgnNTERHapxr0Xu86zKjz548e/oqo #开发者应用私钥
  alipayPublicKey: MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAodjovhkNTKJRcd/rqxDj5WDhaVCYWZVRwtoaKEbGqzLyP105wP8kfOEMJIKm2VUiizcjbidjDnMrhhpzU4ZXIIuoatbGQhDr8Wa62i4vOWbtveRzwHGXVTcFsji0sIhELEu+fX2sg71Y9GlVSIPPLMujabaV4GLRKVo9TSZMa5m9/X2XnmzxZ3qwzQy3opua+rZzHCAk8eNQr5L9t7lznhu/VmNxfHuA8LCHf5XNlTvHNIUNnt3Nl1xGDjUjUp55SyrUE/4Drt+LbSgHhHOElXiCgrABuF1eCcZ52iezLob36WsH/I2zr/pWCnfiVlJm4+r9CV5w/rlAYVrKI21r+wIDAQAB #应用公钥
  alipay_public_key: MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsi4M2NzIx0UQVa7pSXZnAqzNWgGaFmfjOrkwtlxnCdnqcl/9TnXNc86N+EBnBa7xKeb6hrGn/ZE+Ex6imZMp5V41+lJZ6Ynqk3zAvaPLgiq2DU4PHRBTaJZlcoBONemHgggGq2NqQRUUNfty9ZHZejDJic1WOX+BypEZgph1yZ6z4CcxeXXCHYlWViKvwGFRZtuvcypP3Uv7juIA460C1y/+etDxaUC4LPIxQJeCI9rPCTQb54rkJd0Htbvv525tVovhJxXvF9J/XE2LzYier7T8tQJ/TYGvVvZoMmyWWIO3SBuWwjp1nSh9tfbfXTRIUJjWVFTMS04WR6oG9tDS+QIDAQAB #支付宝公钥
  appid: 2021003115600201  #应用程序唯一标识
  appPrivateKey: 1111 #开发者应用私钥
  alipayPublicKey: 111 #应用公钥
  alipay_public_key: 111 #支付宝公钥
---
juhe: #聚合数据
  appKey: 75897e3a893ed777055efc44b7b68914 #
  appKey: 93444ad1bc813182acbc1240ba80f5c7 #
---
filePath: /usr/local/server/orderPostionFile/ #存储订单轨迹文件路径
#filePath: C:/orderPostionFile/  #存储订单轨迹文件路径
filePath: /root/server/app/orderPostionFile/ #存储订单轨迹文件路径
#支付回调地址
#正式环境
callbackPath: https://weilaigo.cn/user
#测试环境
#callbackPath: http://121.37.97.220:81/user
callbackPath: http://1.95.8.79:81/user
---
UserAHTravel/guns-admin/src/main/resources/logback-spring.xml
@@ -1,119 +1,230 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
scan:当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true。
scanPeriod:设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒当scan为true时,此属性生效。默认的时间间隔为1分钟。
debug:当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。
-->
<!--文件名称需要采取官方规定的方式  带后缀-->
<configuration scan="false" scanPeriod="60 seconds" debug="false">
<!-- 日志级别从低到高分为TRACE < DEBUG < INFO < WARN < ERROR < FATAL,比如: 如果设置为WARN,则低于WARN的信息都不会输出 -->
<!-- scan:当此属性设置为true时,配置文档如果发生改变,将会被重新加载,默认值为true -->
<!-- scanPeriod:设置监测配置文档是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。当scan为true时,此属性生效。默认的时间间隔为1分钟。 -->
<!-- debug:当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。 -->
<configuration  scan="true" scanPeriod="10 seconds">
    <contextName>logback</contextName>
    <!-- 定义日志的根目录 -->
    <property name="LOG_HOME" value="/usr/local/server/logs" />
    <!--<property name="LOG_HOME" value="d:/logs/" />-->
    <!-- 定义日志文件名称 -->
    <property name="LOG_FILE_NAME" value="user_log"></property>
    <!-- name的值是变量的名称,value的值时变量定义的值。通过定义的值会被插入到logger上下文中。定义后,可以使“${}”来使用变量。 -->
    <property name="log.path" value="/root/server/app/logs/user"/>
    <!--按照官方规定  采用带后缀的命名方式,可以使用其高级Profile功能-->
    <springProfile name="dev">
        <!-- ch.qos.logback.core.ConsoleAppender 表示控制台输出 -->
        <appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">
            <!--
            日志输出格式:
                %d表示日期时间,
                %thread表示线程名,
                %-5level:级别从左显示5个字符宽度
                %logger{50} 表示logger名字最长50个字符,否则按照句点分割。
                %msg:日志消息,
                %n是换行符
            -->
            <layout class="ch.qos.logback.classic.PatternLayout">
                <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} ----> [%thread] ---> %-5level %logger{50} - %msg%n</pattern>
            </layout>
    <!--0. 日志格式和颜色渲染 -->
    <!-- 彩色日志依赖的渲染类 -->
    <conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter" />
    <conversionRule conversionWord="wex" converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter" />
    <conversionRule conversionWord="wEx" converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter" />
    <!-- 彩色日志格式 -->
    <property name="CONSOLE_LOG_PATTERN" value="${CONSOLE_LOG_PATTERN:-%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}"/>
    <!--1. 输出到控制台-->
    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
        <!--此日志appender是为开发使用,只配置最底级别,控制台输出的日志级别是大于或等于此级别的日志信息-->
        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
            <level>debug</level>
        </filter>
        <encoder>
            <Pattern>${CONSOLE_LOG_PATTERN}</Pattern>
            <!-- 设置字符集 -->
            <charset>UTF-8</charset>
        </encoder>
        </appender>
        <!--
            logger主要用于存放日志对象,也可以定义日志类型、级别
            name:表示匹配的logger类型前缀,也就是包的前半部分
            level:要记录的日志级别,包括 TRACE < DEBUG < INFO < WARN < ERROR
            additivity:作用在于children-logger是否使用 rootLogger配置的appender进行输出,
            false:表示只用当前logger的appender-ref,true:
            表示当前logger的appender-ref和rootLogger的appender-ref都有效
        -->
        <!-- hibernate logger -->
        <!-- <logger name="xxxx" level="debug" /> -->
        <!-- Spring framework logger -->
        <logger name="org.springframework" level="debug" additivity="false"></logger>
        <!-- mybatis日志打印-->
        <logger name="org.apache.ibatis" level="debug" />
        <logger name="java.sql" level="debug" />
        <logger name="com.stylefeng.guns.modular.system.dao" level="debug"></logger>
        <!--
        root与logger是父子关系,没有特别定义则默认为root,任何一个类只会和一个logger对应,
        要么是定义的logger,要么是root,判断的关键在于找到这个logger,然后判断这个logger的appender和level。
        -->
        <root level="info">
            <appender-ref ref="stdout" />
        </root>
    </springProfile>
    <springProfile name="produce">
        <!-- 滚动记录文件,先将日志记录到指定文件,当符合某个条件时,将日志记录到其他文件 -->
        <appender name="appLogAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
            <!-- 指定日志文件的名称 -->
            <file>${LOG_HOME}/${LOG_FILE_NAME}.log</file>
            <!--
            当发生滚动时,决定 RollingFileAppender 的行为,涉及文件移动和重命名
            TimeBasedRollingPolicy: 最常用的滚动策略,它根据时间来制定滚动策略,既负责滚动也负责触发滚动。
            -->
    <!--2. 输出到文档-->
    <!-- 2.1 level为 DEBUG 日志,时间滚动输出  -->
    <appender name="DEBUG_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <!-- 正在记录的日志文档的路径及文档名 -->
        <file>${log.path}/debug.log</file>
        <!--日志文档输出格式-->
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
            <charset>UTF-8</charset> <!-- 设置字符集 -->
        </encoder>
        <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
            <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
                <!--
                滚动时产生的文件的存放位置及文件名称 %d{yyyy-MM-dd}:按天进行日志滚动
                %i:当文件大小超过maxFileSize时,按照i进行文件滚动
                -->
                <fileNamePattern>${LOG_HOME}/${LOG_FILE_NAME}/%d{yyyy-MM-dd}/${LOG_FILE_NAME}-%d{yyyy-MM-dd}-%i.log</fileNamePattern>
                <!--
                可选节点,控制保留的归档文件的最大数量,超出数量就删除旧文件。假设设置每天滚动,
                且maxHistory是365,则只保存最近365天的文件,删除之前的旧文件。注意,删除旧文件是,
                那些为了归档而创建的目录也会被删除。
                -->
                <MaxHistory>10</MaxHistory>
                <!--
                当日志文件超过maxFileSize指定的大小是,根据上面提到的%i进行日志文件滚动
                注意此处配置SizeBasedTriggeringPolicy是无法实现按文件大小进行滚动的,必须配置timeBasedFileNamingAndTriggeringPolicy
                -->
            <!-- 日志归档 -->
            <fileNamePattern>${log.path}/debug-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
                <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                    <maxFileSize>100MB</maxFileSize>
                </timeBasedFileNamingAndTriggeringPolicy>
            <!--日志文档保留天数-->
            <maxHistory>180</maxHistory>
            </rollingPolicy>
            <!-- 日志输出格式: -->
            <layout class="ch.qos.logback.classic.PatternLayout">
                <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [ %thread ] - [ %-5level ] [ %logger{50} : %line ] - %msg%n</pattern>
            </layout>
        <!-- 此日志文档只记录debug级别的 -->
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>debug</level>
            <onMatch>ACCEPT</onMatch>
            <onMismatch>DENY</onMismatch>
        </filter>
    </appender>
    <!-- 2.2 level为 INFO 日志,时间滚动输出  -->
    <appender name="INFO_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <!-- 正在记录的日志文档的路径及文档名 -->
        <file>${log.path}/info.log</file>
        <!--日志文档输出格式-->
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
            <charset>UTF-8</charset>
        </encoder>
        <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- 每天日志归档路径以及格式 -->
            <fileNamePattern>${log.path}/info-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                <maxFileSize>100MB</maxFileSize>
            </timeBasedFileNamingAndTriggeringPolicy>
            <!--日志文档保留天数-->
            <maxHistory>180</maxHistory>
        </rollingPolicy>
        <!-- 此日志文档只记录info级别的 -->
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>info</level>
            <onMatch>ACCEPT</onMatch>
            <onMismatch>DENY</onMismatch>
        </filter>
    </appender>
    <!-- 2.3 level为 WARN 日志,时间滚动输出  -->
    <appender name="WARN_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <!-- 正在记录的日志文档的路径及文档名 -->
        <file>${log.path}/warn.log</file>
        <!--日志文档输出格式-->
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
            <charset>UTF-8</charset> <!-- 此处设置字符集 -->
        </encoder>
        <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <fileNamePattern>${log.path}/warn-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                <maxFileSize>100MB</maxFileSize>
            </timeBasedFileNamingAndTriggeringPolicy>
            <!--日志文档保留天数-->
            <maxHistory>180</maxHistory>
        </rollingPolicy>
        <!-- 此日志文档只记录warn级别的 -->
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>warn</level>
            <onMatch>ACCEPT</onMatch>
            <onMismatch>DENY</onMismatch>
        </filter>
    </appender>
    <!-- 2.4 level为 ERROR 日志,时间滚动输出  -->
    <appender name="ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <!-- 正在记录的日志文档的路径及文档名 -->
        <file>${log.path}/error.log</file>
        <!--日志文档输出格式-->
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
            <charset>UTF-8</charset> <!-- 此处设置字符集 -->
        </encoder>
        <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <fileNamePattern>${log.path}/error-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                <maxFileSize>100MB</maxFileSize>
            </timeBasedFileNamingAndTriggeringPolicy>
            <!--日志文档保留天数-->
            <maxHistory>180</maxHistory>
        </rollingPolicy>
        <!-- 此日志文档只记录ERROR级别的 -->
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>ERROR</level>
            <onMatch>ACCEPT</onMatch>
            <onMismatch>DENY</onMismatch>
        </filter>
    </appender>
    <!-- 2.5 所有 除了DEBUG级别的其它高于DEBUG的 日志,记录到一个文件  -->
    <appender name="ALL_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <!-- 正在记录的日志文档的路径及文档名 -->
        <file>${log.path}/all.log</file>
        <!--日志文档输出格式-->
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
            <charset>UTF-8</charset> <!-- 此处设置字符集 -->
        </encoder>
        <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <fileNamePattern>${log.path}/all-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                <maxFileSize>100MB</maxFileSize>
            </timeBasedFileNamingAndTriggeringPolicy>
            <!--日志文档保留天数-->
            <maxHistory>180</maxHistory>
        </rollingPolicy>
        <!-- 此日志文档记录除了DEBUG级别的其它高于DEBUG的 -->
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>DEBUG</level>
            <onMatch>DENY</onMatch>
            <onMismatch>ACCEPT</onMismatch>
        </filter>
        </appender>
        <!--
            logger主要用于存放日志对象,也可以定义日志类型、级别
            name:表示匹配的logger类型前缀,也就是包的前半部分
            level:要记录的日志级别,包括 TRACE < DEBUG < INFO < WARN < ERROR < FATAL
            additivity:作用在于children-logger是否使用 rootLogger配置的appender进行输出,
            false:表示只用当前logger的appender-ref,true:
            表示当前logger的appender-ref和rootLogger的appender-ref都有效
        <logger>用来设置某一个包或者具体的某一个类的日志打印级别、
        以及指定<appender>。<logger>仅有一个name属性,
        一个可选的level和一个可选的addtivity属性。
        name:用来指定受此logger约束的某一个包或者具体的某一个类。
        level:用来设置打印级别,大小写无关:TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF,
              还有一个特殊值INHERITED或者同义词NULL,代表强制执行上级的级别。
              如果未设置此属性,那么当前logger将会继承上级的级别。
        addtivity:是否向上级logger传递打印信息。默认是true。
        <logger name="org.springframework.web" level="info"/>
        <logger name="org.springframework.scheduling.annotation.ScheduledAnnotationBeanPostProcessor" level="INFO"/>
        -->
        <!-- hibernate logger -->
        <!-- <logger name="xxxx" level="debug" /> -->
        <!-- Spring framework logger -->
        <logger name="org.springframework" level="debug" additivity="false"></logger>
        <!-- mybatis日志打印-->
        <logger name="org.apache.ibatis" level="debug" />
        <logger name="java.sql" level="debug" />
        <logger name="com.stylefeng.guns.modular.system.dao" level="debug"></logger>
        <!--
        root与logger是父子关系,没有特别定义则默认为root,任何一个类只会和一个logger对应,
        要么是定义的logger,要么是root,判断的关键在于找到这个logger,然后判断这个logger的appender和level。
        root节点是必选节点,用来指定最基础的日志输出级别,只有一个level属性
        level:用来设置打印级别,大小写无关:TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF,
        不能设置为INHERITED或者同义词NULL。默认是DEBUG
        可以包含零个或多个元素,标识这个appender将会添加到这个logger。
        -->
        <root level="debug">
            <appender-ref ref="appLogAppender" />
    <!-- 4  最终的策略:
                 基本策略(root级) + 根据profile在启动时, logger标签中定制化package日志级别(优先级高于上面的root级)-->
    <springProfile name="dev">
        <root level="info">
            <appender-ref ref="CONSOLE" />
            <appender-ref ref="DEBUG_FILE" />
            <appender-ref ref="INFO_FILE" />
            <appender-ref ref="WARN_FILE" />
            <appender-ref ref="ERROR_FILE" />
            <appender-ref ref="ALL_FILE" />
        </root>
        <logger name="com.baomidou.mybatisplus" level="info"/>
        <logger name="com.stylefeng.guns.modular.system.dao" level="info"/>
        <logger name="business-log" level="warn"/>
    </springProfile>
    <springProfile name="fat">
        <root level="info">
            <appender-ref ref="CONSOLE" />
            <appender-ref ref="DEBUG_FILE" />
            <appender-ref ref="INFO_FILE" />
            <appender-ref ref="WARN_FILE" />
            <appender-ref ref="ERROR_FILE" />
            <appender-ref ref="ALL_FILE" />
        </root>
        <logger name="com.baomidou.mybatisplus" level="debug"/>
        <logger name="com.stylefeng.guns.modular.system.dao" level="error"/>
        <logger name="business-log" level="warn"/>
    </springProfile>
    <springProfile name="produce">
        <root level="info">
            <!-- 生产环境最好不配置console写文件 -->
            <appender-ref ref="DEBUG_FILE" />
            <appender-ref ref="INFO_FILE" />
            <appender-ref ref="WARN_FILE" />
            <appender-ref ref="ERROR_FILE" />
            <appender-ref ref="ALL_FILE" />
        </root>
        <logger name="com.baomidou.mybatisplus" level="error"/>
        <logger name="com.stylefeng.guns.modular.system.dao" level="debug"/>
        <logger name="business-log" level="warn"/>
    </springProfile>
</configuration>
UserAHTravel/guns-admin/src/main/resources/redis.properties
@@ -2,12 +2,11 @@
# RedisÊý¾Ý¿âË÷Òý£¨Ä¬ÈÏΪ0£©
spring.redis.database=0
# Redis·þÎñÆ÷µØÖ·
spring.redis.host=1.95.6.206
spring.redis.host=127.0.0.1
# Redis·þÎñÆ÷Á¬½Ó¶Ë¿Ú
spring.redis.port=6379
# Redis·þÎñÆ÷Á¬½ÓÃÜÂ루ĬÈÏΪ¿Õ£©
spring.redis.password=Xiwang2024!
#spring.redis.password=123456
spring.redis.password=123456
#spring.redis.password=
# Á¬½Ó³Ø×î´óÁ¬½ÓÊý£¨Ê¹ÓøºÖµ±íʾûÓÐÏÞÖÆ£©
spring.redis.jedis.pool.max-active=1024