From bc4011cdbbfff9a154766936e47e08c00ccab797 Mon Sep 17 00:00:00 2001 From: liujie <liujie> Date: 星期三, 26 七月 2023 17:11:03 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java | 127 ++++++++++++++++++++++++++++++++++++----- 1 files changed, 110 insertions(+), 17 deletions(-) diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java b/cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java index d420ca5..9a11a95 100644 --- a/cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java +++ b/cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java @@ -13,13 +13,11 @@ import com.dsh.account.feignclient.competition.model.GetStuSourseList; import com.dsh.account.feignclient.competition.model.PurchaseRecordVo; import com.dsh.account.feignclient.competition.model.SaveParticipant; -import com.dsh.account.feignclient.course.CancelListClient; -import com.dsh.account.feignclient.course.CoursePaymentClient; -import com.dsh.account.feignclient.course.CourseRecordClient; -import com.dsh.account.feignclient.course.CourseSessionNameClient; +import com.dsh.account.feignclient.course.*; import com.dsh.account.feignclient.course.model.*; import com.dsh.account.feignclient.other.NoticeClient; import com.dsh.account.feignclient.other.QuestionClient; +import com.dsh.account.feignclient.other.SiteClient; import com.dsh.account.feignclient.other.StoreClient; import com.dsh.account.feignclient.other.model.*; import com.dsh.account.mapper.CoachMapper; @@ -30,10 +28,9 @@ import com.dsh.account.model.vo.classDetails.classInsVo.ClassDetailsInsVo; import com.dsh.account.model.vo.classDetails.classInsVo.StuDetailsReq; import com.dsh.account.model.vo.classDetails.classInsVo.StuListVo; -import com.dsh.account.model.vo.exploreDetail.ExploreDatasVo; import com.dsh.account.model.vo.exploreDetail.LonLatRequest; -import com.dsh.account.model.vo.exploreDetails.QuestionDetailsVo; -import com.dsh.account.model.vo.exploreDetails.QuestionIns; +import com.dsh.account.model.vo.exploreDetail.QuestionIns; +import com.dsh.account.model.vo.exploreDetail.StoreDetailsVo; import com.dsh.account.model.vo.sourceDetail.CouponStuAvailableVo; import com.dsh.account.model.vo.sourceDetail.CourseDetailsOfContinuationResp; import com.dsh.account.model.vo.sourceDetail.RecordTimeRequest; @@ -103,6 +100,12 @@ @Autowired private PayMoneyUtil payMoneyUtil; + + @Resource + private SiteClient steClient; + + @Resource + private CourseListClient culisClient; @@ -305,7 +308,7 @@ } @Override - public QuestionDetailsVo queryQuestionData() { + public List<QuestionIns> queryQuestionData() { return quesClient.getSysQuestionDetails(); } @@ -320,16 +323,11 @@ } @Override - public ExploreDatasVo queryIndexOfExplores(LonLatRequest llrequest) { - ExploreDatasVo datasVo = new ExploreDatasVo(); + public List<StoreInfo> queryIndexOfExplores(LonLatRequest llrequest) { GetAllNearbyStoreList getAllNearbyStoreList = new GetAllNearbyStoreList(); getAllNearbyStoreList.setLongitude(llrequest.getLongitude()); getAllNearbyStoreList.setLatitude(llrequest.getLatitude()); - List<StoreInfo> allNearbyStoreList = storeClient.getAllNearbyStoreList(getAllNearbyStoreList); - List<StoreLonLatList> allStoreLonLats = storeClient.getAllStoreLonLats(getAllNearbyStoreList); - datasVo.setStoreLists(allNearbyStoreList); - datasVo.setLonLatLists(allStoreLonLats); - return datasVo; + return storeClient.getAllNearbyStoreList(getAllNearbyStoreList); } @Override @@ -565,7 +563,7 @@ } @Override - public AppointmentRecordVo getAppointmentRecords(Integer stuId, Integer appUserId) { + public AppointmentRecordVo getAppointmentRecords(Integer stuId, Integer appUserId,Integer appointStatus,Integer timeType,String search) { AppointmentRecordVo recordVo = new AppointmentRecordVo(); TStudent tStudent = this.baseMapper.selectOne(new QueryWrapper<TStudent>() .eq("id",stuId ) @@ -573,7 +571,72 @@ if (ToolUtil.isNotEmpty(tStudent)){ recordVo.setStuId(tStudent.getId()); recordVo.setStuName(tStudent.getName()); - recordVo.setAppointList(couPayClient.obtainStudentClassDetailsData(stuId)); + List<RecordAppoint> recordAppoints = couPayClient.obtainStudentClassDetailsData(stuId); + if (ToolUtil.isEmpty(appointStatus)){ + recordVo.setAppointStatus(0); + }else { + recordVo.setAppointStatus(appointStatus); + recordAppoints = recordAppoints.stream() + .filter(record -> record.getStatus().equals(appointStatus)) + .collect(Collectors.toList()); + } + if (ToolUtil.isNotEmpty(search)){ + recordVo.setAppointStatus(appointStatus); + recordAppoints = recordAppoints.stream() + .filter(record -> record.getCoursePackageName().contains(search)) + .collect(Collectors.toList()); + } + if (ToolUtil.isNotEmpty(timeType)){ + Date lastOfDate = DateUtil.getLastOfDate(); + switch (timeType){ + case 1: + Date lastWeekStartDate = DateUtil.getLastWeekStartDate(); + recordAppoints = recordAppoints.stream() + .filter(record -> { + try { + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm"); + Date time = sdf.parse(record.getTimeFrame().substring(11)); + return !time.before(lastWeekStartDate) && !time.after(lastOfDate); + } catch (ParseException e) { + return false; + } + }) + .collect(Collectors.toList()); + break; + case 2: + Date lastMonthStartDate = DateUtil.getLastMonthStartDate(); + recordAppoints = recordAppoints.stream() + .filter(record -> { + try { + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + Date time = sdf.parse(record.getTimeFrame().substring(11)); + return !time.before(lastMonthStartDate) && !time.after(lastOfDate); + } catch (ParseException e) { + return false; + } + }) + .collect(Collectors.toList()); + break; + case 3: + Date lastYearStartDate = DateUtil.getLastYearStartDate(); + recordAppoints = recordAppoints.stream() + .filter(record -> { + try { + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm"); + Date time = sdf.parse(record.getTimeFrame().substring(11)); + return !time.before(lastYearStartDate) && !time.after(lastOfDate); + } catch (ParseException e) { + return false; + } + }) + .collect(Collectors.toList()); + break; + default: + break; + + } + } + recordVo.setAppointList(recordAppoints); } return recordVo; } @@ -595,5 +658,35 @@ return null; } + @Override + public List<StoreDetailList> queryStoreList(Integer space,String cityCode,String latitude,String longitude) { + StoreOfCitycodeResp citycodeResp = new StoreOfCitycodeResp(); + citycodeResp.setSpace(space); + citycodeResp.setCityCode(cityCode); + citycodeResp.setLongitude(latitude); + citycodeResp.setLatitude(longitude); + return storeClient.getQueryStoreList(citycodeResp); + } + + @Override + public StoreDetailsVo getStoreDetail(Integer storeId) { + Store store = storeClient.queryStoreById(storeId); + StoreDetailsVo detailsVo = new StoreDetailsVo(); + String realPicture = store.getRealPicture(); + String[] split = realPicture.split(","); + detailsVo.setImages(Arrays.asList(split)); + detailsVo.setStoreId(store.getId()); + detailsVo.setStoreName(store.getName()); + detailsVo.setStoreAddress(store.getAddress()); + detailsVo.setStoreTime(store.getStartTime() + "至" +store.getEndTime()); + detailsVo.setStoreInfo(store.getIntroduce()); + detailsVo.setLon(store.getLon()); + detailsVo.setLat(store.getLat()); + detailsVo.setPhone(store.getPhone()); + detailsVo.setVenueList(steClient.getAppUserSiteList()); + detailsVo.setCourseVoList(culisClient.getStoreOfCourseList(storeId)); + return detailsVo; + } + } -- Gitblit v1.7.1