Pu Zhibing
6 天以前 b4c371a3049be8a53a5cad6b6ba499ebaf438232
修改bug
8个文件已修改
147 ■■■■■ 已修改文件
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/UserInfoController.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/OrderUtil.java 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/QianYunTongConfig.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/UserUtil.java 52 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserQYTTravel/guns-admin/src/main/resources/application-dev.yml 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserQYTTravel/guns-admin/src/main/resources/application-produce.yml 61 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserQYTTravel/guns-admin/src/main/resources/application-test.yml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java
@@ -2391,8 +2391,8 @@
            List<TripOrderVo> tripOrderVos = processTripOrderVos(orderList);
            String filePath = tripSheetGenerator.generatePdf(tripOrderVos);
            File attachment = new File(filePath);
            String displayFileName = "贵人家园行程单.pdf";
            emailUtil.sendEmailWithAttachment(tripSheet.getRecipientEmail(), "行程单", "请查收您的行程单", attachment,displayFileName);
            String displayFileName = "贵人家园出行-行程单.pdf";
            emailUtil.sendEmailWithAttachment(tripSheet.getRecipientEmail(), "贵人家园出行-行程单", "贵人家园出行-行程单", attachment,displayFileName);
            attachment.delete(); // 发送成功后删除临时文件
            Map<String, Object> result = new HashMap<>();
            result.put("orderNum", orderList.size());
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/UserInfoController.java
@@ -11,6 +11,7 @@
import com.stylefeng.guns.modular.system.service.*;
import com.stylefeng.guns.modular.system.util.ResultUtil;
import com.stylefeng.guns.modular.system.util.WeChatUtil;
import com.stylefeng.guns.modular.system.util.qianyuntong.UserUtil;
import com.stylefeng.guns.modular.system.warpper.LoginWarpper;
import com.stylefeng.guns.modular.system.warpper.UserInfoWarpper;
import com.stylefeng.guns.modular.system.warpper.VerifiedWarpper;
@@ -393,6 +394,12 @@
            if(null == uid){
                return ResultUtil.tokenErr();
            }
            UserInfo userInfo = userInfoService.selectById(uid);
            if(ToolUtil.isEmpty(userInfo.getOnconUUID())){
                String onconUUIDByMobile = UserUtil.getOnconUUIDByMobile("15828353127");
                userInfo.setOnconUUID(onconUUIDByMobile);
                userInfoService.updateById(userInfo);
            }
            Map<String, Object> map = userInfoService.queryUserInfo(uid);
            UserWithdrawal userWithdrawal1 = userWithdrawalService.selectOne(new EntityWrapper<UserWithdrawal>()
                    .eq("phone", map.get("phone"))
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/OrderUtil.java
@@ -184,7 +184,7 @@
     * @return
     */
    public static PayInfo tradePayOff1(TradePayOff1Data tradePayOff1Data) {
        tradePayOff1Data.setPartnerId("5400004");
        tradePayOff1Data.setPartnerId("prod".equals(qianYunTongConfig.getActiveProfile()) ? "5401007" : "5400004");
        tradePayOff1Data.setTimeout("72H");
        tradePayOff1Data.setScene("TRAFFIC");
        tradePayOff1Data.setCurrency("RMB");
@@ -201,7 +201,7 @@
        
        
        TradeRequest request = new TradeRequest<TradePayOff1Data>();
        request.setSceneId("1911676727023968256");
        request.setSceneId("prod".equals(qianYunTongConfig.getActiveProfile()) ? "1954795404533583872" : "1911676727023968256");
        request.setAppId(qianYunTongConfig.getAppkey());
        request.setConfigVersion(1);
        request.setRequestId(UUIDUtil.getRandomCode());
@@ -392,7 +392,7 @@
        tradeOrderCreateData.setTimeout("72H");
        tradeOrderCreateData.setOrderAppId("52270015");
        tradeOrderCreateData.setChannelSource("GRJYCXWXXCX");
        tradeOrderCreateData.setPayPartnerId("5400004");
        tradeOrderCreateData.setPayPartnerId("prod".equals(qianYunTongConfig.getActiveProfile()) ? "5401007" : "5400004");
        tradeOrderCreateData.setCurrency("RMB");
        tradeOrderCreateData.setNeedLoginFlag("N");
        tradeOrderCreateData.setAccessMode("APP");
@@ -406,7 +406,7 @@
        
        
        TradeRequest request = new TradeRequest<TradeOrderCreateData>();
        request.setSceneId("1945688132719169536");
        request.setSceneId("prod".equals(qianYunTongConfig.getActiveProfile()) ? "1954793280550756352" : "1945688132719169536");
        request.setAppId(qianYunTongConfig.getAppkey());
        request.setConfigVersion(1);
        request.setRequestId(UUIDUtil.getRandomCode());
@@ -458,7 +458,7 @@
        createOrderRequest.setChannelSource("GRJYCXWXXCX");
        
        TradeRequest request = new TradeRequest<CreateOrderRequest>();
        request.setSceneId("1948289607125864448");
        request.setSceneId("prod".equals(qianYunTongConfig.getActiveProfile()) ? "1954792737421942784" : "1948289607125864448");
        request.setAppId(qianYunTongConfig.getAppkey());
        request.setConfigVersion(1);
        request.setRequestId(UUIDUtil.getRandomCode());
@@ -504,7 +504,7 @@
     * @return
     */
    public static PayInfo tradePayOff(TradePayOffData tradePayOffData) {
        tradePayOffData.setPartnerId("5400005");
        tradePayOffData.setPartnerId("prod".equals(qianYunTongConfig.getActiveProfile()) ? "5401008" : "5400005");
        tradePayOffData.setTimeout("72H");
        tradePayOffData.setScene("TRAFFIC");
        tradePayOffData.setCurrency("RMB");
@@ -540,9 +540,9 @@
        
        
        TradeRequest request = new TradeRequest<TradePayOffData>();
        request.setSceneId("1774717104844095488");
        request.setSceneId("prod".equals(qianYunTongConfig.getActiveProfile()) ? "1954794605782913024" : "1774717104844095488");
        request.setAppId(qianYunTongConfig.getAppkey());
        request.setConfigVersion(2);
        request.setConfigVersion("prod".equals(qianYunTongConfig.getActiveProfile()) ? 1 : 2);
        request.setRequestId(UUIDUtil.getRandomCode());
        request.setData(tradePayOffData);
        //请求路径
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/QianYunTongConfig.java
@@ -186,7 +186,7 @@
        }
        if("prod".equals(activeProfile)){
            this.setAppkey("10001104");
            this.setPrivateKeyPath("/root/server/app/key/private_key.pem");
            this.setPrivateKeyPath("/etraffic/server/private_key.pem");
            this.setUserName("xiwang");
            this.setStatus("1");
            this.setApiUrl("http://jjzhongtai.stqcloud.com:10010");
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/UserUtil.java
@@ -25,10 +25,7 @@
    private static QianYunTongConfig qianYunTongConfig = SpringContextsUtil.getBean(QianYunTongConfig.class).getQianYunTongConfig();
    
    
    public static void main(String[] args) {
//        List<QYTUserInfo> userInfoByPhone = getUserInfoByPhone("15828353127");
//        System.out.println(userInfoByPhone);
    }
    
    
    /**
@@ -321,4 +318,51 @@
        return object.getBoolean("isok");
    }
    
    /**
     * 根据手机号码获取易信uuid
     * @param mobile
     * @return
     */
    public static String getOnconUUIDByMobile(String mobile) {
        //请求路径
        String url = qianYunTongConfig.getApiUrl() + "/openapi/rest/1.0/getOnconUUIDByMobile";
        //私钥文件
        String skprivateKeyFile = qianYunTongConfig.getPrivateKeyPath();
        //注意:私钥文件需要开发者手动新建.pem文件,将委办局提供的私钥串复制进文件里用于sign加密
        String appKey = qianYunTongConfig.getAppkey();//appkey
        Map<String, String> headers = new HashMap<>();
        headers.put("Content-Type", "application/json");
        Map<String, Object> contentMap = new HashMap<String, Object>();
        Date nowdate = new Date();
        SimpleDateFormat date = new SimpleDateFormat("yyyyMMddHHmmss");
        String timeStamp = date.format(nowdate);
        String messageId = UUID.randomUUID().toString().replaceAll("-", "");
        contentMap.put(SystemParameterNames.getAppKey(), appKey);
        contentMap.put(SystemParameterNames.getMessage_id(), messageId);
        contentMap.put(SystemParameterNames.getUserName(), qianYunTongConfig.getUserName());
        contentMap.put(SystemParameterNames.getStatus(), qianYunTongConfig.getStatus());
        Map<String, String> map = new HashMap<>();
        map.put("mobile", mobile);
        contentMap.put("content", JSON.toJSONString(map));
        log.info("【根据手机号码获取易信uuid】请求地址:" + url);
        log.info("【根据手机号码获取易信uuid】请求参数:" + JSON.toJSONString(contentMap));
        String result = OpenApiClient.sendCommonHttpRequst(url, headers, "POST", skprivateKeyFile, timeStamp, contentMap);
        log.info("【根据手机号码获取易信uuid】请求结果:" + result);
        JSONObject jsonObject = JSON.parseObject(result);
        String retCode = jsonObject.getString("retCode");
        if (!"0".equals(retCode)) {
            log.error("【根据手机号码获取易信uuid】请求失败:" + result);
            throw new RuntimeException("【根据手机号码获取易信uuid】请求失败:" + result);
        }
        JSONObject object = jsonObject.getJSONObject("object");
        Integer status = object.getInteger("status");
        if(0 != status){
            log.error("【身份证实名认证】请求失败:" + object.getString("desc"));
            throw new RuntimeException("【身份证实名认证】请求失败:" + object.getString("desc"));
        }
        return object.getString("onconUUID");
    }
}
UserQYTTravel/guns-admin/src/main/resources/application-dev.yml
@@ -15,7 +15,6 @@
    name: user-server
  profiles:
    active: dev
  #    active: prod
  mvc:
    static-path-pattern: /static/**
    view:
UserQYTTravel/guns-admin/src/main/resources/application-produce.yml
@@ -14,8 +14,7 @@
  application:
    name: user-server
  profiles:
    active: dev
  #    active: prod
    active: prod
  mvc:
    static-path-pattern: /static/**
    view:
@@ -30,18 +29,13 @@
      max-request-size: 100MB
      max-file-size: 100MB
  redis:
    host: 192.168.110.80
    port: 6379
    password: 123456
    host: 10.31.1.219
    port: 6410
    password: Qnz_jt@20#25
    database: 0
  #  redis:
  #    host: 172.21.35.151
  #    port: 6512
  #    password: SC_cache@20#25
  #    database: 0
  #    timeout: 1000
  #    cluster:
  #      nodes: 172.21.35.151:6512,172.21.35.152:6512,172.21.35.153:6512,172.21.35.151:6513,172.21.35.152:6513,172.21.35.153:6513
    timeout: 1000
    cluster:
      nodes: 10.31.1.219:6410,10.31.1.30:6410,10.31.1.97:6411
mybatis-plus:
  typeAliasesPackage: com.stylefeng.guns.modular
@@ -53,7 +47,7 @@
eureka:
  client:
    service-url: #注册中心地址
      defaultZone: http://sinata:sinata@192.168.110.85:8000/eureka #启用身份验证的方式连接
      defaultZone: http://sinata:sinata@127.0.0.1:8000/eureka #启用身份验证的方式连接
    register-with-eureka: true #在注册中心进行注册
    fetch-registry: true #从Eureka中获取注册信息。
@@ -66,29 +60,22 @@
spring:
  datasource:
    url: jdbc:mysql://192.168.110.80:3306/qyttravel?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=Asia/Shanghai
    username: root
    password: 123456
    db-name: qyttravel #用来搜集数据库的所有表
    url: jdbc:mysql://10.31.9.146:8066/qnjt_ridingdb?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=Asia/Shanghai
    username: qnjt_ridingusr
    password: qnjtriding@Prom2025
    db-name: traffic_scdb #用来搜集数据库的所有表
    filters: wall,mergeStat
  #spring:
  #  datasource:
  #    url: jdbc:mysql://172.21.35.140:8066/traffic_scdb?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=Asia/Shanghai
  #    username: traffic_scusr
  #    password: QYT_sc@20#25
  #    db-name: traffic_scdb #用来搜集数据库的所有表
  #    filters: wall,mergeStat
---
spring:
  data:
    mongodb:
      uri: mongodb://192.168.110.80:27017/traveling_track
  #      uri: mongodb://qyt_jtcx:qyt_jtcx2025@172.21.35.195:27017,172.21.35.196:27017/traveling_track
      host: 10.31.204.66
      port: 27009
      username: qnjt_ridingmgdb
      password: qnjtriding@Prom2025
      database: qnjt_ridingmgdb
---
@@ -117,12 +104,12 @@
  appKey: 111 #
qyt:
  socket_uri: http://192.168.110.85:6000
  socket_uri: http://10.31.182.13:6000
---
#支付回调地址
#正式环境
callbackPath: https://traffic.qytzt.cn/user
callbackPath: https://traffic.qytzt.cn/chuxing/user
---
@@ -133,10 +120,10 @@
#邮件配置
spring:
  mail:
    host: smtp.qq.com
    port: 465
    username: 1721849008@qq.com
    password: nhnbmjfdywilcbdj  # 这里是授权码,不是邮箱登录密码
    host: smtp.163.com
    port: 993
    username: QYTJT001@163.com
    password: GPaYdKdsQphDGRJd  # 这里是授权码,不是邮箱登录密码
    properties:
      mail:
        smtp:
@@ -146,4 +133,4 @@
# pdf生成位置
trip:
  sheet:
    filePath: D:/qytPdf/
    filePath: /etraffic/server/qytPdf/
UserQYTTravel/guns-admin/src/main/resources/application-test.yml
@@ -72,7 +72,7 @@
spring:
  data:
    mongodb:
      host: 10.88.204.206,10.88.204.207,10.88.204.208
      host: 10.88.204.206
      port: 27009
      username: qn_riding_adm
      password: QN_riding@Prom2025
@@ -106,7 +106,7 @@
  appKey: 111 #
qyt:
  socket_uri: http://192.168.110.85:6000
  socket_uri: http://10.88.188.199:6000
---
#支付回调地址