package com.doumee.api.web; import com.doumee.biz.zbom.ZbomCRMService; import com.doumee.biz.zbom.ZbomZhongTaiService; 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.dao.business.model.News; import com.doumee.dao.web.response.DailyUpdatesResponse; import com.doumee.dao.web.response.ZSZXCatalogResponse; import com.doumee.service.business.GetZhongTaiDataService; import com.doumee.service.business.NewsService; import com.doumee.service.business.SmsEmailService; 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.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; /** * Created by IntelliJ IDEA. * * @Author : Rk * @create 2024/7/10 18:06 */ @Api(tags = "【B端小程序】客户管理接口") @Trace(exclude = true) @RestController @RequestMapping("/web/customer") @Slf4j public class CustomerManageApi extends ApiController{ @Autowired public ZbomZhongTaiService zbomZhongTaiService; @Autowired public SmsEmailService smsEmailService; @Autowired public ZbomCRMService zbomCRMService; @Autowired public NewsService newsService; @Autowired public GetZhongTaiDataService getZhongTaiDataService; @UserLoginRequired @LoginRequired @ApiOperation(value = "【C端小程序】获取首页志说装修四个模块类目数据", notes = "获取首页志说装修四个模块类目数据,背景图暂时写死,参考UI") @PostMapping("/getZSZXCatalogs") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true) }) public ApiResponse getZSZXCatalogs() { return ApiResponse.success(getZhongTaiDataService.getZSZXCatalogs(getMemberId(),getUserType())); } @UserLoginRequired @ApiOperation(value = "【B端小程序】每日上新数据") @GetMapping("/getDailyUpdates") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true) }) public ApiResponse getDailyUpdates() { return ApiResponse.success(newsService.getDailyUpdatesResponse()); } @UserLoginRequired @ApiOperation("【B端小程序】 推广咨询分页") @PostMapping("/newsPage") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), }) public ApiResponse> newsPage (@RequestBody PageWrap pageWrap) { return ApiResponse.success(newsService.findPage(pageWrap)); } @UserLoginRequired @ApiOperation(value = "获取客户管理授权-列表跳转地址", notes = "获取客户管理授权跳转地址") @GetMapping("/getCrmAuthUrl") @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true), @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "type", value = "类型 0客户列表 1跳转新增意向客户", required = true) }) public ApiResponse getCrmAuthUrl(@RequestParam Integer type) { return ApiResponse.success(zbomCRMService.getCrmGoUrl(this.getLoginUserInfo().getIamUsername(),type)); } }