k94314517
2024-08-27 532d1286a13a10e78283cf8e4f5af6f6f6226a39
server/web/src/main/java/com/doumee/api/web/CustomerApi.java
@@ -11,6 +11,7 @@
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;
@@ -83,14 +84,24 @@
    @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 = "iamId", value = "导购主键", required = false),
            @ApiImplicitParam(paramType = "query", dataType = "String", name = "userId", value = "导购主键", required = false),
    })
    public ApiResponse<AccountResponse> wxLoginCustomer(@RequestParam String code,String iamId) {
        return  ApiResponse.success(memberService.wxLogin(code,iamId));
    public ApiResponse<AccountResponse> 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<AccountResponse> testWxLoginCustomer(@RequestParam String openid) {
        return  ApiResponse.success(memberService.testLogin(openid));
    }
@@ -112,11 +123,14 @@
    })
    public ApiResponse<Member> editMember(@RequestBody EditMemberRequest editMemberRequest) {
        editMemberRequest.setId(getMemberId());
        String  phone = editMemberRequest.getPhone();
        //同步导购绑定信息
        if(StringUtils.isNotBlank(editMemberRequest.getPhone())){
            customerUserService.syncByPhone(editMemberRequest.getPhone());
        Member member =memberService.updMemberDetail(editMemberRequest);
        if(StringUtils.isNotBlank(phone)){
          customerUserService.syncByPhone(member);
          member = memberService.getMemberInfo(member.getId());
        }
        return  ApiResponse.success("更新成功",memberService.updMemberDetail(editMemberRequest));
        return  ApiResponse.success("更新成功",member);
    }
    @LoginRequired
@@ -127,11 +141,14 @@
    })
    public ApiResponse<Member> binDingPhone(@RequestBody EditMemberRequest editMemberRequest) {
        editMemberRequest.setId(getMemberId());
        String phone =editMemberRequest.getPhone();
        Member member = memberService.updMemberPhone(editMemberRequest);
        //同步导购绑定信息
        if(StringUtils.isNotBlank(editMemberRequest.getPhone())){
            customerUserService.syncByPhone(editMemberRequest.getPhone());
        if(StringUtils.isNotBlank(phone)){
            customerUserService.syncByPhone(member);
            member = memberService.getMemberInfo(getMemberId());
        }
        return  ApiResponse.success("更新成功",memberService.updMemberPhone(editMemberRequest));
        return  ApiResponse.success("更新成功",member);
    }
@@ -143,7 +160,9 @@
            @ApiImplicitParam(paramType = "query", dataType = "String", name = "phone", value = "手机号信息", required = true),
    })
    public ApiResponse syncCustomerUser(@RequestParam String phone) {
        customerUserService.syncByPhone(phone);
        if(StringUtils.isNotBlank(getLoginMemberInfo().getPhone())){
            customerUserService.syncByPhone(getLoginMemberInfo());
        }
        return  ApiResponse.success("同步成功");
    }
@@ -208,6 +227,9 @@
    @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)){
@@ -218,11 +240,21 @@
    @LoginRequired
    @ApiOperation(value = "门店列表", notes = "客户端小程序")
    @PostMapping("/shopPage")   @ApiImplicitParams({
    @PostMapping("/shopPage")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
    })
    public ApiResponse<PageData<Shop>> shopPage (@RequestBody PageWrap<Shop> pageWrap) {
        return ApiResponse.success(shopService.queryShopByLL(pageWrap));
        PageData<Shop> 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);
    }
@@ -245,6 +277,7 @@
            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true)
    })
    public ApiResponse<PageData<Users>> myUserPage (@RequestBody PageWrap<Users> pageWrap) {
        pageWrap.getModel().setMemberId(getMemberId());
        return ApiResponse.success(usersService.findPage(pageWrap));
    }
@@ -296,6 +329,7 @@
    @UserLoginRequired
    @LoginRequired
    @ApiOperation(value = "分类数据 - 中台", notes = "客户端小程序")
    @PostMapping("/getCatalogList")
@@ -304,13 +338,14 @@
    })
    public ApiResponse<List<ZTCatalogInfoResponse>> getCatalogList (@RequestBody ZTCatalogListRequest ztCatalogListRequest ) {
        ztCatalogListRequest.setUserId(getMemberId()+"");
        ztCatalogListRequest.setUserType(ZTConstants.CUSTOMER);
        ztCatalogListRequest.setUserType(getUserType());
        List<ZTCatalogInfoResponse> ztCatalogInfoResponseList = getZhongTaiDataService.getCatalogList(ztCatalogListRequest);
        return ApiResponse.success("查询成功",ztCatalogInfoResponseList);
    }
    @UserLoginRequired
    @LoginRequired
    @ApiOperation(value = "标签数据 - 中台", notes = "客户端小程序")
    @PostMapping("/getCataLogTagList")
@@ -319,13 +354,14 @@
    })
    public ApiResponse<List<ZTTagInfoResponse>> getCataLogTagList(@RequestBody ZTCatalogListRequest ztCatalogListRequest ) {
        ztCatalogListRequest.setUserId(getMemberId()+"");
        ztCatalogListRequest.setUserType(ZTConstants.CUSTOMER);
        ztCatalogListRequest.setUserType(getUserType());
        List<ZTTagInfoResponse> ztTagInfoResponseList = getZhongTaiDataService.getCataLogTagList(ztCatalogListRequest);
        return ApiResponse.success("查询成功",ztTagInfoResponseList);
    }
    @UserLoginRequired
    @LoginRequired
    @ApiOperation(value = "行为内容接口 - 中台", notes = "客户端小程序")
    @GetMapping("/actionDo")
@@ -335,10 +371,11 @@
            @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(),ZTConstants.CUSTOMER,id,actionType);
        getZhongTaiDataService.actionDo(getMemberId(),getUserType(),id,actionType);
        return ApiResponse.success("操作成功");
    }
    @UserLoginRequired
    @LoginRequired
    @ApiOperation(value = "定制服务列表", notes = "客户端小程序")
    @GetMapping("/getCustomizedNewsList")
@@ -349,6 +386,7 @@
        return ApiResponse.success("查询成功",newsService.getCustomizedNewsList(Constants.ONE,null,null));
    }
    @UserLoginRequired
    @LoginRequired
    @ApiOperation(value = "定制服务详情", notes = "客户端小程序")
    @GetMapping("/getCustomizedNewsDetail")
@@ -360,6 +398,7 @@
        return ApiResponse.success("查询成功",newsService.getCustomizedNewsDetail(id));
    }
    @UserLoginRequired
    @LoginRequired
    @ApiOperation(value = "保存推广咨询分享记录", notes = "客户端小程序")
    @GetMapping("/saveShareRecord")
@@ -380,7 +419,7 @@
    })
    public ApiResponse<ZTBasePageResponse<ZTCusFavoritesInfoResponse>> getZhongTaiCusFavorite(@RequestBody ZTContentListRequest ztContentListRequest) {
        ztContentListRequest.setUserId(getMemberId()+"");
        ztContentListRequest.setUserType(ZTConstants.CUSTOMER);
        ztContentListRequest.setUserType(getUserType());
        ZTBasePageResponse<ZTCusFavoritesInfoResponse> ztBasePageResponse = getZhongTaiDataService.getZhongTaiCusFavorite(ztContentListRequest);
        return ApiResponse.success("获取成功",ztBasePageResponse);
    }
@@ -395,13 +434,14 @@
    })
    public ApiResponse<List<ZTCusCarouselImageResponse>> getZhongTaiCarouselImage(@RequestBody ZTContentListRequest ztContentListRequest) {
        ztContentListRequest.setUserId(getMemberId()+"");
        ztContentListRequest.setUserType(ZTConstants.CUSTOMER);
        ztContentListRequest.setUserType(getUserType());
        List<ZTCusCarouselImageResponse> ztCusCarouselImageResponseList = getZhongTaiDataService.getZhongTaiCarouselImage(ztContentListRequest);
        return ApiResponse.success("获取成功",ztCusCarouselImageResponseList);
    }
    @UserLoginRequired
    @LoginRequired
    @ApiOperation(value = "轮播图详情", notes = "客户端小程序")
    @PostMapping("/getZhongTaiCarouselImageDetail")
@@ -410,12 +450,13 @@
    })
    public ApiResponse<ZTCusCarouselImageResponse> getZhongTaiCarouselImageDetail(@RequestBody ZTDataDetailRequest ztDataDetailRequest) {
        ztDataDetailRequest.setUserId(getMemberId()+"");
        ztDataDetailRequest.setUserType(ZTConstants.CUSTOMER);
        ztDataDetailRequest.setUserType(getUserType());
        ZTCusCarouselImageResponse ztCusCarouselImageResponse = getZhongTaiDataService.getZhongTaiCarouselImageDetail(ztDataDetailRequest);
        return ApiResponse.success("获取成功",ztCusCarouselImageResponse);
    }
    @UserLoginRequired
    @LoginRequired
    @ApiOperation(value = "咨询分页列表 - 中台", notes = "客户端小程序")
    @PostMapping("/getZhongTaiProductNewsPage")
@@ -424,12 +465,17 @@
    })
    public ApiResponse<ZTBasePageResponse<ZTProductNewsInfoResponse>> getZhongTaiProductNewsPage(@RequestBody ZTContentListRequest ztContentListRequest) {
        ztContentListRequest.setUserId(getMemberId()+"");
        ztContentListRequest.setUserType(ZTConstants.CUSTOMER);
        ztContentListRequest.setUserType(getUserType());
        ZTBasePageResponse<ZTProductNewsInfoResponse>  ztBasePageResponse= getZhongTaiDataService.getZhongTaiProductNewsPage(ztContentListRequest);
        return ApiResponse.success("查询成功",ztBasePageResponse);
    }
    @UserLoginRequired
    @LoginRequired
    @ApiOperation(value = "产品分页列表 - 中台", notes = "客户端小程序")
    @PostMapping("/getZhongTaiProductPage")
@@ -438,11 +484,13 @@
    })
    public ApiResponse<ZTBasePageResponse<ZTProductInfoResponse>> getZhongTaiProductPage(@RequestBody ZTContentListRequest ztContentListRequest) {
        ztContentListRequest.setUserId(getMemberId()+"");
        ztContentListRequest.setUserType(ZTConstants.CUSTOMER);
        ztContentListRequest.setUserType(getUserType());
        ZTBasePageResponse<ZTProductInfoResponse>  ztBasePageResponse= getZhongTaiDataService.getZhongTaiProductPage(ztContentListRequest);
        return ApiResponse.success("查询成功",ztBasePageResponse);
    }
    @UserLoginRequired
    @LoginRequired
    @ApiOperation(value = "实景分页列表 - 中台", notes = "客户端小程序")
    @PostMapping("/getZhongTaiRealcasePage")
@@ -451,11 +499,13 @@
    })
    public ApiResponse<ZTBasePageResponse<ZTRealcaseInfoResponse>> getZhongTaiRealcasePage(@RequestBody ZTContentListRequest ztContentListRequest) {
        ztContentListRequest.setUserId(getMemberId()+"");
        ztContentListRequest.setUserType(ZTConstants.CUSTOMER);
        ztContentListRequest.setUserType(getUserType());
        ZTBasePageResponse<ZTRealcaseInfoResponse>  ztBasePageResponse= getZhongTaiDataService.getZhongTaiRealcasePage(ztContentListRequest);
        return ApiResponse.success("查询成功",ztBasePageResponse);
    }
    @UserLoginRequired
    @LoginRequired
    @ApiOperation(value = "视频分页列表 - 中台", notes = "客户端小程序")
    @PostMapping("/getZhongTaiVideoPage")
@@ -464,11 +514,13 @@
    })
    public ApiResponse<ZTBasePageResponse<ZTVideoInfoResponse>> getZhongTaiVideoPage(@RequestBody ZTContentListRequest ztContentListRequest) {
        ztContentListRequest.setUserId(getMemberId()+"");
        ztContentListRequest.setUserType(ZTConstants.CUSTOMER);
        ztContentListRequest.setUserType(getUserType());
        ZTBasePageResponse<ZTVideoInfoResponse>  ztBasePageResponse= getZhongTaiDataService.getZhongTaiVideoPage(ztContentListRequest);
        return ApiResponse.success("查询成功",ztBasePageResponse);
    }
    @UserLoginRequired
    @LoginRequired
    @ApiOperation(value = "全屋案例分页列表 - 中台", notes = "客户端小程序")
    @PostMapping("/getZhongTaiWholecasePage")
@@ -477,11 +529,13 @@
    })
    public ApiResponse<ZTBasePageResponse<ZTCaseInfoResponse>> getZhongTaiWholecasePage(@RequestBody ZTContentListRequest ztContentListRequest) {
        ztContentListRequest.setUserId(getMemberId()+"");
        ztContentListRequest.setUserType(ZTConstants.CUSTOMER);
        ztContentListRequest.setUserType(getUserType());
        ZTBasePageResponse<ZTCaseInfoResponse>  ztBasePageResponse= getZhongTaiDataService.getZhongTaiWholecasePage(ztContentListRequest);
        return ApiResponse.success("查询成功",ztBasePageResponse);
    }
    @UserLoginRequired
    @LoginRequired
    @ApiOperation(value = "志说装修分页列表 - 中台", notes = "客户端小程序")
    @PostMapping("/getZhongTaiZbDecoPage")
@@ -490,62 +544,71 @@
    })
    public ApiResponse<ZTBasePageResponse<ZTZbDecoInfoResponse>> getZhongTaiZbDecoPage(@RequestBody ZTContentListRequest ztContentListRequest) {
        ztContentListRequest.setUserId(getMemberId()+"");
        ztContentListRequest.setUserType(ZTConstants.CUSTOMER);
        ztContentListRequest.setUserType(getUserType());
        ZTBasePageResponse<ZTZbDecoInfoResponse>  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<ZTCaseInfoResponse> getWholecaseInfo(@RequestParam String id) {
        ZTCaseInfoResponse ztCaseInfoResponse= getZhongTaiDataService.getWholecaseInfo(id,ZTConstants.CUSTOMER,getMemberId());
    public ApiResponse<ZTCaseInfoResponse> 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<ZTProductNewsInfoResponse> getProductNewsInfo(@RequestParam String id) {
        ZTProductNewsInfoResponse ztProductNewsInfoResponse= getZhongTaiDataService.getProductNewsInfo(id,ZTConstants.CUSTOMER,getMemberId());
    public ApiResponse<ZTProductNewsInfoResponse> 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<ZTRealcaseInfoResponse> getRealcaseInfo(@RequestParam String id) {
        ZTRealcaseInfoResponse ztRealcaseInfoResponse= getZhongTaiDataService.getRealcaseInfo(id,ZTConstants.CUSTOMER,getMemberId());
    public ApiResponse<ZTRealcaseInfoResponse> 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<ZTProductInfoResponse> getProductInfo(@RequestParam String id) {
        ZTProductInfoResponse ztProductInfoResponse= getZhongTaiDataService.getProductInfo(id,getUserType(),getMemberId());
    public ApiResponse<ZTProductInfoResponse> getProductInfo(@RequestParam String id,String salesId) {
        ZTProductInfoResponse ztProductInfoResponse= getZhongTaiDataService.getProductInfo(id,getUserType(),getMemberId(),salesId);
        return ApiResponse.success("查询成功",ztProductInfoResponse);
    }
@@ -563,4 +626,17 @@
        ZTBasePageResponse<ZTCollectLikeInfoResponse>  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("操作成功");
    }
}