From c036557db88c6297b9a626a892dce35c14ab8ee5 Mon Sep 17 00:00:00 2001 From: nickchange <126672920+nickchange@users.noreply.github.com> Date: 星期四, 09 十一月 2023 18:30:31 +0800 Subject: [PATCH] 11.6 --- cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageDiscountServiceImpl.java | 83 +++++++++++++++++++++++++++++++++++++++-- 1 files changed, 79 insertions(+), 4 deletions(-) diff --git a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageDiscountServiceImpl.java b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageDiscountServiceImpl.java index 1017f20..15115b8 100644 --- a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageDiscountServiceImpl.java +++ b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageDiscountServiceImpl.java @@ -3,7 +3,9 @@ import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +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.dsh.course.entity.CoursePackagePaymentConfig; import com.dsh.course.entity.TCoursePackage; @@ -16,6 +18,8 @@ import com.dsh.course.mapper.TCoursePackageDiscountMapper; import com.dsh.course.mapper.TCoursePackageMapper; import com.dsh.course.mapper.TCoursePackagePaymentMapper; +import com.dsh.course.model.DiscountList; +import com.dsh.course.model.QueryDiscountList; import com.dsh.course.model.vo.response.Details; import com.dsh.course.model.vo.response.ExchangeCoursePackageResponse; import com.dsh.course.service.TCoursePackageDiscountService; @@ -65,7 +69,7 @@ List<Details> list = new ArrayList<>(); QueryWrapper<TCoursePackageDiscount> tCoursePackageDiscountQueryWrapper = new QueryWrapper<>(); - tCoursePackageDiscountQueryWrapper.eq("auditStatus", 2); + tCoursePackageDiscountQueryWrapper.eq("auditStatus", 2).eq("status",1); List<TCoursePackageDiscount> tCoursePackageDiscounts = new ArrayList<>(); int weekStr = LocalDateTimeUtils.getWeekStr(); if (null == discountType || discountType == 1) { @@ -315,7 +319,7 @@ JSONArray jsonArray = JSON.parseArray(coursePackageDiscount.getContent()); JSONObject jsonObject = jsonArray.getJSONObject(0); CoursePackagePaymentConfig paymentConfig = cppcMapper.selectById(coursePackageDiscount.getCoursePackagePaymentConfigId()); - if (coursePackageDiscount.getType() == 3){ + if (coursePackageDiscount.getType() == 3 ||coursePackageDiscount.getType() == 4){ Double cashPayment = jsonObject.getDouble("cashPayment"); packageResponse.setClassHours(paymentConfig.getClassHours()); packageResponse.setCostPrice(paymentConfig.getCashPayment()); @@ -351,8 +355,79 @@ return packageResponse; } - - + @Override + public List<DiscountList> queryDiscountListAudit(QueryDiscountList queryDiscountList) { + Page<DiscountList> discountListPage = new Page<>(queryDiscountList.getOffset(), queryDiscountList.getLimit()); + List<DiscountList> discountLists = this.baseMapper.queryDiscountListAudit(discountListPage, + queryDiscountList.getPCode(), + queryDiscountList.getCCode(), + queryDiscountList.getName(), + queryDiscountList.getType(), + queryDiscountList.getIds()); + for (DiscountList discountList : discountLists) { + List<TCoursePackageDiscount> tCoursePackageDiscounts = this.baseMapper + .selectList(new LambdaQueryWrapper<TCoursePackageDiscount>() + .eq(TCoursePackageDiscount::getCoursePackageId, discountList.getCourseId()) + .ne(TCoursePackageDiscount::getAuditStatus,2) + .orderByAsc(TCoursePackageDiscount::getType)); +// long count = tCoursePackageDiscounts.stream() +// .filter(e -> e.getAuditStatus().equals(2)).count(); +// if(count>0){ +// discountList.setStatus(2); +// }else { +// discountList.setStatus(1); +// } + String type=""; + for (int i = 0; i < tCoursePackageDiscounts.size(); i++) { + if(tCoursePackageDiscounts.get(i).getType()==1){ + type += "会员折扣、"; + }else if(tCoursePackageDiscounts.get(i).getType()==3){ + type += "限时折扣、"; + }else if(tCoursePackageDiscounts.get(i).getType()==4){ + type += "赠送课时、"; + } + } + if(type.length()>0){ + type = type.substring(0,type.length()-1); + } + discountList.setType(type); + } + return discountLists; + } + @Override + public List<DiscountList> queryDiscountList(QueryDiscountList queryDiscountList) { + Page<DiscountList> discountListPage = new Page<>(queryDiscountList.getOffset(), queryDiscountList.getLimit()); + List<Integer> ids = queryDiscountList.getIds(); + if(ids.size()==0){ + ids.add(-1); + queryDiscountList.setIds(ids); + } + List<DiscountList> discountLists = this.baseMapper.queryDiscountList(discountListPage, queryDiscountList.getPCode(), queryDiscountList.getCCode(), queryDiscountList.getName(), queryDiscountList.getType(), queryDiscountList.getIds()); + for (DiscountList discountList : discountLists) { + List<TCoursePackageDiscount> tCoursePackageDiscounts = this.baseMapper.selectList(new LambdaQueryWrapper<TCoursePackageDiscount>().eq(TCoursePackageDiscount::getCoursePackageId, discountList.getCourseId()).eq(TCoursePackageDiscount::getAuditStatus,2).orderByAsc(TCoursePackageDiscount::getType)); + long count = tCoursePackageDiscounts.stream().filter(e -> e.getStatus().equals(2)).count(); + if(count>0){ + discountList.setStatus(2); + }else { + discountList.setStatus(1); + } + String type=""; + for (int i = 0; i < tCoursePackageDiscounts.size(); i++) { + if(tCoursePackageDiscounts.get(i).getType()==1){ + type += "会员折扣、"; + }else if(tCoursePackageDiscounts.get(i).getType()==3){ + type += "限时折扣、"; + }else if(tCoursePackageDiscounts.get(i).getType()==4){ + type += "赠送课时、"; + } + } + if(type.length()>0){ + type = type.substring(0,type.length()-1); + } + discountList.setType(type); + } + return discountLists; + } private static boolean isDateWithinRange(Date date, Date startTime, Date endTime) { return date.after(startTime) && date.before(endTime); -- Gitblit v1.7.1