lisy
2023-07-21 c37acfa5fd70c1d658295f5635b630d3beef7ce0
探索玩湃-门店:列表+详情+评价
2 文件已重命名
20个文件已修改
18个文件已添加
917 ■■■■■ 已修改文件
cloud-server-account/src/main/java/com/dsh/account/controller/ExploreWPController.java 46 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CourseListClient.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-account/src/main/java/com/dsh/account/feignclient/other/QuestionClient.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-account/src/main/java/com/dsh/account/feignclient/other/SiteClient.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-account/src/main/java/com/dsh/account/feignclient/other/StoreClient.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-account/src/main/java/com/dsh/account/feignclient/other/model/StoreDetailList.java 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-account/src/main/java/com/dsh/account/feignclient/other/model/StoreInfo.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-account/src/main/java/com/dsh/account/feignclient/other/model/StoreLonLatList.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-account/src/main/java/com/dsh/account/feignclient/other/model/StoreOfCitycodeResp.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-account/src/main/java/com/dsh/account/model/vo/exploreDetail/QuestionDetailsVo.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-account/src/main/java/com/dsh/account/model/vo/exploreDetail/QuestionIns.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-account/src/main/java/com/dsh/account/model/vo/exploreDetail/SiteVo.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-account/src/main/java/com/dsh/account/model/vo/exploreDetail/StoreDetailsVo.java 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-account/src/main/java/com/dsh/account/model/vo/exploreDetail/StoreOfCourseVo.java 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-account/src/main/java/com/dsh/account/service/TStudentService.java 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java 58 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-course/src/main/java/com/dsh/course/controller/CourseController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackageController.java 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-course/src/main/java/com/dsh/course/feignclient/CourseListClient.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-course/src/main/java/com/dsh/course/feignclient/model/StoreOfCourseVo.java 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/controller/AskedQuestionsController.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/controller/StoreController.java 52 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/controller/StoreEvaluationController.java 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/controller/SystemNoticeController.java 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/entity/StoreEvaluation.java 76 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/feignclient/QuestionClient.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/feignclient/SiteClient.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/feignclient/StoreClient.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/feignclient/model/SiteVo.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/feignclient/model/StoreDetailList.java 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/feignclient/model/StoreInfo.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/feignclient/model/StoreLonLatList.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/feignclient/model/StoreOfCitycodeResp.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/mapper/StoreEvaluationMapper.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/model/StoreDetailsVo.java 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/model/StoreOfCourseVo.java 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/service/StoreEvaluationService.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/java/com/dsh/other/service/impl/StoreEvaluationServiceImpl.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-other/src/main/resources/mapper/StoreEvaluationMapper.xml 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-account/src/main/java/com/dsh/account/controller/ExploreWPController.java
@@ -1,11 +1,12 @@
package com.dsh.account.controller;
import com.dsh.account.feignclient.other.model.StoreDetailList;
import com.dsh.account.feignclient.other.model.StoreInfo;
import com.dsh.account.feignclient.other.model.SysNotice;
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.service.TStudentService;
import com.dsh.account.util.ResultUtil;
import io.swagger.annotations.ApiImplicitParam;
@@ -33,7 +34,7 @@
    @ApiImplicitParams({
            @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
    })
    public ResultUtil<ExploreDatasVo> indexOfExploreDetail(LonLatRequest llrequest){
    public ResultUtil<List<StoreInfo>> indexOfExploreDetail(LonLatRequest llrequest){
        try {
            return ResultUtil.success(tsService.queryIndexOfExplores(llrequest));
        }catch (Exception e){
@@ -70,7 +71,7 @@
    @ResponseBody
    @PostMapping("/base/exploreWP/exceptionList")
    @ApiOperation(value = "联系客服-常见问题列表", tags = {"APP-探索玩湃"})
    public ResultUtil<QuestionDetailsVo> queryFrequentlyAskedQuestionDetails(){
    public ResultUtil<List<QuestionIns>> queryFrequentlyAskedQuestionDetails(){
        try {
            return ResultUtil.success(tsService.queryQuestionData());
        }catch (Exception e){
@@ -105,4 +106,39 @@
    }
    @ResponseBody
    @PostMapping("/base/exploreWP/storeList")
    @ApiOperation(value = "联系客服-门店列表", tags = {"APP-探索玩湃"})
    @ApiImplicitParams({
            @ApiImplicitParam(value = "距离数值", name = "space", required = true, dataType = "int"),
            @ApiImplicitParam(value = "城市code", name = "space", required = true, dataType = "string"),
            @ApiImplicitParam(value = "纬度", name = "latitude", required = true, dataType = "string"),
            @ApiImplicitParam(value = "经度", name = "longitude", required = true, dataType = "string"),
    })
    public ResultUtil<List<StoreDetailList>> getStoreListCon(Integer space,String cityCode,String latitude,String longitude){
        try {
            return ResultUtil.success(tsService.queryStoreList(space,cityCode,latitude,longitude));
        }catch (Exception e){
            return ResultUtil.runErr();
        }
    }
    @ResponseBody
    @PostMapping("/base/exploreWP/storeDetail")
    @ApiOperation(value = "联系客服-门店详情", tags = {"APP-探索玩湃"})
    @ApiImplicitParams({
            @ApiImplicitParam(value = "门店id", name = "storeId", required = true, dataType = "int"),
    })
    public ResultUtil<StoreDetailsVo> getStoreDetails(Integer storeId){
        try {
            return ResultUtil.success(tsService.getStoreDetail(storeId));
        }catch (Exception e){
            return ResultUtil.runErr();
        }
    }
}
cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CourseListClient.java
New file
@@ -0,0 +1,21 @@
package com.dsh.account.feignclient.course;
import com.dsh.account.model.vo.classDetails.ExerciseVideo;
import com.dsh.account.model.vo.exploreDetail.StoreOfCourseVo;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
@FeignClient(value = "mb-cloud-course")
public interface CourseListClient {
    @PostMapping("/base/cancelSource/queryList")
    List<ExerciseVideo> queryStuCourseAfterVideos(@RequestBody List<Integer> courseIds);
    @PostMapping("/base/coursePack/courseList")
    List<StoreOfCourseVo> getStoreOfCourseList(@RequestBody Integer storeId);
}
cloud-server-account/src/main/java/com/dsh/account/feignclient/other/QuestionClient.java
@@ -1,17 +1,18 @@
package com.dsh.account.feignclient.other;
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 org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
@FeignClient(value = "mb-cloud-other")
public interface QuestionClient {
    @PostMapping("/base/notice/queryQuestionDetails")
    QuestionDetailsVo getSysQuestionDetails();
    List<QuestionIns> getSysQuestionDetails();
    @PostMapping("/base/notice/queryQuestion")
    QuestionIns getSysQuestionBuId(@RequestParam("quesId") Integer quesId);
cloud-server-account/src/main/java/com/dsh/account/feignclient/other/SiteClient.java
@@ -1,6 +1,7 @@
package com.dsh.account.feignclient.other;
import com.dsh.account.feignclient.other.model.SiteBooking;
import com.dsh.account.model.vo.exploreDetail.SiteVo;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@@ -19,4 +20,7 @@
    List<SiteBooking> wanpaiGoldSiteBookingList(@RequestBody Integer appUserId);
    @PostMapping("/base/site/getNewAddSiteList")
    List<SiteVo> getAppUserSiteList();
}
cloud-server-account/src/main/java/com/dsh/account/feignclient/other/StoreClient.java
@@ -35,7 +35,15 @@
    @PostMapping("/base/protocol/storeDetail/nearbyStore")
    List<StoreInfo> getAllNearbyStoreList(@RequestBody GetAllNearbyStoreList getAllNearbyStoreList);
    @PostMapping("/base/protocol/storeDetail/citycodeLoLa")
    List<StoreDetailList> getQueryStoreList(@RequestBody StoreOfCitycodeResp citycodeResp);
    @PostMapping("/base/protocol/storeDetail/storeOfLonLat")
    List<StoreLonLatList> getAllStoreLonLats(@RequestBody GetAllNearbyStoreList getAllNearbyStoreList);
    /**
     * 根据门店id获取门店信息
     * @param id
     * @return
     */
    @PostMapping("/store/queryStoreById")
    Store queryStoreById(Integer id);
}
cloud-server-account/src/main/java/com/dsh/account/feignclient/other/model/StoreDetailList.java
New file
@@ -0,0 +1,33 @@
package com.dsh.account.feignclient.other.model;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class StoreDetailList {
    @ApiModelProperty(value = "门店id")
    private Integer storeId;
    @ApiModelProperty(value = "门店封面图")
    private String storeImg;
    @ApiModelProperty(value = "门店名称")
    private String storeName;
    @ApiModelProperty(value = "门店详细地址")
    private String storeAddress;
    @ApiModelProperty(value = "门店联系电话")
    private String storePhone;
    @ApiModelProperty(value = "门店距离当前位置 的距离")
    private long storeDistance;
    @ApiModelProperty(value = "门店营业时间范围")
    private String storeTime;
    @ApiModelProperty(value = "门店信息")
    private String storeInfo;
}
cloud-server-account/src/main/java/com/dsh/account/feignclient/other/model/StoreInfo.java
@@ -22,4 +22,10 @@
    @ApiModelProperty(value = "门店详细地址")
    private String storeAddr;
    @ApiModelProperty(value = "经度")
    String longitude;
    @ApiModelProperty(value = "纬度")
    String latitude;
}
cloud-server-account/src/main/java/com/dsh/account/feignclient/other/model/StoreLonLatList.java
@@ -15,5 +15,8 @@
    @ApiModelProperty(value = "纬度")
    String latitude;
    @ApiModelProperty(value = "门店标题")
    String title;
}
cloud-server-account/src/main/java/com/dsh/account/feignclient/other/model/StoreOfCitycodeResp.java
New file
@@ -0,0 +1,22 @@
package com.dsh.account.feignclient.other.model;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class StoreOfCitycodeResp {
    @ApiModelProperty(value = "距离")
    private Integer space;
    @ApiModelProperty(value = "城市code")
    private String cityCode;
    @ApiModelProperty(value = "纬度")
    private  String latitude;
    @ApiModelProperty(value = "经度")
    private String longitude;
}
cloud-server-account/src/main/java/com/dsh/account/model/vo/exploreDetail/QuestionDetailsVo.java
File was renamed from cloud-server-account/src/main/java/com/dsh/account/model/vo/exploreDetails/QuestionDetailsVo.java
@@ -1,4 +1,4 @@
package com.dsh.account.model.vo.exploreDetails;
package com.dsh.account.model.vo.exploreDetail;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
cloud-server-account/src/main/java/com/dsh/account/model/vo/exploreDetail/QuestionIns.java
File was renamed from cloud-server-account/src/main/java/com/dsh/account/model/vo/exploreDetails/QuestionIns.java
@@ -1,4 +1,4 @@
package com.dsh.account.model.vo.exploreDetails;
package com.dsh.account.model.vo.exploreDetail;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
cloud-server-account/src/main/java/com/dsh/account/model/vo/exploreDetail/SiteVo.java
New file
@@ -0,0 +1,24 @@
package com.dsh.account.model.vo.exploreDetail;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class SiteVo {
    @ApiModelProperty(value = "场地id")
    private Integer siteId;
    @ApiModelProperty(value = "场地名称")
    private String siteName;
    @ApiModelProperty(value = "场地类型:足球场")
    private String siteType;
    @ApiModelProperty(value = "预约时间段")
    private String siteTime;
    @ApiModelProperty(value = "价格")
    private double price;
}
cloud-server-account/src/main/java/com/dsh/account/model/vo/exploreDetail/StoreDetailsVo.java
New file
@@ -0,0 +1,45 @@
package com.dsh.account.model.vo.exploreDetail;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@Data
public class StoreDetailsVo {
    @ApiModelProperty(value = "门店图片数组")
    private List<String> images;
    @ApiModelProperty(value = "门店id")
    private Integer storeId;
    @ApiModelProperty(value = "门店名称")
    private String storeName;
    @ApiModelProperty(value = "门店经度")
    private String lon;
    @ApiModelProperty(value = "门店纬度")
    private String lat;
    @ApiModelProperty(value = "电话号码")
    private String phone;
    @ApiModelProperty(value = "门店地址")
    private String storeAddress;
    @ApiModelProperty(value = "门店营业时间段")
    private String storeTime;
    @ApiModelProperty(value = "门店信息")
    private String storeInfo;
    @ApiModelProperty(value = "场地列表")
    private List<SiteVo> venueList;
    @ApiModelProperty(value = "课程列表")
    private List<StoreOfCourseVo> courseVoList;
}
cloud-server-account/src/main/java/com/dsh/account/model/vo/exploreDetail/StoreOfCourseVo.java
New file
@@ -0,0 +1,35 @@
package com.dsh.account.model.vo.exploreDetail;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * @author zhibing.pu
 * @date 2023/6/24 17:34
 */
@Data
@ApiModel
public class StoreOfCourseVo {
    @ApiModelProperty("课程id")
    private Integer courseId;
    @ApiModelProperty("课程名称+门店名称")
    private String name;
    @ApiModelProperty("封面图")
    private String coverDrawing;
    @ApiModelProperty("上课时间")
    private String classStartTime;
    @ApiModelProperty("已报名人数")
    private Integer applicantsNumber;
    @ApiModelProperty("包含课时数")
    private Integer classHours;
    @ApiModelProperty("价格")
    private Double originalPrice;
}
cloud-server-account/src/main/java/com/dsh/account/service/TStudentService.java
@@ -3,16 +3,17 @@
import com.baomidou.mybatisplus.extension.service.IService;
import com.dsh.account.entity.TStudent;
import com.dsh.account.feignclient.competition.model.PurchaseRecordVo;
import com.dsh.account.feignclient.other.model.StoreDetailList;
import com.dsh.account.feignclient.other.model.StoreInfo;
import com.dsh.account.feignclient.other.model.SysNotice;
import com.dsh.account.model.vo.classDetails.AppointmentRecordVo;
import com.dsh.account.model.vo.classDetails.ClasspaymentRequest;
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;
@@ -50,7 +51,7 @@
    /**
     * 查询常见问题列表
     */
    QuestionDetailsVo queryQuestionData();
    List<QuestionIns> queryQuestionData();
    /**
     * 查询常见问题详情
@@ -65,7 +66,7 @@
    /**
     * 查询探索页面首页
     */
    ExploreDatasVo queryIndexOfExplores(LonLatRequest llrequest);
    List<StoreInfo> queryIndexOfExplores(LonLatRequest llrequest);
    /**
     * 切换学员
@@ -86,4 +87,14 @@
    ResultUtil cancelReservationOfCourse( Integer courseStuRecordId);
    /**
     *
     * @param space 距离
     * @param cityCode 城市code
     * @return
     */
    List<StoreDetailList> queryStoreList(Integer space,String cityCode,String latitude,String longitude);
    StoreDetailsVo getStoreDetail(Integer storeId);
}
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
@@ -595,5 +593,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;
    }
}
cloud-server-course/src/main/java/com/dsh/course/controller/CourseController.java
@@ -62,7 +62,7 @@
    @PostMapping("/course/queryList")
    @PostMapping("/base/course/queryList")
    public List<ExerciseVideo> queryStuCourseAfterVideos(@RequestBody List<Integer> courseIds){
        List<ExerciseVideo> videos = new ArrayList<>();
        List<TCourse> list = courseService.list(new QueryWrapper<TCourse>()
cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackageController.java
@@ -1,9 +1,17 @@
package com.dsh.course.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.dsh.course.entity.CoursePackagePaymentConfig;
import com.dsh.course.entity.TCoursePackage;
import com.dsh.course.entity.TCoursePackagePayment;
import com.dsh.course.feignclient.model.StoreOfCourseVo;
import com.dsh.course.feignclient.other.StoreClient;
import com.dsh.course.feignclient.other.model.Store;
import com.dsh.course.model.vo.response.Details;
import com.dsh.course.model.vo.response.ExchangeCoursePackageResponse;
import com.dsh.course.service.ICoursePackagePaymentConfigService;
import com.dsh.course.service.TCoursePackageDiscountService;
import com.dsh.course.service.TCoursePackagePaymentService;
import com.dsh.course.service.TCoursePackageService;
import com.dsh.course.util.ResultUtil;
import com.dsh.course.util.TokenUtil;
@@ -13,6 +21,9 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
/**
@@ -29,6 +40,15 @@
    @Autowired
    private TCoursePackageDiscountService tcpdService;
    @Resource
    private StoreClient storeClient;
    @Resource
    private TCoursePackagePaymentService tcppmenService;
    @Resource
    private ICoursePackagePaymentConfigService icppconfigService;
    @Autowired
@@ -96,4 +116,40 @@
        }
    }
    @ResponseBody
    @PostMapping("/base/coursePack/courseList")
    public List<StoreOfCourseVo> getStoreOfCourseList(@RequestBody Integer storeId){
        List<StoreOfCourseVo> courseVoList = new ArrayList<>();
        Store store = storeClient.queryStoreById(storeId);
        List<TCoursePackage> list = coursePackageService.list(new QueryWrapper<TCoursePackage>()
                .eq("storeId", storeId)
                .eq("auditStatus",2)
                .eq("state",1));
        if (list.size() >  0){
            for (TCoursePackage coursePackage : list) {
                int count = tcppmenService.count(new QueryWrapper<TCoursePackagePayment>()
                        .eq("coursePackageId",coursePackage.getId()));
                StoreOfCourseVo courseVo = new StoreOfCourseVo();
                courseVo.setCourseId(coursePackage.getId());
                courseVo.setName(coursePackage.getName()+"(" + store.getName() + ")");
                courseVo.setClassStartTime(coursePackage.getClassStartTime() +"-"+ coursePackage.getClassEndTime());
                courseVo.setApplicantsNumber(count);
                List<CoursePackagePaymentConfig> list1 = icppconfigService.list(new QueryWrapper<CoursePackagePaymentConfig>()
                        .eq("coursePackageId",coursePackage.getId()));
//                取价格最低的课时
                CoursePackagePaymentConfig minConfig = list1.stream()
                        .min(Comparator.comparingDouble(CoursePackagePaymentConfig::getCashPayment))
                        .orElse(null);
                if (minConfig != null){
                    courseVo.setClassHours(minConfig.getClassHours());
                    courseVo.setOriginalPrice(minConfig.getCashPayment());
                }
                courseVoList.add(courseVo);
            }
        }
        return courseVoList;
    }
}
cloud-server-course/src/main/java/com/dsh/course/feignclient/CourseListClient.java
@@ -2,6 +2,7 @@
import com.dsh.course.feignclient.model.ExerciseVideo;
import com.dsh.course.feignclient.model.StoreOfCourseVo;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@@ -11,6 +12,10 @@
@FeignClient(value = "mb-cloud-course")
public interface CourseListClient {
    @PostMapping("/course/queryList")
    @PostMapping("/base/cancelSource/queryList")
    List<ExerciseVideo> queryStuCourseAfterVideos(@RequestBody List<Integer> courseIds);
    @PostMapping("/base/coursePack/courseList")
    List<StoreOfCourseVo> getStoreOfCourseList(@RequestBody Integer storeId);
}
cloud-server-course/src/main/java/com/dsh/course/feignclient/model/StoreOfCourseVo.java
New file
@@ -0,0 +1,35 @@
package com.dsh.course.feignclient.model;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * @author zhibing.pu
 * @date 2023/6/24 17:34
 */
@Data
@ApiModel
public class StoreOfCourseVo {
    @ApiModelProperty("课程id")
    private Integer courseId;
    @ApiModelProperty("课程名称+门店名称")
    private String name;
    @ApiModelProperty("封面图")
    private String coverDrawing;
    @ApiModelProperty("上课时间")
    private String classStartTime;
    @ApiModelProperty("已报名人数")
    private Integer applicantsNumber;
    @ApiModelProperty("包含课时数")
    private Integer classHours;
    @ApiModelProperty("价格")
    private Double originalPrice;
}
cloud-server-other/src/main/java/com/dsh/other/controller/AskedQuestionsController.java
@@ -26,8 +26,7 @@
    @PostMapping("/base/notice/queryQuestionDetails")
    public QuestionDetailsVo getSysQuestionDetails(){
        QuestionDetailsVo notices = new QuestionDetailsVo();
    public List<QuestionIns> getSysQuestionDetails(){
        List<QuestionIns> sysS = new ArrayList<>();
        List<FrequentlyAskedQuestions> list = faqService.list(new QueryWrapper<FrequentlyAskedQuestions>()
                .eq("state", 1)
@@ -40,9 +39,8 @@
                notice.setQuesContents(noList.getAnswer());
                sysS.add(notice);
            });
            notices.setSysS(sysS);
        }
        return notices;
        return sysS;
    }
cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java
@@ -3,8 +3,10 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.dsh.other.entity.Site;
import com.dsh.other.entity.SiteBooking;
import com.dsh.other.entity.SiteType;
import com.dsh.other.feignclient.activity.UserCouponClient;
import com.dsh.other.feignclient.activity.model.UserCoupon;
import com.dsh.other.feignclient.model.SiteVo;
import com.dsh.other.model.*;
import com.dsh.other.service.ISiteBookingService;
import com.dsh.other.service.ISiteService;
@@ -393,4 +395,26 @@
    }
    @PostMapping("/base/site/getNewAddSiteList")
    public List<SiteVo> getAppUserSiteList(){
        List<SiteVo> siteVos = new ArrayList<>();
        List<Site> list = siteService.list(new QueryWrapper<Site>()
                .orderByDesc("insertTime"));
        if (list.size() > 0 ){
            for (Site site : list) {
                SiteVo vo = new SiteVo();
                vo.setSiteId(site.getId());
                vo.setSiteName(site.getName());
                vo.setSiteTime(site.getAppointmentStartTime() + "-" + site.getAppointmentEndTime());
                SiteType byId = siteTypeService.getById(site.getSiteTypeId());
                vo.setSiteType(byId.getName());
                vo.setPrice(site.getCashPrice());
                siteVos.add(vo);
            }
        }
        return siteVos;
    }
}
cloud-server-other/src/main/java/com/dsh/other/controller/StoreController.java
@@ -4,13 +4,11 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.dsh.other.entity.Store;
import com.dsh.other.feignclient.model.*;
import com.dsh.other.model.BaseVo;
import com.dsh.other.model.ProvinceAndCityVo;
import com.dsh.other.model.QueryStoreList;
import com.dsh.other.model.StoreFreeBenefitVo;
import com.dsh.other.model.*;
import com.dsh.other.service.StoreService;
import com.dsh.other.util.GDMapGeocodingUtil;
import com.dsh.other.util.ResultUtil;
import com.dsh.other.util.ToolUtil;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
@@ -70,6 +68,8 @@
                info.setStoreImg(store.getRealPicture());
                info.setDistance(Long.parseLong(distanceTOKilometer));
                info.setStoreAddr(store.getAddress());
                info.setLatitude(storeLat);
                info.setLongitude(storeLon);
                storeInfos.add(info);
            }
            Comparator<StoreInfo> distanceComparator = new Comparator<StoreInfo>() {
@@ -98,28 +98,34 @@
    }
    @PostMapping("/base/protocol/storeDetail/storeOfLonLat")
    public List<StoreLonLatList> getAllStoreLonLats(@RequestBody GetAllNearbyStoreList list ){
        List<StoreLonLatList> storeInfos = new ArrayList<>();
        try {
            Map<String, String> geocode = gdMapGeocodingUtil.geocode(list.getLongitude(), list.getLatitude());
            String cityCode = geocode.get("cityCode");
            List<Store> storeList = storeService.list(new QueryWrapper<Store>()
                    .eq("cityCode",cityCode));
            if (storeList.size() > 0){
                for (Store store : storeList) {
                    StoreLonLatList latList = new StoreLonLatList();
                    latList.setStoreId(store.getId());
                    latList.setLongitude(store.getLon());
                    latList.setLatitude(store.getLat());
                    storeInfos.add(latList);
    @PostMapping("/base/protocol/storeDetail/citycodeLoLa")
    public List<StoreDetailList> getQueryStoreList(@RequestBody StoreOfCitycodeResp citycodeResp){
        List<StoreDetailList> detailLists = new ArrayList<>();
        List<Store> list = storeService.list(new QueryWrapper<Store>()
                .eq("state",1 )
                .eq("cityCode",citycodeResp.getCityCode()));
        if (list.size() > 0 ){
            for (Store store : list) {
                String current = citycodeResp.getLongitude() +","+citycodeResp.getLatitude();
                String result = store.getLon()+","+store.getLat();
                String distanceTOKilometer = gdMapGeocodingUtil.getDistanceTOKilometer(current, result);
                long l = Long.parseLong(distanceTOKilometer);
                if (ToolUtil.isNotEmpty(citycodeResp.getSpace()) && l > citycodeResp.getSpace()){
                    continue;
                }
                StoreDetailList detailList = new StoreDetailList();
                detailList.setStoreId(store.getId());
                detailList.setStoreImg(store.getCoverDrawing());
                detailList.setStoreName(store.getName());
                detailList.setStoreAddress(store.getAddress());
                detailList.setStorePhone(store.getPhone());
                detailList.setStoreDistance(l);
                detailList.setStoreTime(store.getStartTime() + "-" + store.getEndTime());
                detailList.setStoreInfo(store.getIntroduce());
                detailLists.add(detailList);
            }
        }catch (Exception e){
            e.printStackTrace();
        }
        return storeInfos;
        return detailLists;
    }
cloud-server-other/src/main/java/com/dsh/other/controller/StoreEvaluationController.java
New file
@@ -0,0 +1,62 @@
package com.dsh.other.controller;
import com.dsh.other.entity.StoreEvaluation;
import com.dsh.other.model.StoreDetailsVo;
import com.dsh.other.service.StoreEvaluationService;
import com.dsh.other.util.ResultUtil;
import com.dsh.other.util.TokenUtil;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
@RestController
@RequestMapping("")
public class StoreEvaluationController {
    @Resource
    private StoreEvaluationService evaluationService;
    @Resource
    private TokenUtil tokenUtil;
    @ResponseBody
    @PostMapping("/base/storeEvaluation/saveEvaluation")
    @ApiOperation(value = "联系客服-门店评价", tags = {"APP-探索玩湃"})
    @ApiImplicitParams({
            @ApiImplicitParam(value = "门店id", name = "storeId", required = true, dataType = "int"),
    })
    public ResultUtil getStoreDetails(Integer storeId, String content, double score, String imgs){
        try {
            Integer uid = tokenUtil.getUserIdFormRedis();
            if(null == uid){
                return ResultUtil.tokenErr();
            }
            StoreEvaluation storeEvaluation = new StoreEvaluation();
            storeEvaluation.setAppUserId(uid);
            storeEvaluation.setStoreId(storeId);
            storeEvaluation.setScore(score);
            storeEvaluation.setContent(content);
            storeEvaluation.setImgs(imgs);
            storeEvaluation.setState(1);
            storeEvaluation.setInsertTime(new Date());
            evaluationService.save(storeEvaluation);
            return ResultUtil.success();
        }catch (Exception e){
            return ResultUtil.runErr();
        }
    }
}
cloud-server-other/src/main/java/com/dsh/other/controller/SystemNoticeController.java
@@ -12,6 +12,7 @@
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
@@ -68,7 +69,9 @@
        List<String> tellS = new ArrayList<>();
        List<Phone> list = phoneService.list();
        if (list.size() > 0 ){
            tellS = list.stream().map(Phone::getPhone).collect(Collectors.toList());
            String phone = list.get(0).getPhone();
            String[] split = phone.split(",");
            tellS = Arrays.asList(split);
        }
        return tellS;
cloud-server-other/src/main/java/com/dsh/other/entity/StoreEvaluation.java
New file
@@ -0,0 +1,76 @@
package com.dsh.other.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.util.Date;
/**
 * <p>
 *  门店评价
 * </p>
 *
 * @author jqs
 * @since 2023-06-14
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_store_evaluation")
public class StoreEvaluation extends Model<StoreEvaluation> {
    private static final long serialVersionUID = 1L;
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;
    /**
     * 评价用户id
     */
    @TableField("appUserId")
    private Integer appUserId;
    /**
     * 门店id
     */
    @TableField("storeId")
    private Integer storeId;
    /**
     * 评分
     */
    @TableField("score")
    private Double score;
    /**
     * 评价内容
     */
    @TableField("content")
    private String content;
    /**
     * 评价图片
     */
    @TableField("imgs")
    private String imgs;
    /**
     * 状态(1=正常,2=冻结,3=删除)
     */
    @TableField("state")
    private Integer state;
    /**
     * 评价时间
     */
    @TableField("insertTime")
    private Date insertTime;
    @Override
    protected Serializable pkVal() {
        return this.id;
    }
}
cloud-server-other/src/main/java/com/dsh/other/feignclient/QuestionClient.java
@@ -6,12 +6,14 @@
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
@FeignClient(value = "mb-cloud-other")
public interface QuestionClient {
    @PostMapping("/base/notice/queryQuestionDetails")
    QuestionDetailsVo getSysQuestionDetails();
    List<QuestionIns> getSysQuestionDetails();
    @PostMapping("/base/notice/queryQuestion")
    QuestionIns getSysQuestionBuId(@RequestParam("quesId") Integer quesId);
cloud-server-other/src/main/java/com/dsh/other/feignclient/SiteClient.java
@@ -1,6 +1,7 @@
package com.dsh.other.feignclient;
import com.dsh.other.entity.SiteBooking;
import com.dsh.other.feignclient.model.SiteVo;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@@ -17,4 +18,8 @@
    @PostMapping("/base/site/queryPlaypaiGoldSiteDetail")
    List<SiteBooking> wanpaiGoldSiteBookingList(@RequestBody Integer appUserId);
    @PostMapping("/base/site/getNewAddSiteList")
    List<SiteVo> getAppUserSiteList();
}
cloud-server-other/src/main/java/com/dsh/other/feignclient/StoreClient.java
@@ -20,10 +20,11 @@
    List<StoreInfo> getAllNearbyStoreList(@RequestBody GetAllNearbyStoreList list);
    @PostMapping("/base/protocol/storeDetail/storeOfLonLat")
     List<StoreLonLatList> getAllStoreLonLats(@RequestBody GetAllNearbyStoreList list);
    @PostMapping("/base/protocol/storeDetail/distanceCal")
    public long calculateDistance(@RequestBody GetDistanceVo distanceVo);
    @PostMapping("/base/protocol/storeDetail/citycodeLoLa")
    List<StoreDetailList> getQueryStoreList(@RequestBody StoreOfCitycodeResp citycodeResp);
}
cloud-server-other/src/main/java/com/dsh/other/feignclient/model/SiteVo.java
New file
@@ -0,0 +1,24 @@
package com.dsh.other.feignclient.model;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class SiteVo {
    @ApiModelProperty(value = "场地id")
    private Integer siteId;
    @ApiModelProperty(value = "场地名称")
    private String siteName;
    @ApiModelProperty(value = "场地类型:足球场")
    private String siteType;
    @ApiModelProperty(value = "预约时间段")
    private String siteTime;
    @ApiModelProperty(value = "价格")
    private double price;
}
cloud-server-other/src/main/java/com/dsh/other/feignclient/model/StoreDetailList.java
New file
@@ -0,0 +1,33 @@
package com.dsh.other.feignclient.model;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class StoreDetailList {
    @ApiModelProperty(value = "门店id")
    private Integer storeId;
    @ApiModelProperty(value = "门店封面图")
    private String storeImg;
    @ApiModelProperty(value = "门店名称")
    private String storeName;
    @ApiModelProperty(value = "门店详细地址")
    private String storeAddress;
    @ApiModelProperty(value = "门店联系电话")
    private String storePhone;
    @ApiModelProperty(value = "门店距离当前位置 的距离")
    private long storeDistance;
    @ApiModelProperty(value = "门店营业时间范围")
    private String storeTime;
    @ApiModelProperty(value = "门店信息")
    private String storeInfo;
}
cloud-server-other/src/main/java/com/dsh/other/feignclient/model/StoreInfo.java
@@ -22,4 +22,10 @@
    @ApiModelProperty(value = "门店详细地址")
    private String storeAddr;
    @ApiModelProperty(value = "经度")
    private String longitude;
    @ApiModelProperty(value = "纬度")
    private String latitude;
}
cloud-server-other/src/main/java/com/dsh/other/feignclient/model/StoreLonLatList.java
@@ -15,5 +15,8 @@
    @ApiModelProperty(value = "纬度")
    String latitude;
    @ApiModelProperty(value = "门店标题")
    String title;
}
cloud-server-other/src/main/java/com/dsh/other/feignclient/model/StoreOfCitycodeResp.java
New file
@@ -0,0 +1,22 @@
package com.dsh.other.feignclient.model;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class StoreOfCitycodeResp {
    @ApiModelProperty(value = "距离")
    private Integer space;
    @ApiModelProperty(value = "城市code")
    private String cityCode;
    @ApiModelProperty(value = "纬度")
    private  String latitude;
    @ApiModelProperty(value = "经度")
    private String longitude;
}
cloud-server-other/src/main/java/com/dsh/other/mapper/StoreEvaluationMapper.java
New file
@@ -0,0 +1,18 @@
package com.dsh.other.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.dsh.other.entity.StoreConfig;
import com.dsh.other.entity.StoreEvaluation;
/**
 * <p>
 * 门店基础配置 Mapper 接口
 * </p>
 *
 * @author jqs
 * @since 2023-06-14
 */
public interface StoreEvaluationMapper extends BaseMapper<StoreEvaluation> {
}
cloud-server-other/src/main/java/com/dsh/other/model/StoreDetailsVo.java
New file
@@ -0,0 +1,56 @@
package com.dsh.other.model;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@Data
public class StoreDetailsVo {
    @ApiModelProperty(value = "门店图片数组")
    private List<String> images;
    @ApiModelProperty(value = "门店id")
    private Integer storeId;
    @ApiModelProperty(value = "门店名称")
    private String storeName;
    @ApiModelProperty(value = "门店地址")
    private String storeAddress;
    @ApiModelProperty(value = "门店营业时间段")
    private String storeTime;
    @ApiModelProperty(value = "门店信息")
    private String storeInfo;
    @ApiModelProperty(value = "场地列表")
    private List<Site> venueList;
    @ApiModelProperty(value = "课程列表")
    private List<StoreOfCourseVo> courseVoList;
    @Data
    public static class Site{
        @ApiModelProperty(value = "场地id")
        private Integer siteId;
        @ApiModelProperty(value = "场地名称")
        private String siteName;
        @ApiModelProperty(value = "场地类型:足球场")
        private String siteType;
        @ApiModelProperty(value = "预约时间段")
        private String siteTime;
        @ApiModelProperty(value = "价格")
        private double price;
    }
}
cloud-server-other/src/main/java/com/dsh/other/model/StoreOfCourseVo.java
New file
@@ -0,0 +1,35 @@
package com.dsh.other.model;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * @author zhibing.pu
 * @date 2023/6/24 17:34
 */
@Data
@ApiModel
public class StoreOfCourseVo {
    @ApiModelProperty("课程id")
    private Integer courseId;
    @ApiModelProperty("课程名称+门店名称")
    private String name;
    @ApiModelProperty("封面图")
    private String coverDrawing;
    @ApiModelProperty("上课时间")
    private String classStartTime;
    @ApiModelProperty("已报名人数")
    private Integer applicantsNumber;
    @ApiModelProperty("包含课时数")
    private Integer classHours;
    @ApiModelProperty("价格")
    private Double originalPrice;
}
cloud-server-other/src/main/java/com/dsh/other/service/StoreEvaluationService.java
New file
@@ -0,0 +1,22 @@
package com.dsh.other.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.dsh.other.entity.Store;
import com.dsh.other.entity.StoreEvaluation;
import com.dsh.other.model.BaseVo;
import com.dsh.other.model.ProvinceAndCityVo;
import java.util.List;
/**
 * <p>
 * 门店信息 服务类
 * </p>
 *
 * @author jqs
 * @since 2023-06-14
 */
public interface StoreEvaluationService extends IService<StoreEvaluation> {
}
cloud-server-other/src/main/java/com/dsh/other/service/impl/StoreEvaluationServiceImpl.java
New file
@@ -0,0 +1,12 @@
package com.dsh.other.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dsh.other.entity.StoreEvaluation;
import com.dsh.other.mapper.StoreEvaluationMapper;
import com.dsh.other.service.StoreEvaluationService;
import org.springframework.stereotype.Service;
@Service
public class StoreEvaluationServiceImpl extends ServiceImpl<StoreEvaluationMapper, StoreEvaluation> implements StoreEvaluationService {
}
cloud-server-other/src/main/resources/mapper/StoreEvaluationMapper.xml
New file
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.dsh.other.mapper.StoreEvaluationMapper">
</mapper>