From e030255c23c7ba3e2cbad1036a810d6d72fa864f Mon Sep 17 00:00:00 2001 From: liujie <liujie> Date: 星期四, 26 十月 2023 18:04:58 +0800 Subject: [PATCH] 修改bug --- cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java | 131 +++++++++++++++++++++++++------------------ 1 files changed, 75 insertions(+), 56 deletions(-) diff --git a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java index 619ba42..12e9cf9 100644 --- a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java +++ b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java @@ -6,8 +6,10 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.alipay.api.domain.Person; +import com.alipay.api.response.AlipayTradeQueryResponse; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.dsh.course.entity.*; @@ -33,12 +35,12 @@ import com.dsh.course.model.vo.RegisterCourseVo; import com.dsh.course.model.vo.request.*; import com.dsh.course.model.vo.response.*; +import com.dsh.course.service.CoursePackageSchedulingService; import com.dsh.course.service.ICoursePackageSchedulingService; import com.dsh.course.service.TCoursePackagePaymentService; import com.dsh.course.util.*; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; -import io.swagger.models.auth.In; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpHeaders; import org.springframework.http.MediaType; @@ -49,6 +51,7 @@ import org.springframework.web.client.RestTemplate; import javax.annotation.Resource; +import javax.persistence.criteria.CriteriaBuilder; import java.math.BigDecimal; import java.math.RoundingMode; import java.text.ParseException; @@ -675,17 +678,18 @@ if(coursePackagePayment.getPayStatus() == 2){ break; } - ResultUtil<Map<String, String>> resultUtil = payMoneyUtil.queryALIOrder(code); - if(resultUtil.getCode() == 200 && coursePackagePayment.getPayStatus() == 1){ + AlipayTradeQueryResponse alipayTradeQueryResponse = payMoneyUtil.queryALIOrder(code); + + if(coursePackagePayment.getPayStatus() == 1){ /** * WAIT_BUYER_PAY(交易创建,等待买家付款)、 * TRADE_CLOSED(未付款交易超时关闭,或支付完成后全额退款)、 * TRADE_SUCCESS(交易支付成功)、 * TRADE_FINISHED(交易结束,不可退款) */ - Map<String, String> data1 = resultUtil.getData(); - String s = data1.get("tradeStatus"); - String tradeNo = data1.get("tradeNo"); +// Map<String, String> data1 = resultUtil.getData(); + String s = alipayTradeQueryResponse.getTradeStatus(); + String tradeNo = alipayTradeQueryResponse.getTradeNo(); if("TRADE_CLOSED".equals(s) || "TRADE_FINISHED".equals(s) || num == 10){ coursePackagePayment.setState(3); baseMapper1.deleteById(coursePackagePayment.getId()); @@ -728,8 +732,11 @@ } + @Override - public List<RecordAppoint> obtainStuClassDetails(Integer stuId, Integer appUserId) { + public List<RecordAppoint> obtainStuClassDetails(Integer stuId, Integer appUserId,Integer pageNum) { + + List<RecordAppoint> recordVoList = new ArrayList<>(); List<TCoursePackagePayment> tCoursePackagePayments = this.baseMapper.selectList(new QueryWrapper<TCoursePackagePayment>() .eq("studentId",stuId ) @@ -737,36 +744,77 @@ .eq("payStatus",2 ) .eq("status",1 ) .orderByDesc("insertTime")); + + List<Integer> ids = new ArrayList<>(); + for (TCoursePackagePayment tCoursePackagePayment : tCoursePackagePayments) { + ids.add(tCoursePackagePayment.getCoursePackageId()); + } SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy.MM.dd"); SimpleDateFormat format = new SimpleDateFormat("yyyy.MM.dd HH:mm"); if (tCoursePackagePayments.size() > 0 ){ - for (TCoursePackagePayment tCoursePackagePayment : tCoursePackagePayments) { - List<CoursePackageStudent> coursePackageStudent1 = cpsMapper.selectList(new QueryWrapper<CoursePackageStudent>() - .eq("coursePackageId",tCoursePackagePayment.getCoursePackageId() ) - .eq("studentId",stuId) - .eq("appUserId",appUserId) - .eq("reservationStatus",1)); - if (ToolUtil.isNotEmpty(coursePackageStudent1) && coursePackageStudent1.size() > 0){ +// int pageNum = 1; // 页码 + int pageSize = 5; // 每页记录数 + Page<CoursePackageStudent> page = new Page<>(1, pageSize); + +// for (TCoursePackagePayment tCoursePackagePayment : tCoursePackagePayments) { +// List<CoursePackageStudent> coursePackageStudent1 = cpsMapper.selectList(new QueryWrapper<CoursePackageStudent>() +// .in("coursePackageId",ids) +// .eq("studentId",stuId) +// .eq("appUserId",appUserId) +// .eq("reservationStatus",1)); + IPage<CoursePackageStudent> coursePackageStudentPage = cpsMapper.selectPage(page, new QueryWrapper<CoursePackageStudent>() + .in("coursePackageId", ids) + .eq("studentId", stuId) + .eq("appUserId", appUserId) + .eq("reservationStatus", 1)); + List<CoursePackageStudent> coursePackageStudent1 = coursePackageStudentPage.getRecords(); + + + if (ToolUtil.isNotEmpty(coursePackageStudent1) && coursePackageStudent1.size() > 0){ + TCoursePackage coursePackage = new TCoursePackage(); + Integer coursePackageId = -1; for (CoursePackageStudent coursePackageStudent : coursePackageStudent1) { RecordAppoint recordVo = new RecordAppoint(); - recordVo.setCoursePackageId(tCoursePackagePayment.getCoursePackageId()); + recordVo.setCoursePackageId(coursePackageStudent.getCoursePackageId()); - TCoursePackage coursePackage = tcpmapper.selectById(tCoursePackagePayment.getCoursePackageId()); + if (!coursePackageStudent.getCoursePackageId().equals(coursePackageId)) { + coursePackage = tcpmapper.selectById(coursePackageStudent.getCoursePackageId()); + coursePackageId = coursePackageStudent.getCoursePackageId(); + } - + recordVo.setSid(Arrays.asList(coursePackage.getStoreId())); + List<Integer> rid = stoClient.querySiteId(coursePackage.getStoreId()); + recordVo.setRid(rid); recordVo.setUserId(appUserId); recordVo.setSiteId(coursePackage.getSiteId()); - List<Integer> ids = getIds(coursePackage.getSiteId()); - recordVo.setIds(ids); + List<Integer> ids1 = getIds(coursePackage.getSiteId()); + recordVo.setIds(ids1); recordVo.setCoursePackageName(coursePackage.getName()); - recordVo.setCourseHours(tCoursePackagePayment.getClassHours()); + for (TCoursePackagePayment tCoursePackagePayment : tCoursePackagePayments) { + if (Objects.equals(coursePackageStudent.getCoursePackageId(), tCoursePackagePayment.getCoursePackageId())){ + recordVo.setCourseHours(tCoursePackagePayment.getClassHours()); + + } + } + +// recordVo.setCourseHours(tCoursePackagePayment.getClassHours()); Date date = DateUtil.getDate(); - String classStartTime = coursePackage.getClassStartTime(); - String classEndTime = coursePackage.getClassEndTime(); - recordVo.setTimeFrame(simpleDateFormat.format(date)+" "+classStartTime+"-"+classEndTime); + + CoursePackageScheduling byId = coursePackageSchedulingService.getById(coursePackageStudent.getCoursePackageSchedulingId()); +// String classStartTime = coursePackage.getClassStartTime(); +// String classEndTime = coursePackage.getClassEndTime(); + + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + String dateString1 = sdf.format(byId.getClassDate()); + String dateString2 = sdf.format(byId.getEndDate()); + + + recordVo.setTimeFrame(dateString1 + "-" + dateString2.substring(11)); + +// recordVo.setTimeFrame(simpleDateFormat.format(date)+" "+classStartTime+"-"+classEndTime); Store store = stoClient.queryStoreById(coursePackage.getStoreId()); recordVo.setStoreNameAddr(store.getName()+store.getAddress()); recordVo.setCourseStuRecordId(coursePackageStudent.getId()); @@ -775,7 +823,7 @@ List<String> integerList = Arrays.asList(split); String weekOfDate = DateTimeHelper.getWeekOfDate(new Date()); if (integerList.contains(weekOfDate)){ - String dat = simpleDateFormat.format(date) +" "+ classStartTime; + String dat = simpleDateFormat.format(date) +" "+ dateString2.substring(11); Date start = null; try { @@ -789,7 +837,7 @@ recordVo.setStatus(5); }else { CancelledClasses cancelledClasses = cacMapper.selectOne(new QueryWrapper<CancelledClasses>() - .eq("coursePackageId",tCoursePackagePayment.getCoursePackageId() )); + .eq("coursePackageId",coursePackageStudent.getCoursePackageId() )); if (ToolUtil.isNotEmpty(cancelledClasses)){ recordVo.setStatus(3); // 消课 到课状态0 旷课 @@ -812,7 +860,8 @@ } } - } +// } + return recordVoList; } public List<Integer> getIds(Integer siteId) { @@ -1047,36 +1096,6 @@ return integers; } - public static void main(String[] args) { - List<Integer> week = week("周一,周二"); - // 今天周几 - int i = cn.hutool.core.date.DateUtil.dayOfWeek(new Date())-1; - - SimpleDateFormat format = new SimpleDateFormat("MM.dd"); - - ArrayList<String> strings = new ArrayList<>(); - for (Integer integer : week) { - if(integer<i){ - // 找下一周的时间 - Calendar instance = Calendar.getInstance(); - instance.add(Calendar.DATE,7-(i-integer)); - Date time = instance.getTime(); - strings.add(format.format(time)); - - }else if(integer>i) { - Calendar instance = Calendar.getInstance(); - instance.add(Calendar.DATE,integer-i); - Date time = instance.getTime(); - strings.add(format.format(time)); - }else { - Calendar instance = Calendar.getInstance(); - instance.add(Calendar.DATE,7); - Date time = instance.getTime(); - strings.add(format.format(time)); - } - } - System.out.println(strings); - } @Override @Transactional(rollbackFor = Exception.class,propagation = Propagation.REQUIRES_NEW) public ResultUtil payCourse(PayCourseReq req,Integer userId){ -- Gitblit v1.7.1