Эх сурвалжийг харах

订单轨迹后端接口完善

lipf 1 сар өмнө
parent
commit
a04e6aca18

+ 2 - 0
commons/src/main/java/com/jzg/commons/entity/vo/InsFeeOrdersVo.java

@@ -2,6 +2,7 @@ package com.jzg.commons.entity.vo;
 
 
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableId;
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.jzg.commons.entity.po.InsFeeOrders;
 import com.jzg.commons.entity.po.InsFeeOrders;
 import com.jzg.commons.util.BigDecimalUtil;
 import com.jzg.commons.util.BigDecimalUtil;
 import io.swagger.v3.oas.annotations.media.Schema;
 import io.swagger.v3.oas.annotations.media.Schema;
@@ -35,6 +36,7 @@ public class InsFeeOrdersVo {
     private String userId;
     private String userId;
 
 
     @Schema(description = "签单时间")
     @Schema(description = "签单时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
     private LocalDateTime signTime;
     private LocalDateTime signTime;
 
 
     @Schema(description = "交强险保费")
     @Schema(description = "交强险保费")

+ 51 - 0
commons/src/main/java/com/jzg/commons/util/OrderComponts.java

@@ -0,0 +1,51 @@
+package com.jzg.commons.util;
+
+
+import java.util.HashMap;
+import java.util.Map;
+
+public class OrderComponts {
+
+    public static Map<String, String> fillKeyNameMap(){
+
+        Map<String,String> nameMap = new HashMap<>();
+        nameMap.put("costRatio.jqExportRatio","交强出口比例");
+        nameMap.put("costRatio.jqFollowRatio","交强跟单比例");
+        nameMap.put("costRatio.jqInletRatio","交强入口比例");
+        nameMap.put("costRatio.jqKeepPointRatio","交强留点比例");
+
+        nameMap.put("costRatio.syExportRatio","商业出口比例");
+        nameMap.put("costRatio.syFollowRatio","商业跟单比例");
+        nameMap.put("costRatio.syInletRatio","商业入口比例");
+        nameMap.put("costRatio.syKeepPointRatio","商业留点比例");
+
+        nameMap.put("costRatio.jyExportRatio","驾意出口比例");
+        nameMap.put("costRatio.jyFollowRatio","驾意跟单比例");
+        nameMap.put("costRatio.jyInletRatio","驾意入口比例");
+        nameMap.put("costRatio.jyKeepPointRatio","驾意留点比例");
+
+        nameMap.put("insFeeOrders.jqExportPremium","交强出口费用");
+        nameMap.put("insFeeOrders.jqReceivablePremium","交强应收费用");
+        nameMap.put("insFeeOrders.jqKeepPointPremium","交强留点费用");
+        nameMap.put("insFeeOrders.jqFollowPremium","交强跟单费用");
+        nameMap.put("insFeeOrders.jqPayablePremium","交强应付费用");
+
+        nameMap.put("insFeeOrders.syExportPremium","商业出口费用");
+        nameMap.put("insFeeOrders.syReceivablePremium","商业应收费用");
+        nameMap.put("insFeeOrders.syKeepPointPremium","商业留点费用");
+        nameMap.put("insFeeOrders.syFollowPremium","商业跟单费用");
+        nameMap.put("insFeeOrders.syPayablePremium","商业应付费用");
+
+        nameMap.put("insFeeOrders.jyExportPremium","驾意出口费用");
+        nameMap.put("insFeeOrders.jyReceivablePremium","驾意应收费用");
+        nameMap.put("insFeeOrders.jyKeepPointPremium","驾意留点费用");
+        nameMap.put("insFeeOrders.jyFollowPremium","驾意跟单费用");
+        nameMap.put("insFeeOrders.jyPayablePremium","驾意应付费用");
+
+        nameMap.put("insFeeOrders.totalReceivablePremium","总应收费用");
+        nameMap.put("insFeeOrders.totalPayablePremium","总应付费用");
+        nameMap.put("insFeeOrders.totalExportPremium","总出口费用");
+        return nameMap;
+    }
+
+}

+ 8 - 49
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/aop/OrderOperationLogAspect.java

@@ -17,12 +17,12 @@ import com.jzg.commons.entity.vo.AdjustAllRefundVo;
 import com.jzg.commons.entity.vo.PtlAgreementCostRatioVo;
 import com.jzg.commons.entity.vo.PtlAgreementCostRatioVo;
 import com.jzg.commons.entity.vo.QuestionOrder;
 import com.jzg.commons.entity.vo.QuestionOrder;
 import com.jzg.commons.util.JsonDiffUtil;
 import com.jzg.commons.util.JsonDiffUtil;
+import com.jzg.commons.util.OrderComponts;
 import com.jzg.quotation.commons.constant.SpElMapping;
 import com.jzg.quotation.commons.constant.SpElMapping;
 import com.jzg.quotation.commons.utils.SpElFieldExtractor;
 import com.jzg.quotation.commons.utils.SpElFieldExtractor;
 import com.jzg.quotation.summary.aop.aspect.OrderOperationLog;
 import com.jzg.quotation.summary.aop.aspect.OrderOperationLog;
 import com.jzg.quotation.summary.constants.QuoteNumberConstant;
 import com.jzg.quotation.summary.constants.QuoteNumberConstant;
 import com.jzg.quotation.summary.service.*;
 import com.jzg.quotation.summary.service.*;
-import com.jzg.quotation.taikang.crawler.JsonUtil;
 import org.aspectj.lang.ProceedingJoinPoint;
 import org.aspectj.lang.ProceedingJoinPoint;
 import org.aspectj.lang.annotation.Around;
 import org.aspectj.lang.annotation.Around;
 import org.aspectj.lang.annotation.Aspect;
 import org.aspectj.lang.annotation.Aspect;
@@ -37,9 +37,6 @@ import org.springframework.expression.spel.standard.SpelExpressionParser;
 import org.springframework.expression.spel.support.StandardEvaluationContext;
 import org.springframework.expression.spel.support.StandardEvaluationContext;
 import org.springframework.stereotype.Component;
 import org.springframework.stereotype.Component;
 
 
-import java.io.IOException;
-import java.nio.file.Files;
-import java.nio.file.Path;
 import java.util.*;
 import java.util.*;
 
 
 @Aspect
 @Aspect
@@ -65,6 +62,12 @@ public class OrderOperationLogAspect {
     @Autowired
     @Autowired
     private InsOrderAdjustService insOrderAdjustService;
     private InsOrderAdjustService insOrderAdjustService;
 
 
+    /**
+     * 批量修改比例
+     *
+     * @author lipf
+     * @date 2026/7/8 15:29
+     */
     @Around("@annotation(log)")
     @Around("@annotation(log)")
     public Object handleLog(ProceedingJoinPoint joinPoint, OrderOperationLog log) throws Throwable {
     public Object handleLog(ProceedingJoinPoint joinPoint, OrderOperationLog log) throws Throwable {
         // 获取方法信息和参数
         // 获取方法信息和参数
@@ -280,7 +283,7 @@ public class OrderOperationLogAspect {
         if(CollUtil.isNotEmpty(diffMap)){
         if(CollUtil.isNotEmpty(diffMap)){
             List<String> oldItems = new ArrayList<>();
             List<String> oldItems = new ArrayList<>();
             List<String> newItems = new ArrayList<>();
             List<String> newItems = new ArrayList<>();
-            Map<String,String> keyMap = this.fillKeyNameMap();
+            Map<String,String> keyMap = OrderComponts.fillKeyNameMap();
             diffMap.forEach((path, values) ->{
             diffMap.forEach((path, values) ->{
                         System.out.println("路径: " + path + " -> 值1: " + values.get(0) + " | 值2: " + values.get(1));
                         System.out.println("路径: " + path + " -> 值1: " + values.get(0) + " | 值2: " + values.get(1));
                         oldItems.add(keyMap.getOrDefault(path,path)  + ": " + values.get(0));
                         oldItems.add(keyMap.getOrDefault(path,path)  + ": " + values.get(0));
@@ -298,50 +301,6 @@ public class OrderOperationLogAspect {
         track.setResult(JSONUtil.toJsonStr(result));
         track.setResult(JSONUtil.toJsonStr(result));
         traceService.save(track);
         traceService.save(track);
     }
     }
-
-    Map<String, String> fillKeyNameMap(){
-
-        Map<String,String> nameMap = new  HashMap<>();
-        nameMap.put("costRatio.jqExportRatio","交强出口比例");
-        nameMap.put("costRatio.jqFollowRatio","交强跟单比例");
-        nameMap.put("costRatio.jqInletRatio","交强入口比例");
-        nameMap.put("costRatio.jqKeepPointRatio","交强留点比例");
-
-        nameMap.put("costRatio.syExportRatio","商业出口比例");
-        nameMap.put("costRatio.syFollowRatio","商业跟单比例");
-        nameMap.put("costRatio.syInletRatio","商业入口比例");
-        nameMap.put("costRatio.syKeepPointRatio","商业留点比例");
-
-        nameMap.put("costRatio.jyExportRatio","驾意出口比例");
-        nameMap.put("costRatio.jyFollowRatio","驾意跟单比例");
-        nameMap.put("costRatio.jyInletRatio","驾意入口比例");
-        nameMap.put("costRatio.jyKeepPointRatio","驾意留点比例");
-
-        nameMap.put("insFeeOrders.jqExportPremium","交强出口费用");
-        nameMap.put("insFeeOrders.jqReceivablePremium","交强应收费用");
-        nameMap.put("insFeeOrders.jqKeepPointPremium","交强留点费用");
-        nameMap.put("insFeeOrders.jqFollowPremium","交强跟单费用");
-        nameMap.put("insFeeOrders.jqPayablePremium","交强应付费用");
-
-        nameMap.put("insFeeOrders.syExportPremium","商业出口费用");
-        nameMap.put("insFeeOrders.syReceivablePremium","商业应收费用");
-        nameMap.put("insFeeOrders.syKeepPointPremium","商业留点费用");
-        nameMap.put("insFeeOrders.syFollowPremium","商业跟单费用");
-        nameMap.put("insFeeOrders.syPayablePremium","商业应付费用");
-
-        nameMap.put("insFeeOrders.jyExportPremium","驾意出口费用");
-        nameMap.put("insFeeOrders.jyReceivablePremium","驾意应收费用");
-        nameMap.put("insFeeOrders.jyKeepPointPremium","驾意留点费用");
-        nameMap.put("insFeeOrders.jyFollowPremium","驾意跟单费用");
-        nameMap.put("insFeeOrders.jyPayablePremium","驾意应付费用");
-
-        nameMap.put("insFeeOrders.totalReceivablePremium","总应收费用");
-        nameMap.put("insFeeOrders.totalPayablePremium","总应付费用");
-        nameMap.put("insFeeOrders.totalExportPremium","总出口费用");
-        return nameMap;
-    }
-
-
     /**
     /**
      * 订单审核(通过/驳回)
      * 订单审核(通过/驳回)
      *
      *

+ 1 - 2
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/controller/InsFeeAuditController.java

@@ -40,7 +40,6 @@ public class InsFeeAuditController {
 
 
     /**
     /**
      * 订单列表分页
      * 订单列表分页
-     *
      * 支持查询租户下的所有数据,或者租户下,指定业务员领取后的数据。
      * 支持查询租户下的所有数据,或者租户下,指定业务员领取后的数据。
      * @return HttpResult<Page<FeeAuditVo>>
      * @return HttpResult<Page<FeeAuditVo>>
      */
      */
@@ -70,7 +69,7 @@ public class InsFeeAuditController {
      */
      */
     @GetMapping("/auditInfo")
     @GetMapping("/auditInfo")
     @Operation(summary = "订单审核详情")
     @Operation(summary = "订单审核详情")
-    public HttpResult<QuoteEchoVo> auditInfo(String orderNo){
+    public HttpResult<QuoteEchoVo> auditInfo(@RequestParam("orderNo") String orderNo){
         QuoteEchoVo detailVo = insFeeAuditService.auditInfo(orderNo);
         QuoteEchoVo detailVo = insFeeAuditService.auditInfo(orderNo);
         return HttpResult.ok(detailVo);
         return HttpResult.ok(detailVo);
     }
     }

+ 78 - 33
tenant/organization/src/main/java/com/jzg/organization/aop/OrderOperationLogAspect.java

@@ -2,12 +2,16 @@ package com.jzg.organization.aop;
 
 
 import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.collection.CollUtil;
 import cn.hutool.json.JSONUtil;
 import cn.hutool.json.JSONUtil;
+import com.jzg.commons.core.page.HttpResult;
 import com.jzg.commons.entity.finance.vo.BatchModifyVo;
 import com.jzg.commons.entity.finance.vo.BatchModifyVo;
 import com.jzg.commons.entity.orders.po.InsOrders;
 import com.jzg.commons.entity.orders.po.InsOrders;
 import com.jzg.commons.entity.orders.po.InsOrdersCarInfo;
 import com.jzg.commons.entity.orders.po.InsOrdersCarInfo;
 import com.jzg.commons.entity.orders.po.InsOrdersTrack;
 import com.jzg.commons.entity.orders.po.InsOrdersTrack;
+import com.jzg.commons.entity.quote.vo.aggregated.QuoteEchoVo;
 import com.jzg.commons.entity.vo.PtlAgreementCostRatioVo;
 import com.jzg.commons.entity.vo.PtlAgreementCostRatioVo;
 import com.jzg.commons.entity.vo.QuestionOrder;
 import com.jzg.commons.entity.vo.QuestionOrder;
+import com.jzg.commons.util.JsonDiffUtil;
+import com.jzg.commons.util.OrderComponts;
 import com.jzg.organization.client.InsOrdersClient;
 import com.jzg.organization.client.InsOrdersClient;
 import com.jzg.quotation.summary.aop.aspect.OrderOperationLog;
 import com.jzg.quotation.summary.aop.aspect.OrderOperationLog;
 import org.aspectj.lang.ProceedingJoinPoint;
 import org.aspectj.lang.ProceedingJoinPoint;
@@ -24,7 +28,7 @@ import org.springframework.expression.spel.standard.SpelExpressionParser;
 import org.springframework.expression.spel.support.StandardEvaluationContext;
 import org.springframework.expression.spel.support.StandardEvaluationContext;
 import org.springframework.stereotype.Component;
 import org.springframework.stereotype.Component;
 
 
-import java.util.List;
+import java.util.*;
 
 
 @Aspect
 @Aspect
 @Component
 @Component
@@ -38,6 +42,12 @@ public class OrderOperationLogAspect {
 
 
 
 
 
 
+    /**
+     * 这个方法不能删除,是通过spring aop 来调用的
+     *
+     * @author lipf
+     * @date 2026/7/22 15:11
+     */
     @Around("@annotation(log)")
     @Around("@annotation(log)")
     public Object handleLog(ProceedingJoinPoint joinPoint, OrderOperationLog log) throws Throwable {
     public Object handleLog(ProceedingJoinPoint joinPoint, OrderOperationLog log) throws Throwable {
         // 获取方法信息和参数
         // 获取方法信息和参数
@@ -65,8 +75,24 @@ public class OrderOperationLogAspect {
             case 16:
             case 16:
                 logger.info("批量修改比例.log.orderSpEl()=[{}]",log.orderSpEl());
                 logger.info("批量修改比例.log.orderSpEl()=[{}]",log.orderSpEl());
                 BatchModifyVo batchModifyVo = parser.parseExpression(log.orderSpEl()).getValue(context, BatchModifyVo.class);
                 BatchModifyVo batchModifyVo = parser.parseExpression(log.orderSpEl()).getValue(context, BatchModifyVo.class);
+                List<String> orderNos = batchModifyVo.getOrderNos();
+                if(CollUtil.isEmpty(orderNos)){
+                    throw new RuntimeException("缺少orderNos参数");
+                }
+                Map<String,QuoteEchoVo> oldOrders = new HashMap<>();
+                for (String orderNo : orderNos) {
+                    HttpResult<QuoteEchoVo> quoteEchoVoHttpResult = insOrdersClient.auditInfo(orderNo);
+                    oldOrders.put(orderNo,quoteEchoVoHttpResult.getData());
+                }
                 result = joinPoint.proceed();
                 result = joinPoint.proceed();
-                this.batchModify(result,log, batchModifyVo);
+
+                Map<String,QuoteEchoVo> newOrders = new HashMap<>();
+                for (String orderNo : orderNos) {
+                    HttpResult<QuoteEchoVo> quoteEchoVoHttpResult = insOrdersClient.auditInfo(orderNo);
+                    newOrders.put(orderNo,quoteEchoVoHttpResult.getData());
+                }
+
+                this.batchModify(result,log, batchModifyVo,oldOrders, newOrders);
                 break;
                 break;
             // 设为疑问订单
             // 设为疑问订单
             case 17:
             case 17:
@@ -114,7 +140,7 @@ public class OrderOperationLogAspect {
      * @author lipf
      * @author lipf
      * @date 2026/7/8 15:29
      * @date 2026/7/8 15:29
      */
      */
-    private void batchModify(Object result, OrderOperationLog log, BatchModifyVo vo) {
+    private void batchModify(Object result, OrderOperationLog log, BatchModifyVo vo,Map<String,QuoteEchoVo> oldOrders, Map<String,QuoteEchoVo> newOrders) {
         List<String> orderNos = vo.getOrderNos();
         List<String> orderNos = vo.getOrderNos();
         if(CollUtil.isEmpty(orderNos)){
         if(CollUtil.isEmpty(orderNos)){
             logger.info("批量修改没有传入订单号");
             logger.info("批量修改没有传入订单号");
@@ -126,7 +152,26 @@ public class OrderOperationLogAspect {
             track.setSubModule(log.subModule());
             track.setSubModule(log.subModule());
             track.setOptType(log.optType().getCode());
             track.setOptType(log.optType().getCode());
             track.setOptContent(log.description());
             track.setOptContent(log.description());
-            track.setChangeAfter(JSONUtil.toJsonStr(vo));
+            QuoteEchoVo detailVoOld = oldOrders.get(orderNo);
+            QuoteEchoVo detailVoNew = newOrders.get(orderNo);
+            Map<String, List<String>> diffMap = JsonDiffUtil.compareJson(JSONUtil.toJsonStr(detailVoOld), JSONUtil.toJsonStr(detailVoNew), new HashSet<>());
+
+            if(CollUtil.isNotEmpty(diffMap)){
+                List<String> oldItems = new ArrayList<>();
+                List<String> newItems = new ArrayList<>();
+                Map<String,String> keyMap = OrderComponts.fillKeyNameMap();
+                diffMap.forEach((path, values) ->{
+                            System.out.println("路径: " + path + " -> 值1: " + values.get(0) + " | 值2: " + values.get(1));
+                            oldItems.add(keyMap.getOrDefault(path,path)  + ": " + values.get(0));
+                            newItems.add(keyMap.getOrDefault(path,path) + ": " + values.get(1));
+                        }
+                );
+                logger.info("oldItem=[{}]", JSONUtil.toJsonStr(oldItems));
+                logger.info("newItem=[{}]", JSONUtil.toJsonStr(newItems));
+
+                track.setChangeBefore(String.join("\r\n", oldItems));
+                track.setChangeAfter(String.join("\r\n", newItems));
+            }
             track.setResult(JSONUtil.toJsonStr(result));
             track.setResult(JSONUtil.toJsonStr(result));
             InsOrders insOrders = insOrdersClient.getById(orderNo);
             InsOrders insOrders = insOrdersClient.getById(orderNo);
             if(insOrders != null){
             if(insOrders != null){
@@ -144,34 +189,34 @@ public class OrderOperationLogAspect {
 
 
     }
     }
 
 
-    /**
-     * 保存费用信息
-     * @author lipf
-     * @date 2026/7/8 15:28
-     */
-    private void saveCostInfo(Object result, OrderOperationLog log, PtlAgreementCostRatioVo vo) {
-        InsOrdersTrack track = new InsOrdersTrack();
-        String orderNo = vo.getOrderNo();
-        track.setModule(log.module());
-        track.setSubModule(log.subModule());
-        track.setOptType(log.optType().getCode());
-        track.setOptContent(log.description());
-        track.setResult(JSONUtil.toJsonStr(vo));
-        InsOrders insOrders = insOrdersClient.getById(orderNo);
-        if(insOrders != null){
-            InsOrdersCarInfo carInfo = insOrdersClient.getByOrderId(insOrders.getId());
-            track.setLicenseNo(carInfo.getLicenseNo());
-            track.setCompanyId(insOrders.getCompanyId());
-            // track.setResult(result.getMsg());
-        }else{
-            track.setResult("要进行费用调整的订单不存在");
-        }
-        track.setStatus(1);
-        track.setChangeBefore("");
-        track.setChangeAfter("费用调整完成");
-        track.setOrderNo(orderNo);
-        track.setResult(JSONUtil.toJsonStr(result));
-        insOrdersClient.save(track);
-    }
+//    /**
+//     * 保存费用信息
+//     * @author lipf
+//     * @date 2026/7/8 15:28
+//     */
+//    private void saveCostInfo(Object result, OrderOperationLog log, PtlAgreementCostRatioVo vo) {
+//        InsOrdersTrack track = new InsOrdersTrack();
+//        String orderNo = vo.getOrderNo();
+//        track.setModule(log.module());
+//        track.setSubModule(log.subModule());
+//        track.setOptType(log.optType().getCode());
+//        track.setOptContent(log.description());
+//        track.setResult(JSONUtil.toJsonStr(vo));
+//        InsOrders insOrders = insOrdersClient.getById(orderNo);
+//        if(insOrders != null){
+//            InsOrdersCarInfo carInfo = insOrdersClient.getByOrderId(insOrders.getId());
+//            track.setLicenseNo(carInfo.getLicenseNo());
+//            track.setCompanyId(insOrders.getCompanyId());
+//            // track.setResult(result.getMsg());
+//        }else{
+//            track.setResult("要进行费用调整的订单不存在");
+//        }
+//        track.setStatus(1);
+//        track.setChangeBefore("");
+//        track.setChangeAfter("费用调整完成");
+//        track.setOrderNo(orderNo);
+//        track.setResult(JSONUtil.toJsonStr(result));
+//        insOrdersClient.save(track);
+//    }
 
 
    }
    }

+ 11 - 1
tenant/organization/src/main/java/com/jzg/organization/client/InsOrdersClient.java

@@ -4,7 +4,9 @@ import com.jzg.commons.core.page.HttpResult;
 import com.jzg.commons.entity.orders.po.InsOrders;
 import com.jzg.commons.entity.orders.po.InsOrders;
 import com.jzg.commons.entity.orders.po.InsOrdersCarInfo;
 import com.jzg.commons.entity.orders.po.InsOrdersCarInfo;
 import com.jzg.commons.entity.orders.po.InsOrdersTrack;
 import com.jzg.commons.entity.orders.po.InsOrdersTrack;
+import com.jzg.commons.entity.quote.vo.aggregated.QuoteEchoVo;
 import com.jzg.commons.entity.quote.vo.orders.InsOrdersVo;
 import com.jzg.commons.entity.quote.vo.orders.InsOrdersVo;
+import io.swagger.v3.oas.annotations.Operation;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.bind.annotation.*;
 
 
@@ -46,7 +48,7 @@ public interface InsOrdersClient {
     /**
     /**
      * 保存订单轨迹信息
      * 保存订单轨迹信息
      *
      *
-     * @param track
+     * @param track 轨迹信息
      * @author lipf
      * @author lipf
      * @date 2026/7/18 16:58
      * @date 2026/7/18 16:58
      */
      */
@@ -62,4 +64,12 @@ public interface InsOrdersClient {
      */
      */
     @GetMapping("/supplementOrder/getByOrderId")
     @GetMapping("/supplementOrder/getByOrderId")
     InsOrdersCarInfo getByOrderId(@RequestParam("orderNo") String orderNo);
     InsOrdersCarInfo getByOrderId(@RequestParam("orderNo") String orderNo);
+
+    /**
+     * 订单审核详情
+     * @return HttpResult<QuoteEchoVo>
+     */
+    @GetMapping("/feeAudit/auditInfo")
+    @Operation(summary = "订单审核详情")
+    HttpResult<QuoteEchoVo> auditInfo(@RequestParam("orderNo")  String orderNo);
 }
 }