package com.doumee.api.web; import com.doumee.biz.system.SystemDictDataBiz; import com.doumee.biz.zbom.ZbomCRMService; import com.doumee.biz.zbom.model.zhongtai.*; import com.doumee.biz.zbom.model.zhongtai.response.*; import com.doumee.config.annotation.LoginRequired; import com.doumee.config.annotation.UserLoginRequired; import com.doumee.core.annotation.trace.Trace; import com.doumee.core.model.ApiResponse; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Constants; import com.doumee.core.wx.SendWxMessage; import com.doumee.dao.business.model.*; import com.doumee.dao.web.reqeust.*; import com.doumee.dao.web.response.AccountResponse; import com.doumee.dao.web.response.BjParamConfigResponse; import com.doumee.service.business.*; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.checkerframework.checker.units.qual.A; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.imageio.ImageIO; import javax.servlet.http.HttpServletResponse; import javax.validation.Valid; import java.beans.Customizer; import java.io.InputStream; import java.util.List; import java.util.Objects; /** * Created by IntelliJ IDEA. * * @Author : Rk * @create 2024/7/10 14:03 */ @Api(tags = "【C端小程序】用户业务") @Trace(exclude = true) @RestController @RequestMapping("/web/customer") @Slf4j public class CustomerApi extends ApiController{ @Autowired private MemberService memberService; @Autowired private BjParamService bjParamService; @Autowired private CustomerService customerService; @Autowired private GetZhongTaiDataService getZhongTaiDataService; @Autowired private ShopService shopService; @Autowired private UsersService usersService; @Autowired private ZbomCRMService zbomCRMService; @Autowired private CustomerUserService customerUserService; @Autowired private SystemDictDataBiz systemDictDataBiz; @Autowired private CustomerLogService customerLogService; @Autowired private NewsService newsService; @Autowired private ActionsService actionsService; @ApiOperation(value = "客户端小程序登陆", notes = "客户端小程序") @GetMapping("/wxLoginCustomer") @ApiImplicitParams({ @ApiImplicitParam(paramType = "query", dataType = "String", name = "code", value = "微信code", required = true), @ApiImplicitParam(paramType = "query", dataType = "String", name = "userId", value = "导购主键", required = false), }) public ApiResponse wxLoginCustomer(@RequestParam String code,String userId) { return ApiResponse.success(memberService.wxLogin(code,userId)); } @ApiOperation(value = "test客户端小程序登陆", notes = "客户端小程序") @GetMapping("/testWxLoginCustomer") @ApiImplicitParams({ @ApiImplicitParam(paramType = "query", dataType = "String", name = "openid", value = "微信code", required = true), }) public ApiResponse testWxLoginCustomer(@RequestParam String openid) { return ApiResponse.success(memberService.testLogin(openid)); } @LoginRequired @ApiOperation(value = "获取手机号", notes = "客户端小程序") @PostMapping("/getWxMiniPhone") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true) }) public ApiResponse getWxMiniPhone(@Valid @RequestBody WxPhoneRequest wxPhoneRequest) { return ApiResponse.success("获取成功",memberService.getWxMiniPhone(wxPhoneRequest)); } @LoginRequired @ApiOperation(value = "更新个人信息", notes = "客户端小程序") @PostMapping("/editMember") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true) }) public ApiResponse editMember(@RequestBody EditMemberRequest editMemberRequest) { editMemberRequest.setId(getMemberId()); String phone = editMemberRequest.getPhone(); //同步导购绑定信息 Member member =memberService.updMemberDetail(editMemberRequest); if(StringUtils.isNotBlank(phone)){ customerUserService.syncByPhone(member); member = memberService.getMemberInfo(member.getId()); } return ApiResponse.success("更新成功",member); } @LoginRequired @ApiOperation(value = "绑定手机号信息", notes = "客户端小程序") @PostMapping("/binDingPhone") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true) }) public ApiResponse binDingPhone(@RequestBody EditMemberRequest editMemberRequest) { editMemberRequest.setId(getMemberId()); String phone =editMemberRequest.getPhone(); Member member = memberService.updMemberPhone(editMemberRequest); //同步导购绑定信息 if(StringUtils.isNotBlank(phone)){ customerUserService.syncByPhone(member); member = memberService.getMemberInfo(getMemberId()); } return ApiResponse.success("更新成功",member); } @LoginRequired @ApiOperation(value = "同步导购绑定信息", notes = "客户端小程序") @GetMapping("/syncCustomerUser") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), @ApiImplicitParam(paramType = "query", dataType = "String", name = "phone", value = "手机号信息", required = true), }) public ApiResponse syncCustomerUser(@RequestParam String phone) { if(StringUtils.isNotBlank(getLoginMemberInfo().getPhone())){ customerUserService.syncByPhone(getLoginMemberInfo()); } return ApiResponse.success("同步成功"); } @LoginRequired @ApiOperation(value = "获取个人信息", notes = "客户端小程序") @GetMapping("/getMemberInfo") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true) }) public ApiResponse getMemberInfo() { return ApiResponse.success("获取成功",memberService.getMemberInfo(getMemberId())); } @ApiOperation(value = "获取报价配置", notes = "客户端小程序") @GetMapping("/getBjParamConfig") public ApiResponse getBjParamConfig() { return ApiResponse.success(bjParamService.getBjParamConfig()); } @LoginRequired @ApiOperation(value = "装修计算器信息存储", notes = "客户端小程序") @PostMapping("/saveRenovationCalculator") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true) }) public ApiResponse saveRenovationCalculator(@RequestBody RenovationCalculatorDTO renovationCalculatorDTO) { renovationCalculatorDTO.setMemberId(getMemberId()); CustomerLog customerLog =customerService.saveRenovationCalculator(renovationCalculatorDTO); zbomCRMService.dealCustomerLogData(customerLog); return ApiResponse.success("操作成功"); } @LoginRequired @ApiOperation(value = "0元定制信息", notes = "客户端小程序") @PostMapping("/saveFreeCustomizationApply") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true) }) public ApiResponse saveFreeCustomizationApply(@RequestBody FreeCustomizationDTO freeCustomizationDTO) { freeCustomizationDTO.setMemberId(getMemberId()); CustomerLog customerLog = customerService.saveFreeCustomizationApply(freeCustomizationDTO); zbomCRMService.dealCustomerLogData(customerLog); return ApiResponse.success("操作成功"); } /* @LoginRequired @ApiOperation(value = "测试装修风格", notes = "客户端小程序") @PostMapping("/saveTestTrimStyle") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true) }) public ApiResponse saveTestTrimStyle(@RequestBody TestTrimStyleDTO testTrimStyleDTO) { testTrimStyleDTO.setMemberId(getMemberId()); CustomerLog customerLog = customerService.saveTestTrimStyle(testTrimStyleDTO); zbomCRMService.dealCustomerLogData(customerLog); return ApiResponse.success("操作成功"); }*/ @LoginRequired @ApiOperation(value = "用户注销", notes = "客户端小程序") @GetMapping("/logOff") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), }) public ApiResponse logOff() { ZTBaseRequst ztBaseRequst = memberService.logOff(getUserId(),getToken()); if(Objects.nonNull(ztBaseRequst)){ getZhongTaiDataService.userLogout(ztBaseRequst); } return ApiResponse.success("操作成功"); } @LoginRequired @ApiOperation(value = "门店列表", notes = "客户端小程序") @PostMapping("/shopPage") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), }) public ApiResponse> shopPage (@RequestBody PageWrap pageWrap) { PageData pageData = shopService.queryShopByLL(pageWrap); if(Objects.nonNull(pageWrap.getModel().getLatitude())&&Objects.nonNull(pageWrap.getModel().getLongitude())){ //更新人员经纬度信息 EditMemberRequest editMemberRequest = new EditMemberRequest(); editMemberRequest.setId(getMemberId()); editMemberRequest.setLatitude(pageWrap.getModel().getLatitude()); editMemberRequest.setLongitude(pageWrap.getModel().getLongitude()); memberService.updMemberDetail(editMemberRequest); } return ApiResponse.success(pageData); } @LoginRequired @ApiOperation(value = "门店详情", notes = "客户端小程序") @GetMapping("/shopDetail") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), @ApiImplicitParam(paramType = "query", dataType = "Long", name = "shopId", value = "门店主键", required = true) }) public ApiResponse shopDetail (@RequestParam Long shopId) { Long memberId = this.getMemberId(); return ApiResponse.success(shopService.shopDetail(shopId,memberId)); } @LoginRequired @ApiOperation("我的导购列表") @PostMapping("/myUserPage") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true) }) public ApiResponse> myUserPage (@RequestBody PageWrap pageWrap) { pageWrap.getModel().setMemberId(getMemberId()); return ApiResponse.success(usersService.findPage(pageWrap)); } @LoginRequired @ApiOperation(value = "导购详情", notes = "客户端小程序") @GetMapping("/usersDetailByIamId") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), @ApiImplicitParam(paramType = "query", dataType = "String", name = "iamId", value = "导购IAM编码", required = true) }) public ApiResponse usersDetailByIamId (@RequestParam String iamId) { return ApiResponse.success(usersService.usersDetailByIamId(iamId)); } @LoginRequired @ApiOperation(value = "获取分享小程序二维码(图片流,img标签src指定)", notes = "客户端小程序") @GetMapping("/generateImg") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true) }) public void generateImg(HttpServletResponse response) { try{ response.setHeader("Cache-Control", "no-store, no-cache"); response.setContentType("image/jpeg"); InputStream inputStream = Constants.generateWxMiniImgStream( systemDictDataBiz.queryByCode(Constants.WX_MINI_CONFIG,Constants.WX_TOKEN_CUSTOMER).getCode(),"123","" ); ImageIO.write(ImageIO.read(inputStream),"png",response.getOutputStream()); }catch (Exception e){ e.printStackTrace(); } } @LoginRequired @ApiOperation(value = "我的预约 分页查询",notes = "客户端小程序") @PostMapping("/customerLogPage") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true) }) public ApiResponse> customerLogPage(@RequestBody PageWrap pageWrap) { pageWrap.getModel().setMemberId(getMemberId()); pageWrap.getModel().setIsHiddenPhone(Constants.ZERO); return ApiResponse.success(customerLogService.findPage(pageWrap)); } @UserLoginRequired @LoginRequired @ApiOperation(value = "分类数据 - 中台", notes = "客户端小程序") @PostMapping("/getCatalogList") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true) }) public ApiResponse> getCatalogList (@RequestBody ZTCatalogListRequest ztCatalogListRequest ) { ztCatalogListRequest.setUserId(getMemberId()+""); ztCatalogListRequest.setUserType(getUserType()); List ztCatalogInfoResponseList = getZhongTaiDataService.getCatalogList(ztCatalogListRequest); return ApiResponse.success("查询成功",ztCatalogInfoResponseList); } @UserLoginRequired @LoginRequired @ApiOperation(value = "标签数据 - 中台", notes = "客户端小程序") @PostMapping("/getCataLogTagList") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true) }) public ApiResponse> getCataLogTagList(@RequestBody ZTCatalogListRequest ztCatalogListRequest ) { ztCatalogListRequest.setUserId(getMemberId()+""); ztCatalogListRequest.setUserType(getUserType()); List ztTagInfoResponseList = getZhongTaiDataService.getCataLogTagList(ztCatalogListRequest); return ApiResponse.success("查询成功",ztTagInfoResponseList); } @UserLoginRequired @LoginRequired @ApiOperation(value = "行为内容接口 - 中台", notes = "客户端小程序") @GetMapping("/actionDo") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), @ApiImplicitParam(paramType = "query", dataType = "String", name = "id", value = "内容主键", required = true), @ApiImplicitParam(paramType = "query", dataType = "String", name = "actionType", value = "行为类型:收藏:collect;取消收藏:collect_cancel;喜欢:like;取消喜欢:like_cancel;浏览:view;分享:share;下载:download", required = true), }) public ApiResponse actionDo(@RequestParam String id,@RequestParam String actionType) { getZhongTaiDataService.actionDo(getMemberId(),getUserType(),id,actionType); return ApiResponse.success("操作成功"); } @UserLoginRequired @LoginRequired @ApiOperation(value = "定制服务列表", notes = "客户端小程序") @GetMapping("/getCustomizedNewsList") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true) }) public ApiResponse> getCustomizedNewsList() { return ApiResponse.success("查询成功",newsService.getCustomizedNewsList(Constants.ONE,null,null)); } @UserLoginRequired @LoginRequired @ApiOperation(value = "定制服务详情", notes = "客户端小程序") @GetMapping("/getCustomizedNewsDetail") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), @ApiImplicitParam(paramType = "query", dataType = "Long", name = "id", value = "业务数据主键", required = true), }) public ApiResponse getCustomizedNewsDetail(@RequestParam Long id) { return ApiResponse.success("查询成功",newsService.getCustomizedNewsDetail(id)); } @UserLoginRequired @LoginRequired @ApiOperation(value = "保存推广咨询分享记录", notes = "客户端小程序") @GetMapping("/saveShareRecord") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), @ApiImplicitParam(paramType = "query", dataType = "Long", name = "id", value = "推广咨询主键", required = true), }) public ApiResponse saveShareRecord(@RequestParam Long id) { newsService.saveShareRecord(id,getMemberId()); return ApiResponse.success("操作成功"); } @LoginRequired @ApiOperation(value = "我的喜欢列表", notes = "客户端小程序") @PostMapping("/getZhongTaiCusFavorite") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true) }) public ApiResponse> getZhongTaiCusFavorite(@RequestBody ZTContentListRequest ztContentListRequest) { ztContentListRequest.setUserId(getMemberId()+""); ztContentListRequest.setUserType(getUserType()); ZTBasePageResponse ztBasePageResponse = getZhongTaiDataService.getZhongTaiCusFavorite(ztContentListRequest); return ApiResponse.success("获取成功",ztBasePageResponse); } @LoginRequired @ApiOperation(value = "轮播图列表", notes = "客户端小程序") @PostMapping("/getZhongTaiCarouselImage") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true) }) public ApiResponse> getZhongTaiCarouselImage(@RequestBody ZTContentListRequest ztContentListRequest) { ztContentListRequest.setUserId(getMemberId()+""); ztContentListRequest.setUserType(getUserType()); List ztCusCarouselImageResponseList = getZhongTaiDataService.getZhongTaiCarouselImage(ztContentListRequest); return ApiResponse.success("获取成功",ztCusCarouselImageResponseList); } @UserLoginRequired @LoginRequired @ApiOperation(value = "轮播图详情", notes = "客户端小程序") @PostMapping("/getZhongTaiCarouselImageDetail") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true) }) public ApiResponse getZhongTaiCarouselImageDetail(@RequestBody ZTDataDetailRequest ztDataDetailRequest) { ztDataDetailRequest.setUserId(getMemberId()+""); ztDataDetailRequest.setUserType(getUserType()); ZTCusCarouselImageResponse ztCusCarouselImageResponse = getZhongTaiDataService.getZhongTaiCarouselImageDetail(ztDataDetailRequest); return ApiResponse.success("获取成功",ztCusCarouselImageResponse); } @UserLoginRequired @LoginRequired @ApiOperation(value = "咨询分页列表 - 中台", notes = "客户端小程序") @PostMapping("/getZhongTaiProductNewsPage") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true) }) public ApiResponse> getZhongTaiProductNewsPage(@RequestBody ZTContentListRequest ztContentListRequest) { ztContentListRequest.setUserId(getMemberId()+""); ztContentListRequest.setUserType(getUserType()); ZTBasePageResponse ztBasePageResponse= getZhongTaiDataService.getZhongTaiProductNewsPage(ztContentListRequest); return ApiResponse.success("查询成功",ztBasePageResponse); } @UserLoginRequired @LoginRequired @ApiOperation(value = "产品分页列表 - 中台", notes = "客户端小程序") @PostMapping("/getZhongTaiProductPage") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true) }) public ApiResponse> getZhongTaiProductPage(@RequestBody ZTContentListRequest ztContentListRequest) { ztContentListRequest.setUserId(getMemberId()+""); ztContentListRequest.setUserType(getUserType()); ZTBasePageResponse ztBasePageResponse= getZhongTaiDataService.getZhongTaiProductPage(ztContentListRequest); return ApiResponse.success("查询成功",ztBasePageResponse); } @UserLoginRequired @LoginRequired @ApiOperation(value = "实景分页列表 - 中台", notes = "客户端小程序") @PostMapping("/getZhongTaiRealcasePage") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true) }) public ApiResponse> getZhongTaiRealcasePage(@RequestBody ZTContentListRequest ztContentListRequest) { ztContentListRequest.setUserId(getMemberId()+""); ztContentListRequest.setUserType(getUserType()); ZTBasePageResponse ztBasePageResponse= getZhongTaiDataService.getZhongTaiRealcasePage(ztContentListRequest); return ApiResponse.success("查询成功",ztBasePageResponse); } @UserLoginRequired @LoginRequired @ApiOperation(value = "视频分页列表 - 中台", notes = "客户端小程序") @PostMapping("/getZhongTaiVideoPage") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true) }) public ApiResponse> getZhongTaiVideoPage(@RequestBody ZTContentListRequest ztContentListRequest) { ztContentListRequest.setUserId(getMemberId()+""); ztContentListRequest.setUserType(getUserType()); ZTBasePageResponse ztBasePageResponse= getZhongTaiDataService.getZhongTaiVideoPage(ztContentListRequest); return ApiResponse.success("查询成功",ztBasePageResponse); } @UserLoginRequired @LoginRequired @ApiOperation(value = "全屋案例分页列表 - 中台", notes = "客户端小程序") @PostMapping("/getZhongTaiWholecasePage") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true) }) public ApiResponse> getZhongTaiWholecasePage(@RequestBody ZTContentListRequest ztContentListRequest) { ztContentListRequest.setUserId(getMemberId()+""); ztContentListRequest.setUserType(getUserType()); ZTBasePageResponse ztBasePageResponse= getZhongTaiDataService.getZhongTaiWholecasePage(ztContentListRequest); return ApiResponse.success("查询成功",ztBasePageResponse); } @UserLoginRequired @LoginRequired @ApiOperation(value = "志说装修分页列表 - 中台", notes = "客户端小程序") @PostMapping("/getZhongTaiZbDecoPage") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true) }) public ApiResponse> getZhongTaiZbDecoPage(@RequestBody ZTContentListRequest ztContentListRequest) { ztContentListRequest.setUserId(getMemberId()+""); ztContentListRequest.setUserType(getUserType()); ZTBasePageResponse ztBasePageResponse= getZhongTaiDataService.getZhongTaiZbDecoPage(ztContentListRequest); return ApiResponse.success("查询成功",ztBasePageResponse); } @UserLoginRequired @LoginRequired @ApiOperation(value = "全屋案例详情 - 中台", notes = "客户端小程序") @GetMapping("/getWholecaseInfo") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), @ApiImplicitParam(paramType = "query", dataType = "String", name = "id", value = "内容主键", required = true), @ApiImplicitParam(paramType = "query", dataType = "String", name = "salesId", value = "导购主键(二维码分享)", required = false), }) public ApiResponse getWholecaseInfo(@RequestParam String id,String salesId) { ZTCaseInfoResponse ztCaseInfoResponse= getZhongTaiDataService.getWholecaseInfo(id,getUserType(),getMemberId(),salesId); return ApiResponse.success("查询成功",ztCaseInfoResponse); } @UserLoginRequired @LoginRequired @GetMapping("/getProductNewsInfo") @ApiOperation(value = "产品资讯详情 - 中台", notes = "客户端小程序") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), @ApiImplicitParam(paramType = "query", dataType = "String", name = "id", value = "内容主键", required = true), @ApiImplicitParam(paramType = "query", dataType = "String", name = "salesId", value = "导购主键(二维码分享)", required = false), }) public ApiResponse getProductNewsInfo(@RequestParam String id,String salesId) { ZTProductNewsInfoResponse ztProductNewsInfoResponse= getZhongTaiDataService.getProductNewsInfo(id,getUserType(),getMemberId(),salesId); return ApiResponse.success("查询成功",ztProductNewsInfoResponse); } @UserLoginRequired @LoginRequired @ApiOperation(value = "实景案例 - 中台", notes = "客户端小程序") @GetMapping("/getRealcaseInfo") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), @ApiImplicitParam(paramType = "query", dataType = "String", name = "id", value = "内容主键", required = true), @ApiImplicitParam(paramType = "query", dataType = "String", name = "salesId", value = "导购主键(二维码分享)", required = false), }) public ApiResponse getRealcaseInfo(@RequestParam String id,String salesId) { ZTRealcaseInfoResponse ztRealcaseInfoResponse= getZhongTaiDataService.getRealcaseInfo(id,getUserType(),getMemberId(),salesId); return ApiResponse.success("查询成功",ztRealcaseInfoResponse); } @UserLoginRequired @LoginRequired @ApiOperation(value = "产品详情 - 中台", notes = "客户端小程序") @GetMapping("/getProductInfo") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), @ApiImplicitParam(paramType = "query", dataType = "String", name = "id", value = "内容主键", required = true), @ApiImplicitParam(paramType = "query", dataType = "String", name = "salesId", value = "导购主键(二维码分享)", required = false), }) public ApiResponse getProductInfo(@RequestParam String id,String salesId) { ZTProductInfoResponse ztProductInfoResponse= getZhongTaiDataService.getProductInfo(id,getUserType(),getMemberId(),salesId); return ApiResponse.success("查询成功",ztProductInfoResponse); } @UserLoginRequired @LoginRequired @ApiOperation(value = "我的收藏/喜欢列表 - 中台", notes = "客户端小程序") @PostMapping("/collectLikePage") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true) }) public ApiResponse> collectLikePage(@RequestBody ZTCollectLikeRequest ztCollectLikeRequest) { ztCollectLikeRequest.setUserId(getMemberId()+""); ztCollectLikeRequest.setUserType(getUserType()); ZTBasePageResponse ztBasePageResponse= getZhongTaiDataService.collectLikePage(ztCollectLikeRequest); return ApiResponse.success("查询成功",ztBasePageResponse); } @ApiOperation(value = "测试发送微信消息", notes = "客户端小程序") @GetMapping("/testSendWxMessage") @ApiImplicitParams({ @ApiImplicitParam(paramType = "query", dataType = "String", name = "openid", value = "小程序id", required = true), @ApiImplicitParam(paramType = "query", dataType = "String", name = "token", value = "token", required = true), }) public ApiResponse testSendWxMessage(@RequestParam String openid,@RequestParam String token) { SendWxMessage sendWxMessage = new SendWxMessage(); sendWxMessage.testMessage(openid,token); return ApiResponse.success("操作成功"); } }