From 8d0d503700b584dac185d1f2acbad06b00980275 Mon Sep 17 00:00:00 2001 From: wyn <1074145239@qq.com> Date: Thu, 14 May 2026 18:36:33 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E8=AF=BE=E7=A8=8B=E8=AF=A6=E6=83=85?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E8=AF=BE=E7=A8=8B=E8=A1=A8=E5=9B=BE=E7=89=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/controller/UserVipController.java | 1 + .../common/service/CourseMedicineService.java | 7 ++++ .../impl/CourseMedicineServiceImpl.java | 16 ++++++++ .../service/impl/CourseServiceImpl.java | 37 ++++++++++++++++++- 4 files changed, 60 insertions(+), 1 deletion(-) create mode 100644 src/main/java/com/peanut/modules/common/service/CourseMedicineService.java create mode 100644 src/main/java/com/peanut/modules/common/service/impl/CourseMedicineServiceImpl.java diff --git a/src/main/java/com/peanut/modules/common/controller/UserVipController.java b/src/main/java/com/peanut/modules/common/controller/UserVipController.java index 923c014..73a6f49 100644 --- a/src/main/java/com/peanut/modules/common/controller/UserVipController.java +++ b/src/main/java/com/peanut/modules/common/controller/UserVipController.java @@ -373,6 +373,7 @@ public class UserVipController { String timeId = IdWorker.getTimeId().substring(0, 32); buyOrder.setOrderSn(timeId); buyOrder.setUserId(uid); + buyOrder.setPaymentDate(new Date()); buyOrderService.save(buyOrder); BigDecimal totalPrice = buyOrder.getRealMoney(); if (Constants.PAYMENT_METHOD_VIRTUAL.equals(buyOrder.getPaymentMethod())) { diff --git a/src/main/java/com/peanut/modules/common/service/CourseMedicineService.java b/src/main/java/com/peanut/modules/common/service/CourseMedicineService.java new file mode 100644 index 0000000..1148ea2 --- /dev/null +++ b/src/main/java/com/peanut/modules/common/service/CourseMedicineService.java @@ -0,0 +1,7 @@ +package com.peanut.modules.common.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.peanut.modules.common.entity.CourseMedicine; + +public interface CourseMedicineService extends IService { +} diff --git a/src/main/java/com/peanut/modules/common/service/impl/CourseMedicineServiceImpl.java b/src/main/java/com/peanut/modules/common/service/impl/CourseMedicineServiceImpl.java new file mode 100644 index 0000000..5dc81b5 --- /dev/null +++ b/src/main/java/com/peanut/modules/common/service/impl/CourseMedicineServiceImpl.java @@ -0,0 +1,16 @@ +package com.peanut.modules.common.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.peanut.modules.common.dao.CourseMedicineDao; +import com.peanut.modules.common.dao.CourseToMedicineDao; +import com.peanut.modules.common.entity.CourseMedicine; +import com.peanut.modules.common.entity.CourseToMedicine; +import com.peanut.modules.common.service.CourseMedicineService; +import com.peanut.modules.common.service.CourseToMedicineService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +@Slf4j +@Service("commonCourseMedicineService") +public class CourseMedicineServiceImpl extends ServiceImpl implements CourseMedicineService { +} diff --git a/src/main/java/com/peanut/modules/sociology/service/impl/CourseServiceImpl.java b/src/main/java/com/peanut/modules/sociology/service/impl/CourseServiceImpl.java index 4a737a7..7e6ea5f 100644 --- a/src/main/java/com/peanut/modules/sociology/service/impl/CourseServiceImpl.java +++ b/src/main/java/com/peanut/modules/sociology/service/impl/CourseServiceImpl.java @@ -1,6 +1,7 @@ package com.peanut.modules.sociology.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.github.yulichang.wrapper.MPJLambdaWrapper; @@ -10,9 +11,12 @@ import com.peanut.common.utils.ShiroUtils; import com.peanut.modules.book.service.ShopProductService; import com.peanut.modules.common.dao.*; import com.peanut.modules.common.entity.*; +import com.peanut.modules.common.service.CourseMedicineService; +import com.peanut.modules.common.service.CourseToMedicineService; import com.peanut.modules.common.service.MyUserService; import com.peanut.modules.common.service.UserVipService; import com.peanut.modules.common.to.ParamTo; +import com.peanut.modules.master.service.CourseMedicalService; import com.peanut.modules.sociology.service.CourseService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang.StringUtils; @@ -52,6 +56,10 @@ public class CourseServiceImpl extends ServiceImpl impl private UserVipDao userVipDao; @Autowired private UserCourseBuyLogDao userCourseBuyLogDao; + @Autowired + private CourseToMedicineService courseToMedicineService; + @Autowired + private CourseMedicineService courseMedicineService; //根据标签获取课程列表 @@ -117,7 +125,14 @@ public class CourseServiceImpl extends ServiceImpl impl Page courseEntityPage = this.getBaseMapper().selectJoinPage(new Page<>(param.getPage(), param.getLimit()), CourseEntity.class, wrapper); return courseEntityPage; } - + public CourseMedicine getCourseMedicinePid(int medicineId){ + CourseMedicine courseMedicine = courseMedicineService.getById(medicineId); + if(courseMedicine.getPid()==0){ + return courseMedicine; + }else{ + return getCourseMedicinePid(courseMedicine.getPid()); + } + } @Override public Map getCourseDetail(Integer id) { Map flag = new HashMap<>(); @@ -163,6 +178,26 @@ public class CourseServiceImpl extends ServiceImpl impl } } } + QueryWrapper courseToMedicineWrapper = new QueryWrapper(); + courseToMedicineWrapper.eq("course_id",course.getId()); + List courseToMedicineList = courseToMedicineService.list(courseToMedicineWrapper); + String content = course.getContent(); + List medicinePids = new ArrayList<>(); + for (CourseToMedicine courseToMedicine:courseToMedicineList){ + CourseMedicine courseMedicine = getCourseMedicinePid(courseToMedicine.getMedicalId()); + if(medicinePids.contains(courseMedicine.getId())){ + continue; + } + if(courseMedicine!=null && courseMedicine.getId()==1){ + content = content+""; + }else if(courseMedicine!=null && courseMedicine.getId()==74){ + content = content+""; + } + if(courseMedicine!=null){ + medicinePids.add(courseMedicine.getId()); + } + } + course.setContent(content); flag.put("course",course); //课程关联商品 if (StringUtils.isNotEmpty(course.getRelationProductIds())){ From 99a873993deaedb305b1377783d4f6c4cfee9608 Mon Sep 17 00:00:00 2001 From: wyn <1074145239@qq.com> Date: Fri, 15 May 2026 14:42:40 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E7=AE=A1=E7=90=86=E5=90=8E=E5=8F=B0?= =?UTF-8?q?=E8=AE=A2=E5=8D=95=20VIP=E5=92=8C=E8=AF=BE=E7=A8=8B=E4=B8=8D?= =?UTF-8?q?=E9=99=90=E5=88=B6=E4=B8=83=E5=A4=A9=EF=BC=8C=E5=90=8E=E5=8F=B0?= =?UTF-8?q?=E9=83=BD=E5=8F=AF=E4=BB=A5=E9=80=80=E6=AC=BE=EF=BC=8Capp?= =?UTF-8?q?=E9=99=90=E5=88=B6=E4=B8=83=E5=A4=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/book/controller/BuyOrderController.java | 10 +++++----- .../peanut/modules/book/service/BuyOrderService.java | 2 ++ .../book/service/impl/BuyOrderServiceImpl.java | 12 +++++++++++- 3 files changed, 18 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/peanut/modules/book/controller/BuyOrderController.java b/src/main/java/com/peanut/modules/book/controller/BuyOrderController.java index b48a3f9..2c0a139 100644 --- a/src/main/java/com/peanut/modules/book/controller/BuyOrderController.java +++ b/src/main/java/com/peanut/modules/book/controller/BuyOrderController.java @@ -7,10 +7,7 @@ import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.github.yulichang.wrapper.MPJLambdaWrapper; import com.alibaba.fastjson.JSONObject; -import com.peanut.common.utils.DateUtils; -import com.peanut.common.utils.PageUtils; -import com.peanut.common.utils.R; -import com.peanut.common.utils.ShiroUtils; +import com.peanut.common.utils.*; import com.peanut.config.Constants; import com.peanut.config.DelayQueueConfig; import com.peanut.modules.book.service.*; @@ -41,6 +38,7 @@ import com.peanut.modules.pay.weChatPay.dto.WechatPaymentInfo; import com.peanut.modules.pay.weChatPay.service.WxpayService; import com.peanut.modules.sys.entity.SysConfigEntity; import com.peanut.modules.sys.service.SysConfigService; +import jakarta.servlet.http.HttpServletRequest; import lombok.extern.slf4j.Slf4j; import org.apache.http.HttpException; import org.apache.poi.ss.usermodel.Row; @@ -152,7 +150,9 @@ public class BuyOrderController { */ @RequestMapping(path = "/orderList", method = RequestMethod.POST) public R orderList(@RequestBody BuyOrderListRequestVo requestVo) { - Page buyOrderPage = buyOrderService.orderList(requestVo); + HttpServletRequest request = HttpContextUtil.getHttpServletRequest(); + Boolean isHT = request.getHeader("appType")==null?true:false; + Page buyOrderPage = buyOrderService.orderList(requestVo, isHT); return R.ok().put("result", buyOrderPage); } //导出名医精彩订单 diff --git a/src/main/java/com/peanut/modules/book/service/BuyOrderService.java b/src/main/java/com/peanut/modules/book/service/BuyOrderService.java index c9a9a65..c6710ec 100644 --- a/src/main/java/com/peanut/modules/book/service/BuyOrderService.java +++ b/src/main/java/com/peanut/modules/book/service/BuyOrderService.java @@ -55,6 +55,8 @@ public interface BuyOrderService extends IService { */ R delivery(String expressCompanyCode, List buyOrderDetailId); + Page orderList(BuyOrderListRequestVo requestVo, Boolean isHT); + Page getUserOrderList(UserOrderDto userOrderDto); List getUserOrderStatusNum(Integer userId); diff --git a/src/main/java/com/peanut/modules/book/service/impl/BuyOrderServiceImpl.java b/src/main/java/com/peanut/modules/book/service/impl/BuyOrderServiceImpl.java index 2fe57a3..ff8357f 100644 --- a/src/main/java/com/peanut/modules/book/service/impl/BuyOrderServiceImpl.java +++ b/src/main/java/com/peanut/modules/book/service/impl/BuyOrderServiceImpl.java @@ -383,6 +383,15 @@ public class BuyOrderServiceImpl extends ServiceImpl impl @Override public Page orderList(BuyOrderListRequestVo requestVo) { + Page buyOrderPage = this.getOrderList(requestVo,null); + return buyOrderPage; + } + @Override + public Page orderList(BuyOrderListRequestVo requestVo, Boolean isHT) { + Page buyOrderPage = this.getOrderList(requestVo,isHT); + return buyOrderPage; + } + public Page getOrderList(BuyOrderListRequestVo requestVo,Boolean isHT){ MPJLambdaWrapper wrapper = new MPJLambdaWrapper<>(); wrapper.selectAll(BuyOrder.class); wrapper.leftJoin(MyUserEntity.class, MyUserEntity::getId,BuyOrder::getUserId); @@ -443,6 +452,7 @@ public class BuyOrderServiceImpl extends ServiceImpl impl if(paymentDateTime > timestamp-7*24*60*60*1000){ refundableStatus = true; } + refundableStatus = isHT?true:refundableStatus; b.setVipBuyConfigEntity(vipBuyConfigService.getById(b.getVipBuyConfigId())); } //添加商品信息 @@ -460,7 +470,7 @@ public class BuyOrderServiceImpl extends ServiceImpl impl b1.setProduct(byId); b1.setExpressOrder(expressOrderDao.selectById(b1.getExpressOrderId())); boolean refundableStatusProduct = false; - if(b1.getProduct()!=null && b1.getProduct().getGoodsType().equals("05") && (paymentDateTime > timestamp-7*24*60*60*1000)){ + if(b1.getProduct()!=null && b1.getProduct().getGoodsType().equals("05") && (paymentDateTime > timestamp-7*24*60*60*1000 || isHT)){ refundableStatusProduct = true; }else if(b1.getProduct()!=null && !b1.getProduct().getGoodsType().equals("05") && b.getOrderStatus().equals("1")){ refundableStatusProduct = true; From 7e39f3f5f96195bc6df6576b915d89a20c5ebbc3 Mon Sep 17 00:00:00 2001 From: wyn <1074145239@qq.com> Date: Fri, 15 May 2026 16:30:15 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E8=AE=A2=E5=8D=95=E9=80=80=E6=AC=BE=20?= =?UTF-8?q?=E5=A6=82=E6=9E=9C=E6=98=AF=E4=B9=B0=E4=B9=A6=E7=9A=84=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=EF=BC=8C=E9=83=A8=E5=88=86=E5=8F=91=E8=B4=A7=EF=BC=8C?= =?UTF-8?q?=E4=B8=8D=E6=98=BE=E7=A4=BA=E7=94=B3=E8=AF=B7=E9=80=80=E6=AC=BE?= =?UTF-8?q?=E6=8C=89=E9=92=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../peanut/modules/book/service/impl/BuyOrderServiceImpl.java | 4 ++-- .../modules/common/service/impl/BuyOrderServiceImpl.java | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/peanut/modules/book/service/impl/BuyOrderServiceImpl.java b/src/main/java/com/peanut/modules/book/service/impl/BuyOrderServiceImpl.java index ff8357f..b78368f 100644 --- a/src/main/java/com/peanut/modules/book/service/impl/BuyOrderServiceImpl.java +++ b/src/main/java/com/peanut/modules/book/service/impl/BuyOrderServiceImpl.java @@ -472,7 +472,7 @@ public class BuyOrderServiceImpl extends ServiceImpl impl boolean refundableStatusProduct = false; if(b1.getProduct()!=null && b1.getProduct().getGoodsType().equals("05") && (paymentDateTime > timestamp-7*24*60*60*1000 || isHT)){ refundableStatusProduct = true; - }else if(b1.getProduct()!=null && !b1.getProduct().getGoodsType().equals("05") && b.getOrderStatus().equals("1")){ + }else if(b1.getProduct()!=null && !b1.getProduct().getGoodsType().equals("05") && b.getOrderStatus().equals("1") && b1.getExpressOrderId()==0){ refundableStatusProduct = true; } refundableStatusArr[i] = refundableStatusProduct; @@ -581,7 +581,7 @@ public class BuyOrderServiceImpl extends ServiceImpl impl boolean refundableStatusProduct = false; if (bb.getProduct()!=null && bb.getProduct().getGoodsType().equals("05") && paymentDateTime > timestamp - 7 * 24 * 60 * 60 * 1000) { refundableStatusProduct = true; - } else if (bb.getProduct()!=null && !bb.getProduct().getGoodsType().equals("05") && b.getOrderStatus().equals(Constants.ORDER_STATUS_TO_BE_SHIPPED)){ + } else if (bb.getProduct()!=null && !bb.getProduct().getGoodsType().equals("05") && b.getOrderStatus().equals(Constants.ORDER_STATUS_TO_BE_SHIPPED) && bb.getExpressOrderId()==0){ refundableStatusProduct = true; } refundableStatusArr[i] = refundableStatusProduct; diff --git a/src/main/java/com/peanut/modules/common/service/impl/BuyOrderServiceImpl.java b/src/main/java/com/peanut/modules/common/service/impl/BuyOrderServiceImpl.java index 71c12cb..1e7b015 100644 --- a/src/main/java/com/peanut/modules/common/service/impl/BuyOrderServiceImpl.java +++ b/src/main/java/com/peanut/modules/common/service/impl/BuyOrderServiceImpl.java @@ -125,7 +125,7 @@ public class BuyOrderServiceImpl extends ServiceImpl impl boolean refundableStatusProduct = false; if(bb.getProduct()!=null && bb.getProduct().getGoodsType().equals("05") && (paymentDateTime > timestamp-7*24*60*60*1000)){ refundableStatusProduct = true; - }else if(bb.getProduct()!=null && !bb.getProduct().getGoodsType().equals("05") && b.getOrderStatus().equals("1")){ + }else if(bb.getProduct()!=null && !bb.getProduct().getGoodsType().equals("05") && b.getOrderStatus().equals("1") && bb.getExpressOrderId()==0){ refundableStatusProduct = true; } refundableStatusArr[i] = refundableStatusProduct;