wzp
2025-05-12 e21119007e7d9899376c0dce4ed406a4c2901310
fix:新增订单-车牌号关联表。修复bug
5个文件已添加
8个文件已修改
334 ■■■■■ 已修改文件
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/TbOrdersController.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/resources/application.yml 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/resources/logback.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/ServiceOrderAppVo.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/domain/SysClientApp.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/domain/TbVehicleOrder.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/mapper/TbVehicleOrderMapper.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/ITbVehicleOrderService.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TbVehicleOrderServiceImpl.java 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/resources/mapper/system/SysClientAppMapper.xml 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/resources/mapper/system/TbVehicleOrderMapper.xml 69 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-ui/src/views/system/clientApp/index.vue 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/TbOrdersController.java
@@ -132,6 +132,8 @@
            ServiceOrderAppVo model = new ServiceOrderAppVo();
            model.setMethod("ServiceOrder_APP"); // 设置接口名称
            model.setAppId(scApp.getMinAppId()); // 设置商户 APPID
            model.setOrderClass(scApp.getOrderClass()); // 设置民航字典orderClass
            model.setUserID(scApp.getUserId()); // 设置民航分公司Id
            model.setOrdType(tbOrders.getTypeCode().intValue());
            model.setCoPhone(tbOrders.getLinkTel()); // 客户联系电话
            model.setCoName(tbOrders.getLinkPerson()); // 客户姓名
ruoyi-admin/src/main/resources/application.yml
@@ -144,4 +144,3 @@
# 民航接口地址
min:
  apiUrl: http://120.25.98.119:8084/v1/   #测试环境:localhost:8011
  appId: appId1
ruoyi-admin/src/main/resources/logback.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <!-- 日志存放路径 -->
    <property name="log.path" value="/home/ruoyi/logs" />
    <property name="log.path" value="./logs" />
    <!-- 日志输出格式 -->
    <property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n" />
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/ServiceOrderAppVo.java
@@ -127,6 +127,15 @@
     * 时间戳
     */
    private Long unixTime;
    /**
     * 民航字典orderClass
     */
    private String orderClass;
    /**
     * 民航分公司Id
     */
    private Long userID;
    /**
     * 签名,详见签名生成算法
     */
ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java
@@ -26,6 +26,8 @@
{
    private static final Logger log = LoggerFactory.getLogger(RyTask.class);
    
    // 添加状态映射字典
    private static final Map<String, String> ORDER_STATUS_MAP = new HashMap<String, String>() {{
        put("-1", "无效取消");
@@ -62,6 +64,9 @@
    @Autowired
    private ITbCallbackLogService tbCallbackLogService;
    @Autowired
    private ITbVehicleOrderService tbVehicleOrderService;
    public void ryMultipleParams(String s, Boolean b, Long l, Double d, Integer i)
    {
@@ -132,6 +137,38 @@
                                    }
                                }
                            }
                            //如果车牌号不为空
                            if(carLicense!=null && carLicense.length()>0){
                                log.info("更新订单-车牌号关联表,【" + tbOrders.getOrderID() + "】车牌号:" + carLicense);
                                //查询是否存在关联记录
                                TbVehicleOrder tbVehicleOrder = tbVehicleOrderService.selectTbVehicleOrderById(tbOrders.getOrderID());
                                if(tbVehicleOrder==null){
                                    //不存在关联记录
                                    //创建关联记录
                                    tbVehicleOrder = new TbVehicleOrder();
                                    tbVehicleOrder.setOrderId(tbOrders.getOrderID());
                                    tbVehicleOrder.setServiceOrdId(tbOrders.getServiceOrdID());
                                    tbVehicleOrder.setVehicle(carLicense);
                                    tbVehicleOrder.setStatus("0");
                                    tbVehicleOrderService.insertTbVehicleOrder(tbVehicleOrder);
                                }
                                else{
                                    //存在关联记录
                                    //更新关联记录
                                    if(orderStatus.getMsg().contains("已返回"))
                                    {
                                        tbVehicleOrder.setStatus("1");
                                        tbVehicleOrderService.updateTbVehicleOrder(tbVehicleOrder);
                                    }
                                    else if(orderStatus.getMsg().contains("取消"))
                                    {
                                        tbVehicleOrder.setStatus("2");
                                        tbVehicleOrderService.updateTbVehicleOrder(tbVehicleOrder);
                                    }
                                }
                            }
                        }
                    }
                    catch (Exception e)
@@ -142,7 +179,7 @@
                    SysClientApp clientApp = sysClientAppService.selectSysClientAppByAppKey(tbOrders.getAppId());
                    if(clientApp==null){
                        log.error("回调地址不存在");
                        return;
                        continue;
                    }
                    String callbackUrl = clientApp.getCallbackUrl();
@@ -161,7 +198,6 @@
                        map.put("plateNo",carLicense);
                        map.put("driverMobile",driverMobiles.toString());
                        map.put("driverName", driverNames.toString());
//                        map.put("appId", tbOrders.getAppId());
                        // 第一次尝试
                        String response = sendCallback(callbackUrl, map);
ruoyi-system/src/main/java/com/ruoyi/system/domain/SysClientApp.java
@@ -67,6 +67,14 @@
    private String payUrl;
    /** 订单分类 */
    @Excel(name = "OrderClass")
    private String orderClass;
    /** 用户ID */
    @Excel(name = "用户ID")
    private Long userId;
    public Long getAppId() {
        return appId;
    }
@@ -163,6 +171,22 @@
        this.minAppSecret = minAppSecret;
    }
    
    public String getOrderClass() {
        return orderClass;
    }
    public void setOrderClass(String orderClass) {
        this.orderClass = orderClass;
    }
    public Long getUserId() {
        return userId;
    }
    public void setUserId(Long userId) {
        this.userId = userId;
    }
    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
ruoyi-system/src/main/java/com/ruoyi/system/domain/TbVehicleOrder.java
New file
@@ -0,0 +1,24 @@
package com.ruoyi.system.domain;
import lombok.Data;
import com.ruoyi.common.core.domain.BaseEntity;
/**
 * 订单和车牌号关联记录表 tb_vehicle_order
 */
@Data
public class TbVehicleOrder extends BaseEntity {
    private static final long serialVersionUID = 1L;
    /** 广交订单Id */
    private Long orderId;
    /** 民航服务单Id */
    private String serviceOrdId;
    /** 车牌号 */
    private String vehicle;
    /** 订单状态 */
    private String status;
}
ruoyi-system/src/main/java/com/ruoyi/system/mapper/TbVehicleOrderMapper.java
New file
@@ -0,0 +1,39 @@
package com.ruoyi.system.mapper;
import java.util.List;
import com.ruoyi.system.domain.TbVehicleOrder;
/**
 * 订单和车牌号关联记录Mapper接口
 */
public interface TbVehicleOrderMapper {
    /**
     * 查询订单和车牌号关联记录
     */
    public TbVehicleOrder selectTbVehicleOrderById(Long orderId);
    /**
     * 查询订单和车牌号关联记录列表
     */
    public List<TbVehicleOrder> selectTbVehicleOrderList(TbVehicleOrder tbVehicleOrder);
    /**
     * 新增订单和车牌号关联记录
     */
    public int insertTbVehicleOrder(TbVehicleOrder tbVehicleOrder);
    /**
     * 修改订单和车牌号关联记录
     */
    public int updateTbVehicleOrder(TbVehicleOrder tbVehicleOrder);
    /**
     * 删除订单和车牌号关联记录
     */
    public int deleteTbVehicleOrderById(Integer orderId);
    /**
     * 批量删除订单和车牌号关联记录
     */
    public int deleteTbVehicleOrderByIds(Integer[] orderIds);
}
ruoyi-system/src/main/java/com/ruoyi/system/service/ITbVehicleOrderService.java
New file
@@ -0,0 +1,39 @@
package com.ruoyi.system.service;
import java.util.List;
import com.ruoyi.system.domain.TbVehicleOrder;
/**
 * 订单和车牌号关联记录Service接口
 */
public interface ITbVehicleOrderService {
    /**
     * 查询订单和车牌号关联记录
     */
    public TbVehicleOrder selectTbVehicleOrderById(Long orderId);
    /**
     * 查询订单和车牌号关联记录列表
     */
    public List<TbVehicleOrder> selectTbVehicleOrderList(TbVehicleOrder tbVehicleOrder);
    /**
     * 新增订单和车牌号关联记录
     */
    public int insertTbVehicleOrder(TbVehicleOrder tbVehicleOrder);
    /**
     * 修改订单和车牌号关联记录
     */
    public int updateTbVehicleOrder(TbVehicleOrder tbVehicleOrder);
    /**
     * 批量删除订单和车牌号关联记录
     */
    public int deleteTbVehicleOrderByIds(Integer[] orderIds);
    /**
     * 删除订单和车牌号关联记录信息
     */
    public int deleteTbVehicleOrderById(Integer orderId);
}
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TbVehicleOrderServiceImpl.java
New file
@@ -0,0 +1,65 @@
package com.ruoyi.system.service.impl;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.system.mapper.TbVehicleOrderMapper;
import com.ruoyi.system.domain.TbVehicleOrder;
import com.ruoyi.system.service.ITbVehicleOrderService;
/**
 * 订单和车牌号关联记录Service业务层处理
 */
@Service
public class TbVehicleOrderServiceImpl implements ITbVehicleOrderService {
    @Autowired
    private TbVehicleOrderMapper tbVehicleOrderMapper;
    /**
     * 查询订单和车牌号关联记录
     */
    @Override
    public TbVehicleOrder selectTbVehicleOrderById(Long orderId) {
        return tbVehicleOrderMapper.selectTbVehicleOrderById(orderId);
    }
    /**
     * 查询订单和车牌号关联记录列表
     */
    @Override
    public List<TbVehicleOrder> selectTbVehicleOrderList(TbVehicleOrder tbVehicleOrder) {
        return tbVehicleOrderMapper.selectTbVehicleOrderList(tbVehicleOrder);
    }
    /**
     * 新增订单和车牌号关联记录
     */
    @Override
    public int insertTbVehicleOrder(TbVehicleOrder tbVehicleOrder) {
        return tbVehicleOrderMapper.insertTbVehicleOrder(tbVehicleOrder);
    }
    /**
     * 修改订单和车牌号关联记录
     */
    @Override
    public int updateTbVehicleOrder(TbVehicleOrder tbVehicleOrder) {
        return tbVehicleOrderMapper.updateTbVehicleOrder(tbVehicleOrder);
    }
    /**
     * 批量删除订单和车牌号关联记录
     */
    @Override
    public int deleteTbVehicleOrderByIds(Integer[] orderIds) {
        return tbVehicleOrderMapper.deleteTbVehicleOrderByIds(orderIds);
    }
    /**
     * 删除订单和车牌号关联记录信息
     */
    @Override
    public int deleteTbVehicleOrderById(Integer orderId) {
        return tbVehicleOrderMapper.deleteTbVehicleOrderById(orderId);
    }
}
ruoyi-system/src/main/resources/mapper/system/SysClientAppMapper.xml
@@ -22,10 +22,12 @@
        <result property="minAppSecret"    column="min_app_secret"    />
        <result property="callbackUrl"    column="callback_url"    />
        <result property="payUrl"    column="pay_url"    />
        <result property="orderClass"    column="order_class"    />
        <result property="userId"    column="user_id"    />
    </resultMap>
    <sql id="selectSysClientAppVo">
        select app_id, client_name, app_key, security_key, valid_start_time, valid_end_time, status, del_flag, create_by, create_time, update_by, update_time, remark, min_app_id, min_app_secret, callback_url, pay_url from sys_client_app
        select app_id, client_name, app_key, security_key, valid_start_time, valid_end_time, status, del_flag, create_by, create_time, update_by, update_time, remark, min_app_id, min_app_secret, callback_url, pay_url, order_class, user_id from sys_client_app
    </sql>
    <select id="selectSysClientAppList" parameterType="SysClientApp" resultMap="SysClientAppResult">
@@ -68,6 +70,8 @@
            <if test="minAppSecret != null">min_app_secret,</if>
            <if test="callbackUrl != null">callback_url,</if>
            <if test="payUrl != null">pay_url,</if>
            <if test="orderClass != null">order_class,</if>
            <if test="userId != null">user_id,</if>
         </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="clientName != null">#{clientName},</if>
@@ -86,6 +90,8 @@
            <if test="minAppSecret != null">#{minAppSecret},</if>
            <if test="callbackUrl != null">#{callbackUrl},</if>
            <if test="payUrl != null">#{payUrl},</if>
            <if test="orderClass != null">#{orderClass},</if>
            <if test="userId != null">#{userId},</if>
         </trim>
    </insert>
@@ -103,6 +109,8 @@
            <if test="minAppSecret != null">min_app_secret = #{minAppSecret},</if>
            <if test="callbackUrl != null">callback_url = #{callbackUrl},</if>
            <if test="payUrl != null">pay_url = #{payUrl},</if>
            <if test="orderClass != null">order_class = #{orderClass},</if>
            <if test="userId != null">user_id = #{userId},</if>
            <if test="updateBy != null">update_by = #{updateBy},</if>
            update_time = sysdate()
        </set>
ruoyi-system/src/main/resources/mapper/system/TbVehicleOrderMapper.xml
New file
@@ -0,0 +1,69 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.system.mapper.TbVehicleOrderMapper">
    <resultMap type="TbVehicleOrder" id="TbVehicleOrderResult">
        <result property="orderId"     column="orderId"     />
        <result property="serviceOrdId" column="serviceOrdId"/>
        <result property="vehicle"      column="vehicle"     />
        <result property="status"       column="status"      />
    </resultMap>
    <sql id="selectTbVehicleOrderVo">
        select orderId, serviceOrdId, vehicle, status from tb_vehicle_order
    </sql>
    <select id="selectTbVehicleOrderList" parameterType="TbVehicleOrder" resultMap="TbVehicleOrderResult">
        <include refid="selectTbVehicleOrderVo"/>
        <where>
            <if test="orderId != null "> and orderId = #{orderId}</if>
            <if test="serviceOrdId != null "> and serviceOrdId = #{serviceOrdId}</if>
            <if test="vehicle != null  and vehicle != ''"> and vehicle = #{vehicle}</if>
            <if test="status != null  and status != ''"> and status = #{status}</if>
        </where>
    </select>
    <select id="selectTbVehicleOrderById" parameterType="Long" resultMap="TbVehicleOrderResult">
        <include refid="selectTbVehicleOrderVo"/>
        where orderId = #{orderId}
    </select>
    <insert id="insertTbVehicleOrder" parameterType="TbVehicleOrder">
        insert into tb_vehicle_order
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="orderId != null">orderId,</if>
            <if test="serviceOrdId != null">serviceOrdId,</if>
            <if test="vehicle != null">vehicle,</if>
            <if test="status != null">status,</if>
         </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="orderId != null">#{orderId},</if>
            <if test="serviceOrdId != null">#{serviceOrdId},</if>
            <if test="vehicle != null">#{vehicle},</if>
            <if test="status != null">#{status},</if>
         </trim>
    </insert>
    <update id="updateTbVehicleOrder" parameterType="TbVehicleOrder">
        update tb_vehicle_order
        <trim prefix="SET" suffixOverrides=",">
            <if test="serviceOrdId != null">serviceOrdId = #{serviceOrdId},</if>
            <if test="vehicle != null">vehicle = #{vehicle},</if>
            <if test="status != null">status = #{status},</if>
        </trim>
        where orderId = #{orderId}
    </update>
    <delete id="deleteTbVehicleOrderById" parameterType="Integer">
        delete from tb_vehicle_order where orderId = #{orderId}
    </delete>
    <delete id="deleteTbVehicleOrderByIds" parameterType="String">
        delete from tb_vehicle_order where orderId in
        <foreach item="orderId" collection="array" open="(" separator="," close=")">
            #{orderId}
        </foreach>
    </delete>
</mapper>
ruoyi-ui/src/views/system/clientApp/index.vue
@@ -102,10 +102,12 @@
          <dict-tag :options="dict.type.sys_normal_disable" :value="scope.row.status"/>
        </template>
      </el-table-column>
      <el-table-column label="民航合作公司Id" align="center" prop="minAppId" />
      <el-table-column label="民航合作公司AppId" align="center" prop="minAppId" />
      <el-table-column label="民航合作公司密钥" align="center" prop="minAppSecret" />
      <el-table-column label="回调地址" align="center" prop="callbackUrl" />
      <el-table-column label="支付地址" align="center" prop="payUrl" />
      <el-table-column label="民航字典orderClass" align="center" prop="orderClass" />
      <el-table-column label="民航分公司Id" align="center" prop="userId" />
      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
        <template slot-scope="scope">
          <el-button
@@ -178,6 +180,12 @@
        <el-form-item label="支付地址" prop="payUrl">
          <el-input v-model="form.payUrl" placeholder="请输入支付地址" />
        </el-form-item>
        <el-form-item label="民航字典orderClass" prop="orderClass">
          <el-input v-model="form.orderClass" placeholder="请输入民航字典orderClass" />
        </el-form-item>
        <el-form-item label="民航分公司Id" prop="userId">
          <el-input v-model="form.userId" placeholder="请输入民航分公司Id" />
        </el-form-item>
        <el-form-item label="备注" prop="remark">
          <el-input v-model="form.remark" type="textarea" placeholder="请输入内容" />
        </el-form-item>