From d2a5cf32ffd598eb10b6699cc93f665c3c1cbbf8 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 17 七月 2024 17:34:21 +0800
Subject: [PATCH] 提交
---
server/web/src/main/java/com/doumee/api/web/CustomerApi.java | 235 +++++++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 222 insertions(+), 13 deletions(-)
diff --git a/server/web/src/main/java/com/doumee/api/web/CustomerApi.java b/server/web/src/main/java/com/doumee/api/web/CustomerApi.java
index 0eb842c..e5a1451 100644
--- a/server/web/src/main/java/com/doumee/api/web/CustomerApi.java
+++ b/server/web/src/main/java/com/doumee/api/web/CustomerApi.java
@@ -1,11 +1,16 @@
package com.doumee.api.web;
+import com.doumee.biz.system.SystemDictDataBiz;
import com.doumee.biz.zbom.ZbomCRMService;
+import com.doumee.biz.zbom.model.zhongtai.ZTCatalogListRequest;
+import com.doumee.biz.zbom.model.zhongtai.ZTContentListRequest;
+import com.doumee.biz.zbom.model.zhongtai.response.*;
import com.doumee.config.annotation.LoginRequired;
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.dao.business.model.CustomerLog;
import com.doumee.dao.business.model.Member;
import com.doumee.dao.business.model.Shop;
@@ -19,12 +24,17 @@
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.io.InputStream;
+import java.util.List;
/**
* Created by IntelliJ IDEA.
@@ -32,12 +42,14 @@
* @Author : Rk
* @create 2024/7/10 14:03
*/
-@Api(tags = "瀹㈡埛绔皬绋嬪簭鐢ㄦ埛涓氬姟")
+@Api(tags = "銆怌绔皬绋嬪簭銆戠敤鎴蜂笟鍔�")
@Trace(exclude = true)
@RestController
@RequestMapping("/web/customer")
@Slf4j
public class CustomerApi extends ApiController{
+
+
@Autowired
@@ -50,13 +62,23 @@
private CustomerService customerService;
@Autowired
- private ZbomCRMService zbomCRMService;
+ 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;
@ApiOperation(value = "瀹㈡埛绔皬绋嬪簭鐧婚檰", notes = "瀹㈡埛绔皬绋嬪簭")
@GetMapping("/wxLoginCustomer")
@@ -83,10 +105,41 @@
@ApiImplicitParams({
@ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true)
})
- public ApiResponse updMemberDetail(@RequestBody EditMemberRequest editMemberRequest) {
- editMemberRequest.setMemberId(getMemberId());
- memberService.updMemberDetail(editMemberRequest);
- return ApiResponse.success("鏇存柊鎴愬姛");
+ public ApiResponse<Member> editMember(@RequestBody EditMemberRequest editMemberRequest) {
+ editMemberRequest.setId(getMemberId());
+ //鍚屾瀵艰喘缁戝畾淇℃伅
+ if(StringUtils.isNotBlank(editMemberRequest.getPhone())){
+ customerUserService.syncByPhone(editMemberRequest.getPhone());
+ }
+ return ApiResponse.success("鏇存柊鎴愬姛",memberService.updMemberDetail(editMemberRequest));
+ }
+
+ @LoginRequired
+ @ApiOperation(value = "缁戝畾鎵嬫満鍙蜂俊鎭�", notes = "瀹㈡埛绔皬绋嬪簭")
+ @PostMapping("/binDingPhone")
+ @ApiImplicitParams({
+ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true)
+ })
+ public ApiResponse<Member> binDingPhone(@RequestBody EditMemberRequest editMemberRequest) {
+ editMemberRequest.setId(getMemberId());
+ //鍚屾瀵艰喘缁戝畾淇℃伅
+ if(StringUtils.isNotBlank(editMemberRequest.getPhone())){
+ customerUserService.syncByPhone(editMemberRequest.getPhone());
+ }
+ return ApiResponse.success("鏇存柊鎴愬姛",memberService.updMemberPhone(editMemberRequest));
+ }
+
+
+ @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) {
+ customerUserService.syncByPhone(phone);
+ return ApiResponse.success("鍚屾鎴愬姛");
}
@LoginRequired
@@ -143,7 +196,7 @@
public ApiResponse saveTestTrimStyle(@RequestBody TestTrimStyleDTO testTrimStyleDTO) {
testTrimStyleDTO.setMemberId(getMemberId());
CustomerLog customerLog = customerService.saveTestTrimStyle(testTrimStyleDTO);
- zbomCRMService.dealCustomerLogData(customerLog);
+// zbomCRMService.dealCustomerLogData(customerLog);
return ApiResponse.success("鎿嶄綔鎴愬姛");
}
@@ -178,17 +231,173 @@
}
@LoginRequired
- @ApiOperation(value = "瀵艰喘璇︽儏", notes = "瀹㈡埛绔皬绋嬪簭")
- @GetMapping("/usersDetail")
+ @ApiOperation("鎴戠殑瀵艰喘鍒楄〃")
+ @PostMapping("/myUserPage")
@ApiImplicitParams({
- @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
- @ApiImplicitParam(paramType = "query", dataType = "Long", name = "userId", value = "瀵艰喘涓婚敭", required = true)
+ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true)
})
- public ApiResponse<Users> usersDetail (@RequestParam Long userId) {
- return ApiResponse.success(usersService.usersDetail(userId));
+ public ApiResponse<PageData<Users>> myUserPage (@RequestBody PageWrap<Users> pageWrap) {
+ 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<Users> usersDetailByIamId (@RequestParam String iamId) {
+ return ApiResponse.success(usersService.usersDetailByIamId(iamId));
+ }
+
+
+ @LoginRequired
+ @ApiOperation(value = "娴嬭瘯灏忕▼搴廡oken", notes = "瀹㈡埛绔皬绋嬪簭")
+ @GetMapping("/testToken")
+ @ApiImplicitParams({
+ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true)
+ })
+ public ApiResponse testToken () {
+ systemDictDataBiz.updWxMiniToken();
+ return ApiResponse.success("鏇存柊鎴愬姛");
+ }
+
+
+
+ @LoginRequired
+ @ApiOperation(value = "鑾峰彇鍒嗕韩灏忕▼搴忎簩缁寸爜锛堝浘鐗囨祦锛宨mg鏍囩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<PageData<CustomerLog>> customerLogPage(@RequestBody PageWrap<CustomerLog> pageWrap) {
+ pageWrap.getModel().setCostomerId(getMemberId().toString());
+ return ApiResponse.success(customerLogService.findPage(pageWrap));
+ }
+
+
+
+
+ @LoginRequired
+ @ApiOperation(value = "鍒嗙被鏁版嵁 - 涓彴", notes = "瀹㈡埛绔皬绋嬪簭")
+ @PostMapping("/getCatalogList")
+ @ApiImplicitParams({
+ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true)
+ })
+ public ApiResponse<List<ZTCatalogInfoResponse>> getCatalogList (@RequestBody ZTCatalogListRequest ztCatalogListRequest ) {
+ List<ZTCatalogInfoResponse> ztCatalogInfoResponseList = getZhongTaiDataService.getCatalogList(ztCatalogListRequest);
+ return ApiResponse.success("鏌ヨ鎴愬姛",ztCatalogInfoResponseList);
+ }
+
+
+
+ @LoginRequired
+ @ApiOperation(value = "鏍囩鏁版嵁 - 涓彴", notes = "瀹㈡埛绔皬绋嬪簭")
+ @PostMapping("/getCataLogTagList")
+ @ApiImplicitParams({
+ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true)
+ })
+ public ApiResponse<List<ZTTagInfoResponse>> getCataLogTagList(@RequestBody ZTCatalogListRequest ztCatalogListRequest ) {
+ List<ZTTagInfoResponse> ztTagInfoResponseList = getZhongTaiDataService.getCataLogTagList(ztCatalogListRequest);
+ return ApiResponse.success("鏌ヨ鎴愬姛",ztTagInfoResponseList);
+ }
+
+ @LoginRequired
+ @ApiOperation(value = "鍐呭鍒嗛〉 - 涓彴", notes = "瀹㈡埛绔皬绋嬪簭")
+ @PostMapping("/pageContentList")
+ @ApiImplicitParams({
+ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true)
+ })
+ public ApiResponse<ZTBasePageResponse<ZTContentListResponse>> pageContentList(@RequestBody ZTContentListRequest ztContentListRequest) {
+ ztContentListRequest.setUserId(getMemberId()+"");
+ ztContentListRequest.setUserType(Constants.CUSTOMER);
+ ZTBasePageResponse<ZTContentListResponse> ztBasePageResponse= getZhongTaiDataService.pageContentList(ztContentListRequest);
+ return ApiResponse.success("鏌ヨ鎴愬姛",ztBasePageResponse);
+ }
+
+ @LoginRequired
+ @ApiOperation(value = "鍐呭璇︽儏 - 涓彴", notes = "瀹㈡埛绔皬绋嬪簭")
+ @GetMapping("/getContentInfo")
+ @ApiImplicitParams({
+ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
+ @ApiImplicitParam(paramType = "query", dataType = "String", name = "id", value = "鍐呭涓婚敭", required = true),
+ })
+ public ApiResponse<ZTContentInfoResponse> getContentInfo(@RequestParam String id) {
+ ZTContentInfoResponse ztContentInfoResponse= getZhongTaiDataService.getContentInfo(id,Constants.CUSTOMER,getMemberId());
+ return ApiResponse.success("鏌ヨ鎴愬姛",ztContentInfoResponse);
+ }
+
+
+ @LoginRequired
+ @ApiOperation(value = "鍐呭鏀惰棌 - 涓彴", notes = "瀹㈡埛绔皬绋嬪簭")
+ @GetMapping("/collectContent")
+ @ApiImplicitParams({
+ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
+ @ApiImplicitParam(paramType = "query", dataType = "String", name = "id", value = "鍐呭涓婚敭", required = true),
+ })
+ public ApiResponse collectContent(@RequestParam String id) {
+ getZhongTaiDataService.collectContent(getMemberId(),Constants.CUSTOMER,id);
+ return ApiResponse.success("鎿嶄綔鎴愬姛");
+ }
+
+ @LoginRequired
+ @ApiOperation(value = "鍐呭鍠滄 - 涓彴", notes = "瀹㈡埛绔皬绋嬪簭")
+ @GetMapping("/likeContent")
+ @ApiImplicitParams({
+ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
+ @ApiImplicitParam(paramType = "query", dataType = "String", name = "id", value = "鍐呭涓婚敭", required = true),
+ })
+ public ApiResponse likeContent(@RequestParam String id) {
+ getZhongTaiDataService.likeContent(getMemberId(),Constants.CUSTOMER,id);
+ return ApiResponse.success("鎿嶄綔鎴愬姛");
+ }
+
+
+ @LoginRequired
+ @ApiOperation(value = "鍐呭鍒嗕韩 - 涓彴", notes = "瀹㈡埛绔皬绋嬪簭")
+ @GetMapping("/shareContent")
+ @ApiImplicitParams({
+ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
+ @ApiImplicitParam(paramType = "query", dataType = "String", name = "id", value = "鍐呭涓婚敭", required = true),
+ })
+ public ApiResponse shareContent(@RequestParam String id) {
+ getZhongTaiDataService.shareContent(getMemberId(),Constants.CUSTOMER,id);
+ return ApiResponse.success("鎿嶄綔鎴愬姛");
+ }
+
+
+ @LoginRequired
+ @ApiOperation(value = "鍐呭娴忚 - 涓彴", notes = "瀹㈡埛绔皬绋嬪簭")
+ @GetMapping("/viewContent")
+ @ApiImplicitParams({
+ @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
+ @ApiImplicitParam(paramType = "query", dataType = "String", name = "id", value = "鍐呭涓婚敭", required = true),
+ })
+ public ApiResponse viewContent(@RequestParam String id) {
+ getZhongTaiDataService.viewContent(getMemberId(),Constants.CUSTOMER,id);
+ return ApiResponse.success("鎿嶄綔鎴愬姛");
+ }
}
--
Gitblit v1.9.3