lishiqiang 6 дней назад
Родитель
Сommit
c792c8a2ac
28 измененных файлов с 947 добавлено и 343 удалено
  1. 96 0
      ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/audituser/AuditUserController.java
  2. 31 0
      ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/audituser/vo/AuditUserPageReqVO.java
  3. 35 0
      ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/audituser/vo/AuditUserRespVO.java
  4. 24 0
      ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/audituser/vo/AuditUserSaveReqVO.java
  5. 10 240
      ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/order/OtcTradeOrderController.java
  6. 24 0
      ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/order/vo/order/TradeOrderCountryBaseVO.java
  7. 3 0
      ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/order/vo/order/TradeOrderCountryReqVO.java
  8. 10 0
      ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/order/vo/order/TradeOrderRespNewVO.java
  9. 9 14
      ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/order/vo/order/TradeOrderRespVO.java
  10. 96 0
      ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/tradeOrderaudit/TradeOrderAuditController.java
  11. 41 0
      ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/tradeOrderaudit/vo/TradeOrderAuditPageReqVO.java
  12. 47 0
      ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/tradeOrderaudit/vo/TradeOrderAuditRespVO.java
  13. 35 0
      ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/tradeOrderaudit/vo/TradeOrderAuditSaveReqVO.java
  14. 43 0
      ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/dal/dataobject/audituser/AuditUserDO.java
  15. 17 0
      ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/dal/dataobject/order/TradeOrderCountryDO.java
  16. 8 0
      ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/dal/dataobject/order/TradeOrderDO.java
  17. 57 0
      ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/dal/dataobject/tradeOrderaudit/TradeOrderAuditDO.java
  18. 29 0
      ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/dal/mysql/audituser/AuditUserMapper.java
  19. 30 0
      ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/dal/mysql/tradeOrderaudit/TradeOrderAuditMapper.java
  20. 55 0
      ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/service/audituser/AuditUserService.java
  21. 70 0
      ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/service/audituser/AuditUserServiceImpl.java
  22. 0 7
      ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/service/otc/OtcTradeOrderService.java
  23. 27 81
      ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/service/otc/impl/OtcTradeOrderServiceImpl.java
  24. 55 0
      ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/service/tradeOrderaudit/TradeOrderAuditService.java
  25. 70 0
      ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/service/tradeOrderaudit/TradeOrderAuditServiceImpl.java
  26. 12 0
      ship-module-trade/ship-module-trade-biz/src/main/resources/mapper/audituser/AuditUserMapper.xml
  27. 1 1
      ship-module-trade/ship-module-trade-biz/src/main/resources/mapper/order/TradeOrderMapper.xml
  28. 12 0
      ship-module-trade/ship-module-trade-biz/src/main/resources/mapper/tradeOrderaudit/TradeOrderAuditMapper.xml

+ 96 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/audituser/AuditUserController.java

@@ -0,0 +1,96 @@
+package com.yc.ship.module.trade.controller.admin.audituser;
+
+import com.yc.ship.framework.apilog.core.annotation.ApiAccessLog;
+import com.yc.ship.framework.common.pojo.CommonResult;
+import com.yc.ship.framework.common.pojo.PageParam;
+import com.yc.ship.framework.common.pojo.PageResult;
+import com.yc.ship.framework.common.util.object.BeanUtils;
+import com.yc.ship.framework.excel.core.util.ExcelUtils;
+import com.yc.ship.module.trade.controller.admin.audituser.vo.AuditUserPageReqVO;
+import com.yc.ship.module.trade.controller.admin.audituser.vo.AuditUserRespVO;
+import com.yc.ship.module.trade.controller.admin.audituser.vo.AuditUserSaveReqVO;
+import com.yc.ship.module.trade.dal.dataobject.audituser.AuditUserDO;
+import com.yc.ship.module.trade.service.audituser.AuditUserService;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import javax.annotation.Resource;
+import javax.servlet.http.HttpServletResponse;
+import javax.validation.Valid;
+import java.io.IOException;
+import java.util.List;
+
+import static com.yc.ship.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
+import static com.yc.ship.framework.common.pojo.CommonResult.success;
+
+/**
+ * @author qsl
+ */
+@Tag(name = "管理后台 - 审核人管理")
+@RestController
+@RequestMapping("/trade/audit-user")
+@Validated
+public class AuditUserController {
+
+    @Resource
+    private AuditUserService auditUserService;
+
+    @PostMapping("/create")
+    @Operation(summary = "创建审核人管理")
+    @PreAuthorize("@ss.hasPermission('trade:audit-user:create')")
+    public CommonResult<Long> createAuditUser(@Valid @RequestBody AuditUserSaveReqVO createReqVO) {
+        return success(auditUserService.createAuditUser(createReqVO));
+    }
+
+    @PutMapping("/update")
+    @Operation(summary = "更新审核人管理")
+    @PreAuthorize("@ss.hasPermission('trade:audit-user:update')")
+    public CommonResult<Boolean> updateAuditUser(@Valid @RequestBody AuditUserSaveReqVO updateReqVO) {
+        auditUserService.updateAuditUser(updateReqVO);
+        return success(true);
+    }
+
+    @DeleteMapping("/delete")
+    @Operation(summary = "删除审核人管理")
+    @Parameter(name = "id", description = "编号", required = true)
+    @PreAuthorize("@ss.hasPermission('trade:audit-user:delete')")
+    public CommonResult<Boolean> deleteAuditUser(@RequestParam("id") Long id) {
+        auditUserService.deleteAuditUser(id);
+        return success(true);
+    }
+
+    @GetMapping("/get")
+    @Operation(summary = "获得审核人管理")
+    @Parameter(name = "id", description = "编号", required = true, example = "1024")
+    @PreAuthorize("@ss.hasPermission('trade:audit-user:query')")
+    public CommonResult<AuditUserRespVO> getAuditUser(@RequestParam("id") Long id) {
+        AuditUserDO auditUser = auditUserService.getAuditUser(id);
+        return success(BeanUtils.toBean(auditUser, AuditUserRespVO.class));
+    }
+
+    @GetMapping("/page")
+    @Operation(summary = "获得审核人管理分页")
+    @PreAuthorize("@ss.hasPermission('trade:audit-user:query')")
+    public CommonResult<PageResult<AuditUserRespVO>> getAuditUserPage(@Valid AuditUserPageReqVO pageReqVO) {
+        PageResult<AuditUserDO> pageResult = auditUserService.getAuditUserPage(pageReqVO);
+        return success(BeanUtils.toBean(pageResult, AuditUserRespVO.class));
+    }
+
+    @GetMapping("/export-excel")
+    @Operation(summary = "导出审核人管理 Excel")
+    @PreAuthorize("@ss.hasPermission('trade:audit-user:export')")
+    @ApiAccessLog(operateType = EXPORT)
+    public void exportAuditUserExcel(@Valid AuditUserPageReqVO pageReqVO,
+                                     HttpServletResponse response) throws IOException {
+        pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
+        List<AuditUserDO> list = auditUserService.getAuditUserPage(pageReqVO).getList();
+        // 导出 Excel
+        ExcelUtils.write(response, "审核人管理.xls", "数据", AuditUserRespVO.class,
+                BeanUtils.toBean(list, AuditUserRespVO.class));
+    }
+
+}

+ 31 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/audituser/vo/AuditUserPageReqVO.java

@@ -0,0 +1,31 @@
+package com.yc.ship.module.trade.controller.admin.audituser.vo;
+
+import lombok.*;
+import java.util.*;
+import io.swagger.v3.oas.annotations.media.Schema;
+import com.yc.ship.framework.common.pojo.PageParam;
+import org.springframework.format.annotation.DateTimeFormat;
+import java.time.LocalDateTime;
+
+import static com.yc.ship.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
+
+@Schema(description = "管理后台 - 审核人管理分页 Request VO")
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+public class AuditUserPageReqVO extends PageParam {
+
+    @Schema(description = "审核类型 1、1级审核 2、2级审核 3、3级审核 4、4级审核", example = "1")
+    private Integer type;
+
+    @Schema(description = "审核人")
+    private Long auditUser;
+
+    @Schema(description = "审核备注信息", example = "随便")
+    private String remark;
+
+    @Schema(description = "创建时间")
+    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
+    private LocalDateTime[] createTime;
+
+}

+ 35 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/audituser/vo/AuditUserRespVO.java

@@ -0,0 +1,35 @@
+package com.yc.ship.module.trade.controller.admin.audituser.vo;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.*;
+import java.util.*;
+import org.springframework.format.annotation.DateTimeFormat;
+import java.time.LocalDateTime;
+import com.alibaba.excel.annotation.*;
+
+@Schema(description = "管理后台 - 审核人管理 Response VO")
+@Data
+@ExcelIgnoreUnannotated
+public class AuditUserRespVO {
+
+    @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "24108")
+    @ExcelProperty("主键")
+    private Long id;
+
+    @Schema(description = "审核类型 1、1级审核 2、2级审核 3、3级审核 4、4级审核", example = "1")
+    @ExcelProperty("审核类型 1、1级审核 2、2级审核 3、3级审核 4、4级审核")
+    private Integer type;
+
+    @Schema(description = "审核人")
+    @ExcelProperty("审核人")
+    private Long auditUser;
+
+    @Schema(description = "审核备注信息", example = "随便")
+    @ExcelProperty("审核备注信息")
+    private String remark;
+
+    @Schema(description = "创建时间")
+    @ExcelProperty("创建时间")
+    private LocalDateTime createTime;
+
+}

+ 24 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/audituser/vo/AuditUserSaveReqVO.java

@@ -0,0 +1,24 @@
+package com.yc.ship.module.trade.controller.admin.audituser.vo;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.*;
+import java.util.*;
+import javax.validation.constraints.*;
+
+@Schema(description = "管理后台 - 审核人管理新增/修改 Request VO")
+@Data
+public class AuditUserSaveReqVO {
+
+    @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "24108")
+    private Long id;
+
+    @Schema(description = "审核类型 1、1级审核 2、2级审核 3、3级审核 4、4级审核", example = "1")
+    private Integer type;
+
+    @Schema(description = "审核人")
+    private Long auditUser;
+
+    @Schema(description = "审核备注信息", example = "随便")
+    private String remark;
+
+}

+ 10 - 240
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/order/OtcTradeOrderController.java

@@ -257,7 +257,7 @@ public class OtcTradeOrderController {
         List<Long> orderIds = CollectionUtils.convertList(list, TradeOrderRespNewVO::getId);
         List<TradeOrderCountryDO> countryList = tradeOrderCountryService.getListByOrderIds(orderIds);
         List<TradeOrderCountryBaseVO> countRespVOList = BeanUtils.toBean(countryList, TradeOrderCountryBaseVO.class);
-        countRespVOList.stream().forEach(item -> {
+        countRespVOList.forEach(item -> {
             if (item.getCountryId() != null) {
                 item.setCountryName(AreaUtils.format2Str(item.getCountryId()));
             }
@@ -266,23 +266,23 @@ public class OtcTradeOrderController {
 
         //订单汇总数据
         List<TradeOrderTotalDO> tradeOrderTotalDOList = tradeOrderTotalService.getByOrderIds(orderIds);
-        List<TradeOrderTotalVO> tradeOrderTotalVOS = BeanUtils.toBean(tradeOrderTotalDOList, TradeOrderTotalVO.class);
-        Map<Long, TradeOrderTotalVO> orderTotalVOMap = CollectionUtils.convertMap(tradeOrderTotalVOS, TradeOrderTotalVO::getOrderId);
+        List<TradeOrderTotalVO> tradeOrderTotalVOList = BeanUtils.toBean(tradeOrderTotalDOList, TradeOrderTotalVO.class);
+        Map<Long, TradeOrderTotalVO> orderTotalVoMap = CollectionUtils.convertMap(tradeOrderTotalVOList, TradeOrderTotalVO::getOrderId);
 
         //航次信息
         List<Long> voyageIds = CollectionUtils.convertList(list, TradeOrderRespNewVO::getVoyageId);
         List<VoyageDO> voyageList = voyageService.getList(voyageIds);
-        List<VoyageRespVO> voyageRespVOS = BeanUtils.toBean(voyageList, VoyageRespVO.class);
-        Map<Long, VoyageRespVO> voyageRespVOMap = CollectionUtils.convertMap(voyageRespVOS, VoyageRespVO::getId);
+        List<VoyageRespVO> voyageRespVOList = BeanUtils.toBean(voyageList, VoyageRespVO.class);
+        Map<Long, VoyageRespVO> voyageRespVoMap = CollectionUtils.convertMap(voyageRespVOList, VoyageRespVO::getId);
 
-        list.stream().forEach(item -> {
+        list.forEach(item -> {
             MapUtils.findAndThen(shipMap, item.getShipId(), ship -> item.setShipName(ship.getName()));
-            MapUtils.findAndThen(countryMap, item.getId(), country -> item.setCountryList(country));
-            MapUtils.findAndThen(orderTotalVOMap, item.getId(), totalVO -> {
+            MapUtils.findAndThen(countryMap, item.getId(), item::setCountryList);
+            MapUtils.findAndThen(orderTotalVoMap, item.getId(), totalVO -> {
                 item.setSummary(totalVO);
                 item.setPersonStat(totalVO.getAdultTotalNum() + "大" + (totalVO.getChildTotalNum() + totalVO.getBabyTotalNum()) + "小");
             });
-            MapUtils.findAndThen(voyageRespVOMap, item.getVoyageId(), voyage -> item.setVoyage(voyage));
+            MapUtils.findAndThen(voyageRespVoMap, item.getVoyageId(), item::setVoyage);
         });
         return success(page);
     }
@@ -395,7 +395,6 @@ public class OtcTradeOrderController {
 
     /**
      * 退款记录如果长时间处于退款中,可以向支付平台反查
-     *
      */
     @GetMapping("/refundQuery")
     @Operation(summary = "退款中-退款查询(向支付平台)")
@@ -413,7 +412,6 @@ public class OtcTradeOrderController {
 
     /**
      * 退款单如果处于长时间处于等待退款(因mq消息失败了)、或者供应商退款失败。可手动发起退款给游客
-     *
      */
     @PostMapping("/manualRefund")
     @Operation(summary = "人工退款")
@@ -483,13 +481,6 @@ public class OtcTradeOrderController {
         return success(otcTradeOrderService.getProductSpuDTO(id, date, planId, distributorId));
     }
 
-    @GetMapping("/queryProductSpu")
-    @Operation(summary = "sell-产品详情 不查库存")
-    @OperateLog(type = API)
-    public CommonResult<ProductSpuRespDTO> queryProductSpu(@Valid @RequestParam("id") Long id) {
-        return success(otcTradeOrderService.getProductSpuDtoWithoutStock(id));
-    }
-
 
     @GetMapping("/getOrderContract")
     @Operation(summary = "sell-查询保合同")
@@ -544,7 +535,7 @@ public class OtcTradeOrderController {
     }
 
     @GetMapping("/getPayAmount")
-    @Operation(summary = "待支付时获取支付金额", description = "")
+    @Operation(summary = "待支付时获取支付金额")
     @OperateLog(type = API)
     @PlatTenantEnv
     public CommonResult<OrderPayAmountRespVO> getPayAmount(@Valid @RequestParam("id") Long id) {
@@ -552,225 +543,4 @@ public class OtcTradeOrderController {
     }
 
 
-    @GetMapping("/export-excel")
-    @Operation(summary = "导出订单列表 Excel")
-    @OperateLog(type = EXPORT, enable = false)
-    @PlatTenantEnv
-    public void exportOrderExcel(@Valid TradeOrderPageReqVO pageReqVO,
-                                 HttpServletResponse response) throws IOException {
-        pageReqVO.setPageSize(10000);
-        List<TradeOrderRespVO> list = otcTradeOrderService.getTradeOrderPage(pageReqVO, 0).getList();
-        if (pageReqVO.getHeaders() != null) {
-            Map desmap = new HashMap();
-            Map dicmap = new HashMap();
-            for (Field method : TradeOrderRespVO.class.getDeclaredFields()) {
-                String fileName = method.getName();
-                ExcelProperty excelProperty = method.getAnnotation(ExcelProperty.class);
-                String schemaValue = excelProperty != null ? excelProperty.value()[0] : "";
-                DictFormat dictFormat = method.getAnnotation(DictFormat.class);
-                String dicValue = dictFormat != null ? dictFormat.value() : "";
-                if (StringUtil.isNotBlank(dicValue)) {
-                    dicmap.put(fileName, dicValue);
-                }
-                desmap.put(fileName, schemaValue);
-            }
-
-            List<List<Object>> sheetDataList = new ArrayList<>();
-            List<Object> headvalue = new ArrayList<>();
-            for (String head : pageReqVO.getHeaders()) {
-                if (StringUtil.equals("sort", head)) {
-                    headvalue.add("序号");
-                } else if (StringUtil.equals("saleAmount", head)) {
-                    headvalue.add("优惠金额");
-                } else if (StringUtil.equals("specNumber", head)) {
-                    headvalue.add("通用");
-                    headvalue.add("成人票");
-                    headvalue.add("儿童票");
-                    headvalue.add("免票");
-                    headvalue.add("车位");
-                    headvalue.add("优待票");
-                    headvalue.add("其他");
-                    headvalue.add("携童票");
-                } else {
-                    String name = MapUtil.getStr(desmap, head, head);
-                    headvalue.add(name);
-                }
-            }
-            sheetDataList.add(headvalue);
-            int i = 1;
-            for (TradeOrderRespVO tradeOrderRespVO : list) {
-                List<Object> dvalue = new ArrayList<>();
-                Map map = ExceptionUtils.bean2Map(tradeOrderRespVO);
-                for (String head : pageReqVO.getHeaders()) {
-                    if (StringUtil.equals("sort", head)) {
-                        dvalue.add(i);
-                    } else if (StringUtil.equals("specNumber", head)) {
-                        dvalue.add(tradeOrderRespVO.getCommonNum());
-                        dvalue.add(tradeOrderRespVO.getFullNum());
-                        dvalue.add(tradeOrderRespVO.getHalfNum());
-                        dvalue.add(tradeOrderRespVO.getFreeNum());
-                        dvalue.add(tradeOrderRespVO.getCarSeatNum());
-                        dvalue.add(tradeOrderRespVO.getCarYdNum());
-                        dvalue.add(tradeOrderRespVO.getOtherNum());
-                        dvalue.add(tradeOrderRespVO.getCarryingChildrenNum());
-                    } else if (StringUtil.equals("confirmType", head)) {
-                        if (tradeOrderRespVO.getConfirmType() == null) {
-                            dvalue.add("不需确认");
-                        } else {
-                            if (tradeOrderRespVO.getConfirmType() == 0) {
-                                dvalue.add("不需确认");
-                            } else if (tradeOrderRespVO.getConfirmType() == 1) {
-                                dvalue.add("未确认");
-                            } else if (tradeOrderRespVO.getConfirmType() == 2) {
-                                dvalue.add("已确认");
-                            } else if (tradeOrderRespVO.getConfirmType() == 3) {
-                                dvalue.add("取消");
-                            }
-                        }
-                    } else if (StringUtil.equals("travelDate", head)) {
-                        dvalue.add(tradeOrderRespVO.getTravelDate());
-                    } else {
-                        Object value = "";
-                        if (MapUtil.getStr(map, head) != null) {
-                            if (dicmap.get(head) != null) {
-                                String label = DictFrameworkUtils.getDictDataLabel(MapUtil.getStr(dicmap, head, ""), MapUtil.getStr(map, head, "-"));
-                                value = label;
-                            } else {
-                                value = map.get(head);
-                            }
-                        }
-                        dvalue.add(value);
-                    }
-                }
-                sheetDataList.add(dvalue);
-                i++;
-            }
-            // 导出数据
-            ExcelUtils.export(response, "订单列表", sheetDataList);
-        } else {
-            ExcelUtils.write(response, "订单列表.xls", "数据", TradeOrderRespVO.class, list);
-        }
-    }
-
-    @GetMapping("/export-otcexcel")
-    @Operation(summary = "导出OTC订单列表 Excel")
-    @OperateLog(type = EXPORT, enable = false)
-    @PlatTenantEnv
-    public void exportOtcOrderExcel(@Valid TradeOrderPageReqVO pageReqVO,
-                                    HttpServletResponse response) throws IOException {
-        pageReqVO.setPageSize(10000);
-        List<TradeOrderRespVO> list = otcTradeOrderService.getOtcTradeOrderPage(pageReqVO).getList();
-        if (pageReqVO.getHeaders() != null) {
-            Map desmap = new HashMap();
-            Map dicmap = new HashMap();
-            for (Field method : TradeOrderRespVO.class.getDeclaredFields()) {
-                String fileName = method.getName();
-                ExcelProperty excelProperty = method.getAnnotation(ExcelProperty.class);
-                String schemaValue = excelProperty != null ? excelProperty.value()[0] : "";
-                DictFormat dictFormat = method.getAnnotation(DictFormat.class);
-                String dicValue = dictFormat != null ? dictFormat.value() : "";
-                if (StringUtil.isNotBlank(dicValue)) {
-                    dicmap.put(fileName, dicValue);
-                }
-                desmap.put(fileName, schemaValue);
-            }
-
-            List<List<Object>> sheetDataList = new ArrayList<>();
-            List<Object> headvalue = new ArrayList<>();
-            for (String head : pageReqVO.getHeaders()) {
-                if (StringUtil.equals("sort", head)) {
-                    headvalue.add("序号");
-                } else if (StringUtil.equals("saleAmount", head)) {
-                    headvalue.add("优惠金额");
-                } else if (StringUtil.equals("specNumber", head)) {
-                    headvalue.add("通用");
-                    headvalue.add("成人票");
-                    headvalue.add("儿童票");
-                    headvalue.add("免票");
-                    headvalue.add("车位");
-                    headvalue.add("优待票");
-                    headvalue.add("其他");
-                    headvalue.add("携童票");
-                } else {
-                    String name = MapUtil.getStr(desmap, head, head);
-                    headvalue.add(name);
-                }
-            }
-            sheetDataList.add(headvalue);
-            int i = 1;
-            for (TradeOrderRespVO tradeOrderRespVO : list) {
-                List<Object> dvalue = new ArrayList<>();
-                Map map = ExceptionUtils.bean2Map(tradeOrderRespVO);
-                for (String head : pageReqVO.getHeaders()) {
-                    if (StringUtil.equals("sort", head)) {
-                        dvalue.add(i);
-                    } else if (StringUtil.equals("confirmType", head)) {
-                        if (tradeOrderRespVO.getConfirmType() == null) {
-                            dvalue.add("不需确认");
-                        } else {
-                            if (tradeOrderRespVO.getConfirmType() == 0) {
-                                dvalue.add("不需确认");
-                            } else if (tradeOrderRespVO.getConfirmType() == 1) {
-                                dvalue.add("未确认");
-                            } else if (tradeOrderRespVO.getConfirmType() == 2) {
-                                dvalue.add("已确认");
-                            } else if (tradeOrderRespVO.getConfirmType() == 3) {
-                                dvalue.add("取消");
-                            }
-                        }
-                    } else if (StringUtil.equals("specNumber", head)) {
-                        dvalue.add(tradeOrderRespVO.getCommonNum());
-                        dvalue.add(tradeOrderRespVO.getFullNum());
-                        dvalue.add(tradeOrderRespVO.getHalfNum());
-                        dvalue.add(tradeOrderRespVO.getFreeNum());
-                        dvalue.add(tradeOrderRespVO.getCarSeatNum());
-                        dvalue.add(tradeOrderRespVO.getCarYdNum());
-                        dvalue.add(tradeOrderRespVO.getOtherNum());
-                        dvalue.add(tradeOrderRespVO.getCarryingChildrenNum());
-                    } else if (StringUtil.equals("travelDate", head)) {
-                        dvalue.add(tradeOrderRespVO.getTravelDate());
-                    } else if ("travelDate".equals(head)) {
-                        String rawDate = MapUtil.getStr(map, head);
-                        if (rawDate != null) {
-                            String formattedDate = DateUtil.format(DateUtil.parse(rawDate), DatePattern.NORM_DATE_PATTERN);
-                            dvalue.add(formattedDate);
-                        } else {
-                            dvalue.add("-");
-                        }
-                    } else {
-                        Object value = "";
-                        if (MapUtil.getStr(map, head) != null) {
-                            if (dicmap.get(head) != null) {
-                                String label = DictFrameworkUtils.getDictDataLabel(MapUtil.getStr(dicmap, head, ""), MapUtil.getStr(map, head, "-"));
-                                value = label;
-                            } else {
-                                value = map.get(head);
-                            }
-                        }
-                        dvalue.add(value);
-                    }
-                }
-                sheetDataList.add(dvalue);
-                i++;
-            }
-            // 导出数据
-            ExcelUtils.export(response, "订单列表", sheetDataList);
-        } else {
-            ExcelUtils.write(response, "订单列表.xls", "数据", TradeOrderRespVO.class, list);
-        }
-    }
-
-    @GetMapping("/exportTransOrderList")
-    @Operation(summary = "导出转交订单列表 Excel")
-    @OperateLog(type = EXPORT, enable = false)
-    @PlatTenantEnv
-    public void exportTransOrderList(@Valid TradeOrderPageReqVO pageReqVO,
-                                     HttpServletResponse response) throws IOException {
-        pageReqVO.setPageSize(6000);
-        List<TradeTranOrderRespVO> list = otcTradeOrderService.getTransOrderPage(pageReqVO).getList();
-        // 导出 Excel
-        ExcelUtils.write(response, "转交订单列表.xls", "数据", TradeTranOrderRespVO.class, list);
-    }
-
-
 }

+ 24 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/order/vo/order/TradeOrderCountryBaseVO.java

@@ -6,6 +6,9 @@ import lombok.Data;
 import java.math.BigDecimal;
 import java.util.List;
 
+/**
+ * @author qsl
+ */
 @Schema(description = "订单国家信息")
 @Data
 public class TradeOrderCountryBaseVO {
@@ -62,6 +65,27 @@ public class TradeOrderCountryBaseVO {
     @Schema(description = "陪同费", example = "")
     private BigDecimal withPrice;
 
+    /**
+     * 陪同数
+     */
+    @Schema(description = "领队数", example = "")
+    private Integer leaderNum;
+    /**
+     * 陪同费
+     */
+    @Schema(description = "领队费", example = "")
+    private BigDecimal leaderPrice;
+
+    @Schema(description = "预订金额", example = "")
+    private BigDecimal bookAmount;
+
+    @Schema(description = "确订金额", example = "")
+    private BigDecimal confirmAmount;
+
+    @Schema(description = "订单金额", example = "")
+    private BigDecimal totalAmount;
+
+
     /**
      * 房型信息
      */

+ 3 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/order/vo/order/TradeOrderCountryReqVO.java

@@ -5,6 +5,9 @@ import lombok.Data;
 
 import java.util.List;
 
+/**
+ * @author qsl
+ */
 @Data
 public class TradeOrderCountryReqVO extends TradeOrderCountryBaseVO {
 

+ 10 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/order/vo/order/TradeOrderRespNewVO.java

@@ -158,5 +158,15 @@ public class TradeOrderRespNewVO {
     @Schema(description = "接站信息")
     private OrderJzDO orderJz;
 
+    /**
+     * 审核流程类型 1:1级别流程 2:2级流程 3:3级流程 4:4级流程
+     */
+    @Schema(description = "审核流程类型")
+    private Integer auditType;
+    /**
+     * 审核状态 0、无需审核 1、提交审核中  2:审核中 3:审核通过 4:审核不通过
+     */
+    @Schema(description = "审核状态")
+    private Integer auditStatus;
 
 }

+ 9 - 14
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/order/vo/order/TradeOrderRespVO.java

@@ -267,17 +267,6 @@ public class TradeOrderRespVO {
     @ExcelProperty("门店名称")
     private String storeName;
 
-//    @Schema(description = "转交分销商的分销商ID")
-//    private String transDistributorId;
-
-//    @Schema(description = "转交分销商的分销商名字")
-//    @ExcelProperty("转交分销商的分销商名字")
-//    private String transDistributorName;
-//
-//    @Schema(description = "转交金额")
-//    @ExcelProperty("转交金额")
-//    private String transAmount;
-
     @Schema(description = "绑定ID")
     private Long bindId;
 
@@ -310,9 +299,6 @@ public class TradeOrderRespVO {
     @Schema(description = "是否申请使用营销政策(0否 1是)")
     private Integer isMarketingUse;
 
-    @Schema(description = "营销政策审核类型")
-    private Integer auditType;
-
     @Schema(description = "营销政策类型")
     private Integer policyType;
 
@@ -488,5 +474,14 @@ public class TradeOrderRespVO {
     @Schema(description = "币种")
     private String currency;
 
+    /**
+     * 审核流程类型 1:1级别流程 2:2级流程 3:3级流程 4:4级流程
+     */
+    private Integer auditType;
+    /**
+     * 审核状态 0、无需审核 1、提交审核中  2:审核中 3:审核通过 4:审核不通过
+     */
+    private Integer auditStatus;
+
 
 }

+ 96 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/tradeOrderaudit/TradeOrderAuditController.java

@@ -0,0 +1,96 @@
+package com.yc.ship.module.trade.controller.admin.tradeOrderaudit;
+
+import com.yc.ship.framework.apilog.core.annotation.ApiAccessLog;
+import com.yc.ship.framework.common.pojo.CommonResult;
+import com.yc.ship.framework.common.pojo.PageParam;
+import com.yc.ship.framework.common.pojo.PageResult;
+import com.yc.ship.framework.common.util.object.BeanUtils;
+import com.yc.ship.framework.excel.core.util.ExcelUtils;
+import com.yc.ship.module.trade.controller.admin.tradeOrderaudit.vo.TradeOrderAuditPageReqVO;
+import com.yc.ship.module.trade.controller.admin.tradeOrderaudit.vo.TradeOrderAuditRespVO;
+import com.yc.ship.module.trade.controller.admin.tradeOrderaudit.vo.TradeOrderAuditSaveReqVO;
+import com.yc.ship.module.trade.dal.dataobject.tradeOrderaudit.TradeOrderAuditDO;
+import com.yc.ship.module.trade.service.tradeOrderaudit.TradeOrderAuditService;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import javax.annotation.Resource;
+import javax.servlet.http.HttpServletResponse;
+import javax.validation.Valid;
+import java.io.IOException;
+import java.util.List;
+
+import static com.yc.ship.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
+import static com.yc.ship.framework.common.pojo.CommonResult.success;
+
+/**
+ * @author qsl
+ */
+@Tag(name = "管理后台 - 订单审核记录")
+@RestController
+@RequestMapping("/trade/order-audit")
+@Validated
+public class TradeOrderAuditController {
+
+    @Resource
+    private TradeOrderAuditService orderAuditService;
+
+    @PostMapping("/create")
+    @Operation(summary = "创建订单审核记录")
+    @PreAuthorize("@ss.hasPermission('trade:order-audit:create')")
+    public CommonResult<Long> createOrderAudit(@Valid @RequestBody TradeOrderAuditSaveReqVO createReqVO) {
+        return success(orderAuditService.createOrderAudit(createReqVO));
+    }
+
+    @PutMapping("/update")
+    @Operation(summary = "更新订单审核记录")
+    @PreAuthorize("@ss.hasPermission('trade:order-audit:update')")
+    public CommonResult<Boolean> updateOrderAudit(@Valid @RequestBody TradeOrderAuditSaveReqVO updateReqVO) {
+        orderAuditService.updateOrderAudit(updateReqVO);
+        return success(true);
+    }
+
+    @DeleteMapping("/delete")
+    @Operation(summary = "删除订单审核记录")
+    @Parameter(name = "id", description = "编号", required = true)
+    @PreAuthorize("@ss.hasPermission('trade:order-audit:delete')")
+    public CommonResult<Boolean> deleteOrderAudit(@RequestParam("id") Long id) {
+        orderAuditService.deleteOrderAudit(id);
+        return success(true);
+    }
+
+    @GetMapping("/get")
+    @Operation(summary = "获得订单审核记录")
+    @Parameter(name = "id", description = "编号", required = true, example = "1024")
+    @PreAuthorize("@ss.hasPermission('trade:order-audit:query')")
+    public CommonResult<TradeOrderAuditRespVO> getOrderAudit(@RequestParam("id") Long id) {
+        TradeOrderAuditDO orderAudit = orderAuditService.getOrderAudit(id);
+        return success(BeanUtils.toBean(orderAudit, TradeOrderAuditRespVO.class));
+    }
+
+    @GetMapping("/page")
+    @Operation(summary = "获得订单审核记录分页")
+    @PreAuthorize("@ss.hasPermission('trade:order-audit:query')")
+    public CommonResult<PageResult<TradeOrderAuditRespVO>> getOrderAuditPage(@Valid TradeOrderAuditPageReqVO pageReqVO) {
+        PageResult<TradeOrderAuditDO> pageResult = orderAuditService.getOrderAuditPage(pageReqVO);
+        return success(BeanUtils.toBean(pageResult, TradeOrderAuditRespVO.class));
+    }
+
+    @GetMapping("/export-excel")
+    @Operation(summary = "导出订单审核记录 Excel")
+    @PreAuthorize("@ss.hasPermission('trade:order-audit:export')")
+    @ApiAccessLog(operateType = EXPORT)
+    public void exportOrderAuditExcel(@Valid TradeOrderAuditPageReqVO pageReqVO,
+                                      HttpServletResponse response) throws IOException {
+        pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
+        List<TradeOrderAuditDO> list = orderAuditService.getOrderAuditPage(pageReqVO).getList();
+        // 导出 Excel
+        ExcelUtils.write(response, "订单审核记录.xls", "数据", TradeOrderAuditRespVO.class,
+                BeanUtils.toBean(list, TradeOrderAuditRespVO.class));
+    }
+
+}

+ 41 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/tradeOrderaudit/vo/TradeOrderAuditPageReqVO.java

@@ -0,0 +1,41 @@
+package com.yc.ship.module.trade.controller.admin.tradeOrderaudit.vo;
+
+import lombok.*;
+import java.util.*;
+import io.swagger.v3.oas.annotations.media.Schema;
+import com.yc.ship.framework.common.pojo.PageParam;
+import org.springframework.format.annotation.DateTimeFormat;
+import java.time.LocalDateTime;
+
+import static com.yc.ship.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
+
+@Schema(description = "管理后台 - 订单审核记录分页 Request VO")
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+public class TradeOrderAuditPageReqVO extends PageParam {
+
+    @Schema(description = "订单号")
+    private Long orderNo;
+
+    @Schema(description = "审核类型 1、1级审核 2、2级审核 3、3级审核 4、4级审核", example = "2")
+    private Integer type;
+
+    @Schema(description = "审核人")
+    private Long auditUser;
+
+    @Schema(description = "审核时间")
+    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
+    private LocalDateTime[] auditTime;
+
+    @Schema(description = "审核状态 1、通过 2、不通过", example = "2")
+    private LocalDateTime auditStatus;
+
+    @Schema(description = "审核备注信息", example = "你猜")
+    private String remark;
+
+    @Schema(description = "创建时间")
+    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
+    private LocalDateTime[] createTime;
+
+}

+ 47 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/tradeOrderaudit/vo/TradeOrderAuditRespVO.java

@@ -0,0 +1,47 @@
+package com.yc.ship.module.trade.controller.admin.tradeOrderaudit.vo;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.*;
+import java.util.*;
+import org.springframework.format.annotation.DateTimeFormat;
+import java.time.LocalDateTime;
+import com.alibaba.excel.annotation.*;
+
+@Schema(description = "管理后台 - 订单审核记录 Response VO")
+@Data
+@ExcelIgnoreUnannotated
+public class TradeOrderAuditRespVO {
+
+    @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "22620")
+    @ExcelProperty("主键")
+    private Long id;
+
+    @Schema(description = "订单号")
+    @ExcelProperty("订单号")
+    private Long orderNo;
+
+    @Schema(description = "审核类型 1、1级审核 2、2级审核 3、3级审核 4、4级审核", example = "2")
+    @ExcelProperty("审核类型 1、1级审核 2、2级审核 3、3级审核 4、4级审核")
+    private Integer type;
+
+    @Schema(description = "审核人")
+    @ExcelProperty("审核人")
+    private Long auditUser;
+
+    @Schema(description = "审核时间")
+    @ExcelProperty("审核时间")
+    private LocalDateTime auditTime;
+
+    @Schema(description = "审核状态 1、通过 2、不通过", example = "2")
+    @ExcelProperty("审核状态 1、通过 2、不通过")
+    private LocalDateTime auditStatus;
+
+    @Schema(description = "审核备注信息", example = "你猜")
+    @ExcelProperty("审核备注信息")
+    private String remark;
+
+    @Schema(description = "创建时间")
+    @ExcelProperty("创建时间")
+    private LocalDateTime createTime;
+
+}

+ 35 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/tradeOrderaudit/vo/TradeOrderAuditSaveReqVO.java

@@ -0,0 +1,35 @@
+package com.yc.ship.module.trade.controller.admin.tradeOrderaudit.vo;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.*;
+import java.util.*;
+import javax.validation.constraints.*;
+import org.springframework.format.annotation.DateTimeFormat;
+import java.time.LocalDateTime;
+
+@Schema(description = "管理后台 - 订单审核记录新增/修改 Request VO")
+@Data
+public class TradeOrderAuditSaveReqVO {
+
+    @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "22620")
+    private Long id;
+
+    @Schema(description = "订单号")
+    private Long orderNo;
+
+    @Schema(description = "审核类型 1、1级审核 2、2级审核 3、3级审核 4、4级审核", example = "2")
+    private Integer type;
+
+    @Schema(description = "审核人")
+    private Long auditUser;
+
+    @Schema(description = "审核时间")
+    private LocalDateTime auditTime;
+
+    @Schema(description = "审核状态 1、通过 2、不通过", example = "2")
+    private LocalDateTime auditStatus;
+
+    @Schema(description = "审核备注信息", example = "你猜")
+    private String remark;
+
+}

+ 43 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/dal/dataobject/audituser/AuditUserDO.java

@@ -0,0 +1,43 @@
+package com.yc.ship.module.trade.dal.dataobject.audituser;
+
+import lombok.*;
+import java.util.*;
+import java.time.LocalDateTime;
+import java.time.LocalDateTime;
+import com.baomidou.mybatisplus.annotation.*;
+import com.yc.ship.framework.mybatis.core.dataobject.BaseDO;
+
+/**
+ * 审核人管理 DO
+ *
+ * @author qsl
+ */
+@TableName("trade_audit_user")
+@KeySequence("trade_audit_user_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class AuditUserDO extends BaseDO {
+
+    /**
+     * 主键
+     */
+    @TableId
+    private Long id;
+    /**
+     * 审核类型 1、1级审核 2、2级审核 3、3级审核 4、4级审核
+     */
+    private Integer type;
+    /**
+     * 审核人
+     */
+    private Long auditUser;
+    /**
+     * 审核备注信息
+     */
+    private String remark;
+
+}

+ 17 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/dal/dataobject/order/TradeOrderCountryDO.java

@@ -1,6 +1,7 @@
 package com.yc.ship.module.trade.dal.dataobject.order;
 
 import com.yc.ship.framework.tenant.core.db.TenantBaseDO;
+import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.*;
 
 import java.math.BigDecimal;
@@ -61,4 +62,20 @@ public class TradeOrderCountryDO extends TenantBaseDO {
      */
     private BigDecimal withPrice;
 
+
+    /**
+     * 陪同数
+     */
+    private Integer leaderNum;
+    /**
+     * 陪同费
+     */
+    private BigDecimal leaderPrice;
+
+    private BigDecimal bookAmount;
+
+    private BigDecimal confirmAmount;
+
+    private BigDecimal totalAmount;
+
 }

+ 8 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/dal/dataobject/order/TradeOrderDO.java

@@ -257,6 +257,14 @@ public class TradeOrderDO extends TenantBaseDO {
      * 0 否 1是
      */
     private Integer finishStatus;
+    /**
+     * 审核流程类型 1:1级别流程 2:2级流程 3:3级流程 4:4级流程
+     */
+    private Integer auditType;
+    /**
+     * 审核状态 0、无需审核 1、提交审核中  2:审核中 3:审核通过 4:审核不通过
+     */
+    private Integer auditStatus;
 
     /**
      * 航次ID

+ 57 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/dal/dataobject/tradeOrderaudit/TradeOrderAuditDO.java

@@ -0,0 +1,57 @@
+package com.yc.ship.module.trade.dal.dataobject.tradeOrderaudit;
+
+import lombok.*;
+import java.util.*;
+import java.time.LocalDateTime;
+import java.time.LocalDateTime;
+import java.time.LocalDateTime;
+import java.time.LocalDateTime;
+import com.baomidou.mybatisplus.annotation.*;
+import com.yc.ship.framework.mybatis.core.dataobject.BaseDO;
+
+/**
+ * 订单审核记录 DO
+ *
+ * @author qsl
+ */
+@TableName("trade_order_audit")
+@KeySequence("trade_order_audit_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class TradeOrderAuditDO extends BaseDO {
+
+    /**
+     * 主键
+     */
+    @TableId
+    private Long id;
+    /**
+     * 订单号
+     */
+    private Long orderNo;
+    /**
+     * 审核类型 1、1级审核 2、2级审核 3、3级审核 4、4级审核
+     */
+    private Integer type;
+    /**
+     * 审核人
+     */
+    private Long auditUser;
+    /**
+     * 审核时间
+     */
+    private LocalDateTime auditTime;
+    /**
+     * 审核状态 1、通过 2、不通过
+     */
+    private LocalDateTime auditStatus;
+    /**
+     * 审核备注信息
+     */
+    private String remark;
+
+}

+ 29 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/dal/mysql/audituser/AuditUserMapper.java

@@ -0,0 +1,29 @@
+package com.yc.ship.module.trade.dal.mysql.audituser;
+
+import java.util.*;
+
+import com.yc.ship.framework.common.pojo.PageResult;
+import com.yc.ship.framework.mybatis.core.query.LambdaQueryWrapperX;
+import com.yc.ship.framework.mybatis.core.mapper.BaseMapperX;
+import com.yc.ship.module.trade.dal.dataobject.audituser.AuditUserDO;
+import org.apache.ibatis.annotations.Mapper;
+import com.yc.ship.module.trade.controller.admin.audituser.vo.*;
+
+/**
+ * 审核人管理 Mapper
+ *
+ * @author qsl
+ */
+@Mapper
+public interface AuditUserMapper extends BaseMapperX<AuditUserDO> {
+
+    default PageResult<AuditUserDO> selectPage(AuditUserPageReqVO reqVO) {
+        return selectPage(reqVO, new LambdaQueryWrapperX<AuditUserDO>()
+                .eqIfPresent(AuditUserDO::getType, reqVO.getType())
+                .eqIfPresent(AuditUserDO::getAuditUser, reqVO.getAuditUser())
+                .eqIfPresent(AuditUserDO::getRemark, reqVO.getRemark())
+                .betweenIfPresent(AuditUserDO::getCreateTime, reqVO.getCreateTime())
+                .orderByDesc(AuditUserDO::getId));
+    }
+
+}

+ 30 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/dal/mysql/tradeOrderaudit/TradeOrderAuditMapper.java

@@ -0,0 +1,30 @@
+package com.yc.ship.module.trade.dal.mysql.tradeOrderaudit;
+
+import com.yc.ship.framework.common.pojo.PageResult;
+import com.yc.ship.framework.mybatis.core.mapper.BaseMapperX;
+import com.yc.ship.framework.mybatis.core.query.LambdaQueryWrapperX;
+import com.yc.ship.module.trade.controller.admin.tradeOrderaudit.vo.TradeOrderAuditPageReqVO;
+import com.yc.ship.module.trade.dal.dataobject.tradeOrderaudit.TradeOrderAuditDO;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 订单审核记录 Mapper
+ *
+ * @author qsl
+ */
+@Mapper
+public interface TradeOrderAuditMapper extends BaseMapperX<TradeOrderAuditDO> {
+
+    default PageResult<TradeOrderAuditDO> selectPage(TradeOrderAuditPageReqVO reqVO) {
+        return selectPage(reqVO, new LambdaQueryWrapperX<TradeOrderAuditDO>()
+                .eqIfPresent(TradeOrderAuditDO::getOrderNo, reqVO.getOrderNo())
+                .eqIfPresent(TradeOrderAuditDO::getType, reqVO.getType())
+                .eqIfPresent(TradeOrderAuditDO::getAuditUser, reqVO.getAuditUser())
+                .betweenIfPresent(TradeOrderAuditDO::getAuditTime, reqVO.getAuditTime())
+                .eqIfPresent(TradeOrderAuditDO::getAuditStatus, reqVO.getAuditStatus())
+                .eqIfPresent(TradeOrderAuditDO::getRemark, reqVO.getRemark())
+                .betweenIfPresent(TradeOrderAuditDO::getCreateTime, reqVO.getCreateTime())
+                .orderByDesc(TradeOrderAuditDO::getId));
+    }
+
+}

+ 55 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/service/audituser/AuditUserService.java

@@ -0,0 +1,55 @@
+package com.yc.ship.module.trade.service.audituser;
+
+import com.yc.ship.framework.common.pojo.PageResult;
+import com.yc.ship.module.trade.controller.admin.audituser.vo.AuditUserPageReqVO;
+import com.yc.ship.module.trade.controller.admin.audituser.vo.AuditUserSaveReqVO;
+import com.yc.ship.module.trade.dal.dataobject.audituser.AuditUserDO;
+
+import javax.validation.Valid;
+
+/**
+ * 审核人管理 Service 接口
+ *
+ * @author qsl
+ */
+public interface AuditUserService {
+
+    /**
+     * 创建审核人管理
+     *
+     * @param createReqVO 创建信息
+     * @return 编号
+     */
+    Long createAuditUser(@Valid AuditUserSaveReqVO createReqVO);
+
+    /**
+     * 更新审核人管理
+     *
+     * @param updateReqVO 更新信息
+     */
+    void updateAuditUser(@Valid AuditUserSaveReqVO updateReqVO);
+
+    /**
+     * 删除审核人管理
+     *
+     * @param id 编号
+     */
+    void deleteAuditUser(Long id);
+
+    /**
+     * 获得审核人管理
+     *
+     * @param id 编号
+     * @return 审核人管理
+     */
+    AuditUserDO getAuditUser(Long id);
+
+    /**
+     * 获得审核人管理分页
+     *
+     * @param pageReqVO 分页查询
+     * @return 审核人管理分页
+     */
+    PageResult<AuditUserDO> getAuditUserPage(AuditUserPageReqVO pageReqVO);
+
+}

+ 70 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/service/audituser/AuditUserServiceImpl.java

@@ -0,0 +1,70 @@
+package com.yc.ship.module.trade.service.audituser;
+
+import com.yc.ship.framework.common.pojo.PageResult;
+import com.yc.ship.framework.common.util.object.BeanUtils;
+import com.yc.ship.module.trade.controller.admin.audituser.vo.AuditUserPageReqVO;
+import com.yc.ship.module.trade.controller.admin.audituser.vo.AuditUserSaveReqVO;
+import com.yc.ship.module.trade.dal.dataobject.audituser.AuditUserDO;
+import com.yc.ship.module.trade.dal.mysql.audituser.AuditUserMapper;
+import org.springframework.stereotype.Service;
+import org.springframework.validation.annotation.Validated;
+
+import javax.annotation.Resource;
+
+import static com.yc.ship.framework.common.exception.util.ServiceExceptionUtil.exception;
+
+/**
+ * 审核人管理 Service 实现类
+ *
+ * @author qsl
+ */
+@Service
+@Validated
+public class AuditUserServiceImpl implements AuditUserService {
+
+    @Resource
+    private AuditUserMapper auditUserMapper;
+
+    @Override
+    public Long createAuditUser(AuditUserSaveReqVO createReqVO) {
+        // 插入
+        AuditUserDO auditUser = BeanUtils.toBean(createReqVO, AuditUserDO.class);
+        auditUserMapper.insert(auditUser);
+        // 返回
+        return auditUser.getId();
+    }
+
+    @Override
+    public void updateAuditUser(AuditUserSaveReqVO updateReqVO) {
+        // 校验存在
+        validateAuditUserExists(updateReqVO.getId());
+        // 更新
+        AuditUserDO updateObj = BeanUtils.toBean(updateReqVO, AuditUserDO.class);
+        auditUserMapper.updateById(updateObj);
+    }
+
+    @Override
+    public void deleteAuditUser(Long id) {
+        // 校验存在
+        validateAuditUserExists(id);
+        // 删除
+        auditUserMapper.deleteById(id);
+    }
+
+    private void validateAuditUserExists(Long id) {
+        if (auditUserMapper.selectById(id) == null) {
+            throw exception(500, "不存在");
+        }
+    }
+
+    @Override
+    public AuditUserDO getAuditUser(Long id) {
+        return auditUserMapper.selectById(id);
+    }
+
+    @Override
+    public PageResult<AuditUserDO> getAuditUserPage(AuditUserPageReqVO pageReqVO) {
+        return auditUserMapper.selectPage(pageReqVO);
+    }
+
+}

+ 0 - 7
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/service/otc/OtcTradeOrderService.java

@@ -58,17 +58,10 @@ public interface OtcTradeOrderService {
 
     CommonResult<?> orderAudit(Long orderId, Integer auditStatus);
 
-    /**
-     * 获取订单列表
-     */
-    PageResult<TradeOrderRespVO> getTradeOrderPage(TradeOrderPageReqVO pageReqVO, int type);
-
     PageResult<TradeOrderRespVO> getOtcTradeOrderPage(TradeOrderPageReqVO pageReqVO);
 
     PageResult<TradeOrderRespVO> getMiniTradeOrderPage(TradeOrderPageReqVO pageReqVO);
 
-    PageResult<TradeTranOrderRespVO> getTransOrderPage(TradeOrderPageReqVO pageReqVO);
-
     PageResult<TradeOrderRespVO> getPaidOrderPage(TradeOrderPageReqVO pageReqVO);
 
 

+ 27 - 81
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/service/otc/impl/OtcTradeOrderServiceImpl.java

@@ -8,6 +8,7 @@ import cn.hutool.core.util.StrUtil;
 import cn.hutool.extra.spring.SpringUtil;
 import com.alibaba.excel.util.DateUtils;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.IdWorker;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -50,7 +51,6 @@ import com.yc.ship.module.resource.dal.mysql.route.ResourceRouteMapper;
 import com.yc.ship.module.resource.service.ship.ResourceShipService;
 import com.yc.ship.module.system.api.dict.DictDataApi;
 import com.yc.ship.module.system.api.dict.dto.DictDataRespDTO;
-import com.yc.ship.module.system.api.sms.SmsSendApi;
 import com.yc.ship.module.system.api.user.AdminUserApi;
 import com.yc.ship.module.system.api.user.dto.AdminUserRespDTO;
 import com.yc.ship.module.trade.api.dto.*;
@@ -85,7 +85,6 @@ import org.apache.commons.lang3.StringUtils;
 import org.jetbrains.annotations.NotNull;
 import org.redisson.api.RLock;
 import org.redisson.api.RedissonClient;
-import org.springframework.cache.annotation.Cacheable;
 import org.springframework.data.redis.core.StringRedisTemplate;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -565,8 +564,6 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
     public CommonResult<?> queryOrderAudit(Long orderId) {
         TradeOrderDO tradeOrderDO = tradeOrderRepositoryService.getById(orderId);
         if (tradeOrderDO != null) {
-            TradeOrderBindDO bindOrder = tradeOrderRepositoryService.getBindByOrder(tradeOrderDO.getId());
-            tradeOrderDO.setBindOrder(bindOrder);
             return CommonResult.success(tradeOrderDO);
         }
         return CommonResult.error(ORDER_NOT_EXIST);
@@ -574,19 +571,15 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
 
     @Override
     public CommonResult<?> orderAudit(Long orderId, Integer auditStatus) {
-        TradeOrderBindDO bindOrder = tradeOrderRepositoryService.getBindByOrder(orderId);
-        if (bindOrder == null) {
-            return CommonResult.error(500, "未找到绑定订单");
-        }
         if (auditStatus != null && auditStatus == 1) {
             tradeOrderMapper.update(Wrappers.<TradeOrderDO>lambdaUpdate()
-                    .set(TradeOrderDO::getOrderStatus, TradeOrderStatusEnum.UNUSED.getStatus())
+                    .set(TradeOrderDO::getOrderStatus, TradeOrderStatusEnum.UNPAID.getStatus())
+                    .set(TradeOrderDO::getAuditStatus, 1)
                     .eq(TradeOrderDO::getId, orderId)
             );
         } else {
             tradeOrderMapper.update(Wrappers.<TradeOrderDO>lambdaUpdate()
                     .set(TradeOrderDO::getOrderStatus, TradeOrderStatusEnum.YD.getStatus())
-                    .set(TradeOrderDO::getAmount, new BigDecimal(bindOrder.getCustom()))
                     .eq(TradeOrderDO::getId, orderId)
             );
         }
@@ -617,44 +610,6 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
         });
     }
 
-    @Override
-    @Cacheable(cacheNames = "getTradeOrderPage#5", key = "#pageReqVO.hashCode+'_'+#type", sync = true)
-    public PageResult<TradeOrderRespVO> getTradeOrderPage(TradeOrderPageReqVO pageReqVO, int type) {
-        log.error("订单列表getTradeOrderPage;{}{}", pageReqVO.hashCode(), type);
-        IPage<TradeOrderRespVO> page = new Page<>(pageReqVO.getPageNo(), pageReqVO.getPageSize(), false);
-        if (StringUtils.isNotBlank(pageReqVO.getOrderNo()) || StringUtils.isNotBlank(pageReqVO.getExternalOrderNo())) {
-            pageReqVO.setTravelDate(null);
-            pageReqVO.setTravelDateStart(null);
-            pageReqVO.setTravelDateEnd(null);
-        }
-
-        if (StringUtils.isNotBlank(pageReqVO.getSellerName())) {
-            CommonResult<List<AdminUserRespDTO>> userList = adminUserApi.getUserNameIgnoreTenant(pageReqVO.getSellerName());
-            if (userList.getData() != null && !userList.getData().isEmpty()) {
-                pageReqVO.setSellerId(userList.getData().get(0).getId());
-            }
-        } else if (StringUtils.isNotBlank(pageReqVO.getBusinessName())) {
-            CommonResult<List<AdminUserRespDTO>> userList = adminUserApi.getUserNameIgnoreTenant(pageReqVO.getBusinessName());
-            if (userList.getData() != null && !userList.getData().isEmpty()) {
-                pageReqVO.setSellerId(userList.getData().get(0).getId());
-            }
-        }
-        pageReqVO.setTenantId(TenantContextHolder.getTenantId());
-        TenantContextHolder.setIgnore(true);
-        TradeOrderCountRespVO tradeOrderUserCount = tradeOrderMapper.getTradeOrderUserCount(pageReqVO);
-        page.setTotal(tradeOrderUserCount.getOrderNum());
-        IPage<TradeOrderRespVO> iPage = tradeOrderMapper.getTradeOrderUserPage(page, pageReqVO);
-        TenantContextHolder.setIgnore(false);
-
-        List<DictDataRespDTO> dictList = dictDataApi.getDictDataList("project_specification_type");
-        iPage.getRecords().forEach(spu -> {
-            // 统计各规格数量
-            setSpecTypeInfo(spu, dictList);
-        });
-
-        String res = getTotalSpecTypeInfo(tradeOrderUserCount);
-        return new PageResult<>(iPage.getRecords(), iPage.getTotal(), res);
-    }
 
     @Override
     public PageResult<TradeOrderRespVO> getOtcTradeOrderPage(TradeOrderPageReqVO pageReqVO) {
@@ -832,7 +787,6 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
             // 统计各规格数量
             AtomicReference<List<TradeDetailRespVO>> list = new AtomicReference<>(new ArrayList<>());
             List<TradeDetailRespVO> detaillist = tradeDetailMapper.getOrderIdDetail(spu.getId());
-//            spu.setPackProductId(detaillist.get(0).getPackProductId());
             spu.setTotalNum(detaillist.size());
             List<TradeDetailRespVO> realDetaillist = detaillist.stream().filter(item -> item.getVoucherStatus() == 1 || item.getVoucherStatus() == 2 || item.getVoucherStatus() == 3 || item.getVoucherStatus() == 6 || item.getVoucherStatus() == 8 || item.getVoucherStatus() == 9).collect(Collectors.toList());
             if (!realDetaillist.isEmpty()) {
@@ -901,26 +855,6 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
         return new PageResult<>(iPage.getRecords(), iPage.getTotal());
     }
 
-    @Override
-    public PageResult<TradeTranOrderRespVO> getTransOrderPage(TradeOrderPageReqVO pageReqVO) {
-        if (StringUtils.isNotBlank(pageReqVO.getOrderNo())) {
-            pageReqVO.setTravelDateStart(null);
-            pageReqVO.setTravelDateEnd(null);
-        }
-        IPage<TradeOrderRespVO> page = new Page<>(pageReqVO.getPageNo(), pageReqVO.getPageSize());
-        IPage<TradeTranOrderRespVO> iPage = tradeOrderMapper.getTransOrderPage(page, pageReqVO);
-        iPage.getRecords().forEach(spu -> {
-            if (spu.getSellerId() != null && !spu.getSellerId().isEmpty()) {
-                AdminUserRespDTO user = adminUserApi.getUser(Long.parseLong(spu.getSellerId()));
-                if (user != null) {
-                    spu.setSellerName(user.getNickname());
-                    spu.setBusinessName(user.getNickname());
-                }
-            }
-        });
-        return new PageResult<>(iPage.getRecords(), iPage.getTotal());
-    }
-
 
     @Override
     public PageResult<TradeOrderRespVO> getPaidOrderPage(TradeOrderPageReqVO pageReqVO) {
@@ -1088,12 +1022,6 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
             //操作记录忽略租户,不然平台订单端查询不到记录
             vo.setSourceOrderNo(vo.getExternalOriginOrderNo());
             TenantUtils.executeIgnore(() -> {
-//                if (!Objects.isNull(vo.getRoutePlanId())) {
-//                    RoutePlanRespDTO routePlanDTO = tradeDetailMapper.getRoutePlanByPlanId(vo.getRoutePlanId());
-//                    if(routePlanDTO!=null){
-//                        vo.setRoutePlanName(routePlanDTO.getName());
-//                    }
-//                }
                 //获取订单操作记录
                 List<TradeOrderLogDO> tradeOrderLogS = tradeOrderLogMapper.selectList(TradeOrderLogDO::getOrderId, vo.getId());
                 List<TradeOrderLogDO> adminUserLogList = tradeOrderLogS.stream().filter(logDO -> (Objects.equals(logDO.getUserType(), UserTypeEnum.ADMIN.getValue()))).collect(Collectors.toList());
@@ -1192,7 +1120,7 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
         //查找自建所有根节点
         Set<Long> categoryOtaIdSet = getIdGrouping(categoryOtaList, 0);
         //查询当前门店设备绑定的产品信息
-        AgencyUserLoginInfoRespDTO agencyUserLoginInfo = null;
+        AgencyUserLoginInfoRespDTO agencyUserLoginInfo;
         List<Long> productIdList = null;
         try {
             agencyUserLoginInfo = agencyAuthUtils.getAgencyLoginUser().getContext(AGENCY_LOGIN_INFO, AgencyUserLoginInfoRespDTO.class);
@@ -1776,8 +1704,8 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
         int maxOrderNo = tradeOrderService.getMaxOrderNo(createVO.getVoyageId());
         String date = DateUtils.format(new Date(), "yyyyMMddmm");
         String code = "YC";
-        if(routeRespDTO!=null && routeRespDTO.getDirection()==2){
-            code ="CY";
+        if (routeRespDTO != null && routeRespDTO.getDirection() == 2) {
+            code = "CY";
         }
         String orderNo = ship.getCode() + "-" + date + "-" + code + "-" + (maxOrderNo + 1);
         if (distributorDO.getCode() == null) {
@@ -1977,11 +1905,15 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
 
         //创建订单国籍数据 //创建订单房型数据
         List<TradeOrderRoomModelDO> list = new ArrayList<>();
+        int auditType = 0;
         //创建订单国籍数据
         List<TradeOrderCountryDO> tradeOrderCountryDOList = new ArrayList<>();
         List<TradeOrderFloorDO> floorPlus = new ArrayList<>();
-        countryData.forEach(item -> {
+        for (TradeOrderCountryReqVO item : countryData) {
             TradeOrderCountryDO countryDO = BeanUtils.toBean(item, TradeOrderCountryDO.class);
+            if (countryDO.getLeaderPrice() !=null &&countryDO.getLeaderPrice().compareTo(BigDecimal.ZERO)!=0) {
+                auditType = 3;
+            }
             Long countryId = IdWorker.getId();
             countryDO.setOrderId(orderId);
             countryDO.setId(countryId);
@@ -2008,7 +1940,11 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
                 });
 
             });
-        });
+        }
+
+        if(auditType>0 && createVO.getIsYd()!=1){
+            tradeOrderMapper.update(new UpdateWrapper<TradeOrderDO>().set("audit_type", auditType).set("order_status", TradeOrderStatusEnum.TRANSFER).set("audit_status", 1).eq("id", orderId));
+        }
         tradeOrderCountryMapper.insertBatch(tradeOrderCountryDOList);
         tradeOrderRoomModelMapper.insertBatch(list);
         tradeOrderFloorMapper.insertBatch(floorPlus);
@@ -2059,6 +1995,7 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
         if (tradeOrderDO == null) {
             return CommonResult.error(ORDER_NOT_EXIST);
         }
+        int auditType = 0;
         String orderNo = tradeOrderDO.getOrderNo();
         Date updateTime = new Date();
         List<TradeOrderCountryReqVO> countryData = createVO.getCountryData();
@@ -2293,6 +2230,15 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
                 .set(TradeOrderFloorDO::getUpdateTime, updateTime)
                 .eq(TradeOrderFloorDO::getOrderId, orderId)
         );
+        if(!Objects.equals(shipTradeOrderCreateReqVO.getAmount(), tradeOrderDO.getAmount()) && loginUser.getDistributorId()!=null){
+            auditType = 4;
+        }
+        if(!Objects.equals(shipTradeOrderCreateReqVO.getAmount(), tradeOrderDO.getAmount()) && loginUser.getDistributorId()==null){
+            auditType = 3;
+        }
+        if(auditType>0 && loginUser.getDistributorId()!=null && createVO.getIsYd()!=1){
+            tradeOrderMapper.update(new UpdateWrapper<TradeOrderDO>().set("audit_type", auditType).set("order_status", TradeOrderStatusEnum.TRANSFER.getStatus()).set("audit_status", 1).eq("id", neworderId));
+        }
 
         tradeOrderCountryMapper.insertBatch(tradeOrderCountryDOList);
         tradeOrderRoomModelMapper.insertBatch(list);
@@ -2402,7 +2348,7 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
 
         //设置订单登记人姓名
         AdminUserRespDTO user = adminUserApi.getUser(orderRespNewVO.getCreator());
-        if(user != null) {
+        if (user != null) {
             orderRespNewVO.setCreatorName(user.getNickname());
         }
         //设置房型数据

+ 55 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/service/tradeOrderaudit/TradeOrderAuditService.java

@@ -0,0 +1,55 @@
+package com.yc.ship.module.trade.service.tradeOrderaudit;
+
+import com.yc.ship.framework.common.pojo.PageResult;
+import com.yc.ship.module.trade.controller.admin.tradeOrderaudit.vo.TradeOrderAuditPageReqVO;
+import com.yc.ship.module.trade.controller.admin.tradeOrderaudit.vo.TradeOrderAuditSaveReqVO;
+import com.yc.ship.module.trade.dal.dataobject.tradeOrderaudit.TradeOrderAuditDO;
+
+import javax.validation.Valid;
+
+/**
+ * 订单审核记录 Service 接口
+ *
+ * @author qsl
+ */
+public interface TradeOrderAuditService {
+
+    /**
+     * 创建订单审核记录
+     *
+     * @param createReqVO 创建信息
+     * @return 编号
+     */
+    Long createOrderAudit(@Valid TradeOrderAuditSaveReqVO createReqVO);
+
+    /**
+     * 更新订单审核记录
+     *
+     * @param updateReqVO 更新信息
+     */
+    void updateOrderAudit(@Valid TradeOrderAuditSaveReqVO updateReqVO);
+
+    /**
+     * 删除订单审核记录
+     *
+     * @param id 编号
+     */
+    void deleteOrderAudit(Long id);
+
+    /**
+     * 获得订单审核记录
+     *
+     * @param id 编号
+     * @return 订单审核记录
+     */
+    TradeOrderAuditDO getOrderAudit(Long id);
+
+    /**
+     * 获得订单审核记录分页
+     *
+     * @param pageReqVO 分页查询
+     * @return 订单审核记录分页
+     */
+    PageResult<TradeOrderAuditDO> getOrderAuditPage(TradeOrderAuditPageReqVO pageReqVO);
+
+}

+ 70 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/service/tradeOrderaudit/TradeOrderAuditServiceImpl.java

@@ -0,0 +1,70 @@
+package com.yc.ship.module.trade.service.tradeOrderaudit;
+
+import com.yc.ship.framework.common.pojo.PageResult;
+import com.yc.ship.framework.common.util.object.BeanUtils;
+import com.yc.ship.module.trade.controller.admin.tradeOrderaudit.vo.TradeOrderAuditPageReqVO;
+import com.yc.ship.module.trade.controller.admin.tradeOrderaudit.vo.TradeOrderAuditSaveReqVO;
+import com.yc.ship.module.trade.dal.dataobject.tradeOrderaudit.TradeOrderAuditDO;
+import com.yc.ship.module.trade.dal.mysql.tradeOrderaudit.TradeOrderAuditMapper;
+import org.springframework.stereotype.Service;
+import org.springframework.validation.annotation.Validated;
+
+import javax.annotation.Resource;
+
+import static com.yc.ship.framework.common.exception.util.ServiceExceptionUtil.exception;
+
+/**
+ * 订单审核记录 Service 实现类
+ *
+ * @author qsl
+ */
+@Service
+@Validated
+public class TradeOrderAuditServiceImpl implements TradeOrderAuditService {
+
+    @Resource
+    private TradeOrderAuditMapper orderAuditMapper;
+
+    @Override
+    public Long createOrderAudit(TradeOrderAuditSaveReqVO createReqVO) {
+        // 插入
+        TradeOrderAuditDO orderAudit = BeanUtils.toBean(createReqVO, TradeOrderAuditDO.class);
+        orderAuditMapper.insert(orderAudit);
+        // 返回
+        return orderAudit.getId();
+    }
+
+    @Override
+    public void updateOrderAudit(TradeOrderAuditSaveReqVO updateReqVO) {
+        // 校验存在
+        validateOrderAuditExists(updateReqVO.getId());
+        // 更新
+        TradeOrderAuditDO updateObj = BeanUtils.toBean(updateReqVO, TradeOrderAuditDO.class);
+        orderAuditMapper.updateById(updateObj);
+    }
+
+    @Override
+    public void deleteOrderAudit(Long id) {
+        // 校验存在
+        validateOrderAuditExists(id);
+        // 删除
+        orderAuditMapper.deleteById(id);
+    }
+
+    private void validateOrderAuditExists(Long id) {
+        if (orderAuditMapper.selectById(id) == null) {
+            throw exception(500, "订单审核记录不存在");
+        }
+    }
+
+    @Override
+    public TradeOrderAuditDO getOrderAudit(Long id) {
+        return orderAuditMapper.selectById(id);
+    }
+
+    @Override
+    public PageResult<TradeOrderAuditDO> getOrderAuditPage(TradeOrderAuditPageReqVO pageReqVO) {
+        return orderAuditMapper.selectPage(pageReqVO);
+    }
+
+}

+ 12 - 0
ship-module-trade/ship-module-trade-biz/src/main/resources/mapper/audituser/AuditUserMapper.xml

@@ -0,0 +1,12 @@
+<?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.yc.ship.module.trade.dal.mysql.audituser.AuditUserMapper">
+
+    <!--
+        一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。
+        无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。
+        代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
+        文档可见:https://www.iocoder.cn/MyBatis/x-plugins/
+     -->
+
+</mapper>

+ 1 - 1
ship-module-trade/ship-module-trade-biz/src/main/resources/mapper/order/TradeOrderMapper.xml

@@ -197,7 +197,7 @@
         left JOIN product_spu ps on ps.id = tdl.product_id
         LEFT JOIN ota_distributor od on od.id = td.source_id
         LEFT JOIN (select m2.order_id,sum(m2.refund_amount) refund_amount,sum(m2.origin_amount) origin_amount from trade_refund m2  where m2.refund_status = 6 and m2.refund_method !=2 GROUP BY m2.order_id) tr on td.id = tr.order_id
-        where 1= 1
+        where td.deleted = 0 and tou.deleted = 0 and tdl.deleted = 0
         <if test="vo.orderStatus!=null and vo.orderStatus.size()>0">
             and  td.order_status in
             <foreach collection="vo.orderStatus" item="item" separator=","  open="(" close=")">

+ 12 - 0
ship-module-trade/ship-module-trade-biz/src/main/resources/mapper/tradeOrderaudit/TradeOrderAuditMapper.xml

@@ -0,0 +1,12 @@
+<?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.yc.ship.module.trade.dal.mysql.tradeOrderaudit.TradeOrderAuditMapper">
+
+    <!--
+        一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。
+        无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。
+        代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
+        文档可见:https://www.iocoder.cn/MyBatis/x-plugins/
+     -->
+
+</mapper>