orderList = orderBiz.queryAll(pageQueryDTO);
diff --git a/aircraft-system/src/main/java/com/aircraft/modules/order/controller/SettlementMainController.java b/aircraft-system/src/main/java/com/aircraft/modules/order/controller/SettlementMainController.java
index d217bec..727ebe5 100644
--- a/aircraft-system/src/main/java/com/aircraft/modules/order/controller/SettlementMainController.java
+++ b/aircraft-system/src/main/java/com/aircraft/modules/order/controller/SettlementMainController.java
@@ -1,9 +1,22 @@
package com.aircraft.modules.order.controller;
-import org.springframework.web.bind.annotation.RequestMapping;
+import com.aircraft.modules.order.biz.OrderBiz;
+import com.aircraft.modules.order.domain.SettlementDetail;
+import com.aircraft.modules.order.domain.SettlementMain;
+import com.aircraft.modules.order.domain.dto.OrderMainPageQueryDTO;
+import com.aircraft.modules.order.domain.vo.OrderMainPageQueryVO;
+import com.aircraft.utils.PageResult;
+import com.aircraft.utils.PageUtil;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import org.springframework.http.HttpStatus;
+import org.springframework.http.ResponseEntity;
+import org.springframework.web.bind.annotation.*;
-import org.springframework.web.bind.annotation.RestController;
+import javax.annotation.Resource;
+import java.util.List;
/**
*
@@ -14,8 +27,55 @@ import org.springframework.web.bind.annotation.RestController;
* @since 2025-07-10
*/
@RestController
-@RequestMapping("/fmsOdSettlementMain")
+@RequestMapping("/api/settlementOrder")
+@Api(tags = "结算单管理")
public class SettlementMainController {
+ @Resource
+ private OrderBiz orderBiz;
+
+ @ApiOperation("查询结算订单列表")
+ @GetMapping("/allSettlementOrder")
+ public ResponseEntity> allSettlementOrderList(
+ @ApiParam(value = "结算批次号", required = false, example = "JS_2025072500001")
+ @RequestParam (value = "结算批次号") String batchNo) {
+ List orderList = orderBiz.allSettlementOrderList(batchNo);
+ return new ResponseEntity<>(PageUtil.toPage(orderList),HttpStatus.OK);
+ }
+
+ @ApiOperation("生成结算订单")
+ @PostMapping("/generateSettlementOrder")
+ public ResponseEntity generateSettlementOrder(
+ @ApiParam(value = "订单ID集合", required = true)
+ @RequestBody List orderIds) {
+ orderBiz.generateSettlementOrder(orderIds);
+ return new ResponseEntity<>("生成结算订单成功",HttpStatus.OK);
+ }
+
+ @ApiOperation("结算订单详情")
+ @GetMapping("/querySettlementOrderDetail/{settlementOrderId}")
+ public ResponseEntity> querySettlementOrderDetail(
+ @ApiParam(value = "结算订单ID", required = true, example = "1946509536383438850")
+ @PathVariable("settlementOrderId") Long settlementOrderId) {
+ return new ResponseEntity<>(orderBiz.querySettlementOrderDetail(settlementOrderId),HttpStatus.OK);
+ }
+
+ @ApiOperation("打印结算单数据-返回对应的数据集,前端进行打印PDF")
+ @GetMapping("/printSettlementOrder/{settlementOrderId}")
+ public ResponseEntity printSettlementOrder(
+ @ApiParam(value = "结算订单ID", required = true, example = "1946509536383438850")
+ @PathVariable("settlementOrderId") Long settlementOrderId) {
+ return new ResponseEntity<>(orderBiz.printSettlementOrder(settlementOrderId),HttpStatus.OK);
+ }
+
+ @ApiOperation("更新结算单状态")
+ @PutMapping("/updateSettlementOrderStatus/{settlementOrderId}/{settlementOrderStatus}")
+ public ResponseEntity updateSettlementOrderStatus(
+ @ApiParam(value = "结算订单ID", required = true, example = "1946509536383438850")
+ @PathVariable("settlementOrderId") Long settlementOrderId,
+ @ApiParam(value = "结算单状态: 0=结算中, 1=已确认, 2=已完成, 3=结算完成, 4=已取消", required = true, example = "1")
+ @PathVariable("settlementOrderStatus") Integer settlementOrderStatus) {
+ return new ResponseEntity<>(orderBiz.updateSettlementOrderStatus(settlementOrderId, settlementOrderStatus),HttpStatus.OK);
+ }
}
diff --git a/aircraft-system/src/main/java/com/aircraft/modules/order/domain/SettlementDetail.java b/aircraft-system/src/main/java/com/aircraft/modules/order/domain/SettlementDetail.java
index 9885887..77e64f0 100644
--- a/aircraft-system/src/main/java/com/aircraft/modules/order/domain/SettlementDetail.java
+++ b/aircraft-system/src/main/java/com/aircraft/modules/order/domain/SettlementDetail.java
@@ -34,6 +34,11 @@ public class SettlementDetail extends BaseEntity {
*/
private Long settlementMainId;
+ /**
+ * 订单ID
+ */
+ private Long orderId;
+
/**
* 订单编号
*/
@@ -42,7 +47,7 @@ public class SettlementDetail extends BaseEntity {
/**
* 订单类型
*/
- private Boolean orderType;
+ private Integer orderType;
/**
* 订单发起人ID
diff --git a/aircraft-system/src/main/java/com/aircraft/modules/order/domain/SettlementMain.java b/aircraft-system/src/main/java/com/aircraft/modules/order/domain/SettlementMain.java
index e734eb2..c7afd12 100644
--- a/aircraft-system/src/main/java/com/aircraft/modules/order/domain/SettlementMain.java
+++ b/aircraft-system/src/main/java/com/aircraft/modules/order/domain/SettlementMain.java
@@ -33,6 +33,11 @@ public class SettlementMain extends BaseEntity {
*/
private Integer batchNo;
+ /**
+ * 景区ID
+ */
+ private Long attractionId;
+
/**
* 结算状态
*/
diff --git a/aircraft-system/src/main/java/com/aircraft/modules/order/service/IOrderMainService.java b/aircraft-system/src/main/java/com/aircraft/modules/order/service/IOrderMainService.java
index 706eddd..9961481 100644
--- a/aircraft-system/src/main/java/com/aircraft/modules/order/service/IOrderMainService.java
+++ b/aircraft-system/src/main/java/com/aircraft/modules/order/service/IOrderMainService.java
@@ -72,4 +72,20 @@ public interface IOrderMainService extends IService {
* @return {@link List}
*/
List obtainOrderList(OrderMainPageQueryDTO pageQueryDTO);
+
+ /**
+ * 根据订单ID集合获取
+ *
+ * @param orderIds 订单ID集合
+ * @return List
+ */
+ List obtainOrderListByOrderIds(List orderIds);
+
+ /**
+ * 根据订单ID修改结算状态
+ *
+ * @param orderIds 订单ID集合
+ * @param settlementStatus 结算状态
+ */
+ void updateSettlementStatus(List orderIds, Integer settlementStatus);
}
diff --git a/aircraft-system/src/main/java/com/aircraft/modules/order/service/ISettlementDetailService.java b/aircraft-system/src/main/java/com/aircraft/modules/order/service/ISettlementDetailService.java
index 69ff0c8..9a7ac68 100644
--- a/aircraft-system/src/main/java/com/aircraft/modules/order/service/ISettlementDetailService.java
+++ b/aircraft-system/src/main/java/com/aircraft/modules/order/service/ISettlementDetailService.java
@@ -3,6 +3,8 @@ package com.aircraft.modules.order.service;
import com.aircraft.modules.order.domain.SettlementDetail;
import com.baomidou.mybatisplus.extension.service.IService;
+import java.util.List;
+
/**
*
* 订单结算详情主表 服务类
@@ -13,4 +15,18 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/
public interface ISettlementDetailService extends IService {
+ /**
+ * 批量插入
+ *
+ * @param settlementDetailList {@Link List}
+ */
+ void batchInsert(List settlementDetailList);
+
+ /**
+ * 查询结算单详情
+ *
+ * @param settlementOrderId 结算单ID
+ * @return List
+ */
+ List obtainDetailBySettlementOrderId(Long settlementOrderId);
}
diff --git a/aircraft-system/src/main/java/com/aircraft/modules/order/service/ISettlementMainService.java b/aircraft-system/src/main/java/com/aircraft/modules/order/service/ISettlementMainService.java
index 70076e8..b4e0f37 100644
--- a/aircraft-system/src/main/java/com/aircraft/modules/order/service/ISettlementMainService.java
+++ b/aircraft-system/src/main/java/com/aircraft/modules/order/service/ISettlementMainService.java
@@ -3,6 +3,8 @@ package com.aircraft.modules.order.service;
import com.aircraft.modules.order.domain.SettlementMain;
import com.baomidou.mybatisplus.extension.service.IService;
+import java.util.List;
+
/**
*
* 订单结算主表 服务类
@@ -14,4 +16,19 @@ import com.baomidou.mybatisplus.extension.service.IService;
public interface ISettlementMainService extends IService {
+ /**
+ * 根据批次号获取数据
+ *
+ * @param batchNo 结算批次号
+ * @return {@link List}
+ */
+ List allSettlementOrderList(String batchNo);
+
+ /**
+ * 批量新增结算订单
+ *
+ * @param settlementMainList {List}
+ */
+ List batchInsert(List settlementMainList);
+
}
diff --git a/aircraft-system/src/main/java/com/aircraft/modules/order/service/impl/OrderMainServiceImpl.java b/aircraft-system/src/main/java/com/aircraft/modules/order/service/impl/OrderMainServiceImpl.java
index 11c49cd..48c7727 100644
--- a/aircraft-system/src/main/java/com/aircraft/modules/order/service/impl/OrderMainServiceImpl.java
+++ b/aircraft-system/src/main/java/com/aircraft/modules/order/service/impl/OrderMainServiceImpl.java
@@ -1,5 +1,6 @@
package com.aircraft.modules.order.service.impl;
+import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.aircraft.modules.order.domain.OrderMain;
@@ -93,4 +94,21 @@ public class OrderMainServiceImpl extends ServiceImpl obtainOrderList(OrderMainPageQueryDTO pageQueryDTO) {
return orderMainMapper.obtainOrderList(pageQueryDTO);
}
+
+ @Override
+ public List obtainOrderListByOrderIds(List orderIds) {
+ LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>();
+ queryWrapper.in(OrderMain::getId, orderIds);
+ return list(queryWrapper);
+ }
+
+ @Override
+ public void updateSettlementStatus(List orderIds, Integer settlementStatus) {
+ if (CollectionUtil.isEmpty(orderIds)) {
+ return;
+ }
+ this.update(Wrappers.lambdaUpdate()
+ .in(OrderMain::getId, orderIds)
+ .set(OrderMain::getSettlementStatus, settlementStatus));
+ }
}
diff --git a/aircraft-system/src/main/java/com/aircraft/modules/order/service/impl/SettlementDetailServiceImpl.java b/aircraft-system/src/main/java/com/aircraft/modules/order/service/impl/SettlementDetailServiceImpl.java
index f1c01fb..21b7068 100644
--- a/aircraft-system/src/main/java/com/aircraft/modules/order/service/impl/SettlementDetailServiceImpl.java
+++ b/aircraft-system/src/main/java/com/aircraft/modules/order/service/impl/SettlementDetailServiceImpl.java
@@ -3,9 +3,12 @@ package com.aircraft.modules.order.service.impl;
import com.aircraft.modules.order.domain.SettlementDetail;
import com.aircraft.modules.order.mapper.SettlementDetailMapper;
import com.aircraft.modules.order.service.ISettlementDetailService;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
+import java.util.List;
+
/**
*
* 订单结算详情主表 服务实现类
@@ -17,4 +20,13 @@ import org.springframework.stereotype.Service;
@Service
public class SettlementDetailServiceImpl extends ServiceImpl implements ISettlementDetailService {
+ @Override
+ public void batchInsert(List settlementDetailList) {
+ this.saveBatch(settlementDetailList);
+ }
+
+ @Override
+ public List obtainDetailBySettlementOrderId(Long settlementOrderId) {
+ return this.list(Wrappers.lambdaQuery(SettlementDetail.class).eq(SettlementDetail::getSettlementMainId, settlementOrderId));
+ }
}
diff --git a/aircraft-system/src/main/java/com/aircraft/modules/order/service/impl/SettlementMainServiceImpl.java b/aircraft-system/src/main/java/com/aircraft/modules/order/service/impl/SettlementMainServiceImpl.java
index 9003896..4ab2b05 100644
--- a/aircraft-system/src/main/java/com/aircraft/modules/order/service/impl/SettlementMainServiceImpl.java
+++ b/aircraft-system/src/main/java/com/aircraft/modules/order/service/impl/SettlementMainServiceImpl.java
@@ -1,11 +1,15 @@
package com.aircraft.modules.order.service.impl;
+import cn.hutool.core.util.StrUtil;
import com.aircraft.modules.order.domain.SettlementMain;
import com.aircraft.modules.order.mapper.SettlementMainMapper;
import com.aircraft.modules.order.service.ISettlementMainService;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
+import java.util.List;
+
/**
*
* 订单结算主表 服务实现类
@@ -17,4 +21,15 @@ import org.springframework.stereotype.Service;
@Service
public class SettlementMainServiceImpl extends ServiceImpl implements ISettlementMainService {
+ @Override
+ public List allSettlementOrderList(String batchNo) {
+ return list(Wrappers.lambdaQuery(SettlementMain.class)
+ .eq(StrUtil.isNotBlank(batchNo), SettlementMain::getBatchNo, batchNo));
+ }
+
+ @Override
+ public List batchInsert(List settlementMainList) {
+ this.saveBatch(settlementMainList);
+ return settlementMainList;
+ }
}
diff --git a/aircraft-system/src/main/resources/config/application-dev.yml b/aircraft-system/src/main/resources/config/application-dev.yml
index 91a7d91..ed59610 100644
--- a/aircraft-system/src/main/resources/config/application-dev.yml
+++ b/aircraft-system/src/main/resources/config/application-dev.yml
@@ -131,7 +131,7 @@ amz:
# 地域对应的 endpoint
endPoint: https://oss-cn-wulanchabu.aliyuncs.com
# 访问的域名
- domain: https://aishangyun.oss-cn-wulanchabu.aliyuncs.com
+ domain: https://oss.aishangfeixing.com
# 账号的认证信息,或者子账号的认证信息
accessKey: LTAI5tRK1mszQC82s2rCkowq
secretKey: Ns8VAkRBauIuC207s3eGiqMrLbpF4e
diff --git a/aircraft-system/src/main/resources/config/application-prod.yml b/aircraft-system/src/main/resources/config/application-prod.yml
index eb45859..2791c06 100644
--- a/aircraft-system/src/main/resources/config/application-prod.yml
+++ b/aircraft-system/src/main/resources/config/application-prod.yml
@@ -3,10 +3,10 @@ spring:
datasource:
druid:
db-type: com.alibaba.druid.pool.DruidDataSource
- driverClassName: com.mysql.cj.jdbc.Driver
- url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:eladmin}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false
- username: ${DB_USER:root}
- password: ${DB_PWD:123456}
+ driverClassName: com.p6spy.engine.spy.P6SpyDriver
+ url: jdbc:p6spy:mysql://aishangyun.mysql.polardb.rds.aliyuncs.com:3306/aircraft-mp?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false
+ username: aishangyun_dev
+ password: asyfx@123&dev
# 初始连接数,建议设置为与最小空闲连接数相同
initial-size: 20
# 最小空闲连接数,保持足够的空闲连接以应对请求
@@ -54,6 +54,12 @@ spring:
wall:
config:
multi-statement-allow: true
+ redis:
+ #数据库索引
+ database: ${REDIS_DB:1}
+ host: ${REDIS_HOST:172.31.108.89}
+ port: ${REDIS_PORT:6334}
+ password: ${REDIS_PWD:aircraft.redis.@2025}
# 登录相关配置
login:
@@ -133,15 +139,16 @@ file:
amz:
s3:
# 地域
- region: test
+ region: cn-wulanchabu
# 地域对应的 endpoint
- endPoint: https://s3.test.com
+ endPoint: https://oss-cn-wulanchabu.aliyuncs.com
# 访问的域名
- domain: https://s3.test.com
+ domain: https://oss.aishangfeixing.com
# 账号的认证信息,或者子账号的认证信息
- accessKey: 填写你的AccessKey
- secretKey: 填写你的SecretKey
+ accessKey: LTAI5tRK1mszQC82s2rCkowq
+ secretKey: Ns8VAkRBauIuC207s3eGiqMrLbpF4e
# 存储桶(Bucket)
- defaultBucket: 填写你的存储桶名称
+ defaultBucket: aishangyun
+
# 文件存储路径
timeformat: yyyy-MM
\ No newline at end of file
diff --git a/aircraft-system/src/main/resources/spy.properties b/aircraft-system/src/main/resources/spy.properties
index 81f7e36..1a6d249 100644
--- a/aircraft-system/src/main/resources/spy.properties
+++ b/aircraft-system/src/main/resources/spy.properties
@@ -2,8 +2,8 @@
modulelist=com.baomidou.mybatisplus.extension.p6spy.MybatisPlusLogFactory,com.p6spy.engine.outage.P6OutageFactory
# 自定义日志打印
logMessageFormat=com.aircraft.config.mybatis.CustomP6SpyLogger
-# 日志输出到控制台
-appender=com.baomidou.mybatisplus.extension.p6spy.StdoutLogger
+# 日志输出到文件
+appender=com.aircraft.config.mybatis.P6spyLogger
# 日期格式
dateformat=yyyy-MM-dd HH:mm:ss
# 实际驱动 可多个