Просмотр исходного кода

fix: Native支付关联买家userId + 恢复公告列表接口

- PaymentController/PaymentService: 保存联系人时关联userId, 同步创建的ProductOrder填充buyerId(修复管理端订单无买家)
- NoticeController: 恢复 /api/notices/list 接口(原410废弃)
Xiaogang Liao 2 месяцев назад
Родитель
Сommit
8f70508fa5

+ 3 - 2
cfc-backend/src/main/java/com/etotem/cfc/controller/guide/PaymentController.java

@@ -74,7 +74,8 @@ public class PaymentController {
      */
     @Operation(summary = "创建微信Native支付")
     @PostMapping("/wechat/native")
-    public Result<Map<String, Object>> createWechatNativePay(@RequestBody Map<String, Object> params) {
+    public Result<Map<String, Object>> createWechatNativePay(@RequestBody Map<String, Object> params,
+                                                             @RequestAttribute("userId") Long userId) {
         String orderNo = (String) params.get("orderNo");
         String description = (String) params.get("description");
         Integer amount = (Integer) params.get("amount");
@@ -83,7 +84,7 @@ public class PaymentController {
         String contactAddress = (String) params.get("contactAddress");
 
         // 保存联系人信息
-        paymentService.saveContactInfo(orderNo, contactName, contactPhone, contactAddress);
+        paymentService.saveContactInfo(orderNo, contactName, contactPhone, contactAddress, userId);
 
         Map<String, Object> result = paymentService.createWechatNativePayOrder(orderNo, description, amount);
         return Result.success(result);

+ 6 - 4
cfc-backend/src/main/java/com/etotem/cfc/controller/notice/NoticeController.java

@@ -20,10 +20,12 @@ public class NoticeController {
     @Resource
     private NoticeMapper noticeMapper;
 
-@Operation(summary = "获取已发布公告列表(已废弃,请使用 /api/admin/notices/list)")
-    @Deprecated
-    @PostMapping("/list")
+@Operation(summary = "获取已发布公告列表")
+    @RequestMapping(value = "/list", method = {RequestMethod.GET, RequestMethod.POST})
     public Result<List<Notice>> list() {
-        return Result.error(410, "该接口已废弃(违反统一POST规范),请使用 /api/admin/notices/list");
+        LambdaQueryWrapper<Notice> q = new LambdaQueryWrapper<>();
+        q.eq(Notice::getStatus, "active");
+        q.orderByDesc(Notice::getCreatedAt);
+        return Result.success(noticeMapper.selectList(q));
     }
 }

+ 2 - 1
cfc-backend/src/main/java/com/etotem/cfc/service/PaymentService.java

@@ -124,7 +124,7 @@ public class PaymentService implements PaymentServiceInterface {
         return createWechatPrepay(orderNo, description, amount, "");
     }
 
-    public void saveContactInfo(String orderNo, String name, String phone, String address) {
+    public void saveContactInfo(String orderNo, String name, String phone, String address, Long userId) {
         try {
             PackageOrder order = packageOrderMapper.selectOne(
                 new LambdaQueryWrapper<PackageOrder>().eq(PackageOrder::getOrderNo, orderNo));
@@ -147,6 +147,7 @@ public class PaymentService implements PaymentServiceInterface {
             // 同步创建ProductOrder,以便在管理端订单管理中查看
             try {
                 ProductOrder po = new ProductOrder();
+                po.setBuyerId(userId);
                 po.setOrderNo(orderNo);
                 po.setProductId(0L);
                 po.setProductName("肠道菌群基因检测");