From 0b80f415c2ab98d545f246d2c8adb4c40c0f55d6 Mon Sep 17 00:00:00 2001 From: Administrator <15274802129@163.com> Date: Mon, 21 Jul 2025 17:18:00 +0800 Subject: [PATCH] feat(mall): 添加我的社区收藏功能 --- src/main/java/cc/mrbird/febs/mall/controller/clothes/AdminClothesTypeController.java | 335 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 331 insertions(+), 4 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/controller/clothes/AdminClothesTypeController.java b/src/main/java/cc/mrbird/febs/mall/controller/clothes/AdminClothesTypeController.java index 7d18b56..7aa560b 100644 --- a/src/main/java/cc/mrbird/febs/mall/controller/clothes/AdminClothesTypeController.java +++ b/src/main/java/cc/mrbird/febs/mall/controller/clothes/AdminClothesTypeController.java @@ -6,22 +6,31 @@ import cc.mrbird.febs.common.entity.QueryRequest; import cc.mrbird.febs.common.enumerates.OrderDeliveryStateEnum; import cc.mrbird.febs.common.enumerates.OrderStatusEnum; +import cc.mrbird.febs.common.utils.AppContants; +import cc.mrbird.febs.common.utils.RedisUtils; import cc.mrbird.febs.common.utils.excl.ExcelSheetPO; import cc.mrbird.febs.common.utils.excl.ExcelUtil; import cc.mrbird.febs.common.utils.excl.ExcelVersion; import cc.mrbird.febs.common.utils.excl.ResponseHeadUtil; +import cc.mrbird.febs.mall.controller.order.ViewMallOrderController; +import cc.mrbird.febs.mall.dto.AdminHappyActivityCategoryDto; import cc.mrbird.febs.mall.dto.DeliverGoodsDto; -import cc.mrbird.febs.mall.dto.clothes.AdminClothesDeliverGoodsDto; -import cc.mrbird.febs.mall.dto.clothes.AdminClothesOrderListDto; -import cc.mrbird.febs.mall.dto.clothes.AdminClothesRefundOrderDto; -import cc.mrbird.febs.mall.dto.clothes.AdminClothesTypeInfoDto; +import cc.mrbird.febs.mall.dto.activity.AdminCategoryAddDto; +import cc.mrbird.febs.mall.dto.activity.AdminCategoryUpdateDto; +import cc.mrbird.febs.mall.dto.clothes.*; import cc.mrbird.febs.mall.entity.*; import cc.mrbird.febs.mall.service.ClothesTypeService; +import cc.mrbird.febs.mall.vo.clothes.AdminClothesPrintLocationVo; +import cc.mrbird.febs.mall.vo.clothes.AdminClothesPrintMemberStatureVo; +import cc.mrbird.febs.mall.vo.clothes.AdminClothesPrintOrderVo; +import cc.mrbird.febs.mall.vo.clothes.AdminClothesPrintPatternVo; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import cn.hutool.json.JSON; +import cn.hutool.json.JSONUtil; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.validation.annotation.Validated; @@ -35,6 +44,7 @@ import java.io.File; import java.io.IOException; import java.io.OutputStream; +import java.math.BigDecimal; import java.net.URLEncoder; import java.util.ArrayList; import java.util.Date; @@ -49,6 +59,252 @@ public class AdminClothesTypeController extends BaseController { private final ClothesTypeService clothesTypeService; + private final RedisUtils redisUtils; + + /** + * 分类列表 + * @return + */ + @GetMapping("groupList") + public FebsResponse groupList(AdminClothesSocialCategoryDto dto, QueryRequest request) { + + Map<String, Object> data = getDataTable(clothesTypeService.getGroupList(dto, request)); + return new FebsResponse().success().data(data); + } + /** + * 分类-新增 + */ + @PostMapping("addGroup") + @ControllerEndpoint(operation = "分类-新增", exceptionMessage = "操作失败") + public FebsResponse addGroup(@RequestBody @Valid AdminClothesCategoryAddDto dto) { + + return clothesTypeService.addGroup(dto); + } + + /** + * 分类-删除 + */ + @GetMapping("groupDelete/{id}") + @ControllerEndpoint(operation = "选项-删除", exceptionMessage = "操作失败") + public FebsResponse groupDelete(@NotNull(message = "{required}") @PathVariable Long id) { + + return clothesTypeService.groupDelete(id); + } + + /** + * 分类-更新 + */ + @PostMapping("groupUpdate") + @ControllerEndpoint(operation = "分类-更新", exceptionMessage = "操作失败") + public FebsResponse groupUpdate(@RequestBody @Valid AdminClothesCategoryUpdateDto dto) { + + return clothesTypeService.groupUpdate(dto); + } + /** + * 分类-开启 + */ + @GetMapping("groupState/{id}/{type}") + @ControllerEndpoint(operation = "分类-开启", exceptionMessage = "操作失败") + public FebsResponse groupState( + @NotNull(message = "{required}") @PathVariable Long id, + @NotNull(message = "{required}") @PathVariable Integer type) { + + return clothesTypeService.groupState(id,type); + } + + /** + * 社区列表 + * + * @param dto + * @param request + * @return + */ + @GetMapping("socialList") + public FebsResponse socialList(AdminClothesSocialListDto dto, QueryRequest request) { + String startTime = dto.getStartTime(); + String endTime = dto.getEndTime(); + if(StrUtil.isNotBlank(startTime) && StrUtil.isNotBlank(endTime)){ + DateTime dateStartTime= DateUtil.parseDate(startTime); + DateTime dateEndTime = DateUtil.parseDate(endTime); + int compare = DateUtil.compare(dateStartTime, dateEndTime); + if(compare >= 0){ + return new FebsResponse().fail().message("请输入正确的开始时间和结束时间"); + } + } + Map<String, Object> data = getDataTable(clothesTypeService.getSocialListInPage(dto, request)); + return new FebsResponse().success().data(data); + } + + + + /** + * 社区列表-评论列表 + */ + @GetMapping("socialComment") + public FebsResponse socialComment(ClothesSocialComment dto, QueryRequest request, Integer parentId) { + String existToken = redisUtils.getString(AppContants.SOCIAL_COMMENT); + long socialId = Long.parseLong(existToken); + dto.setSocialId(socialId); + Map<String, Object> data = getDataTable(clothesTypeService.socialComment(dto,request)); + return new FebsResponse().success().data(data); + } + + + /** + * 社区-新增 + */ + @PostMapping("socialAdd") + @ControllerEndpoint(operation = "新增", exceptionMessage = "操作失败") + public FebsResponse socialAdd(@RequestBody ClothesSocial dto) { + + return clothesTypeService.socialAdd(dto); + } + + + /** + * 社区-更新 + */ + @PostMapping("socialUpdate") + @ControllerEndpoint(operation = "社区-更新", exceptionMessage = "操作失败") + public FebsResponse socialUpdate(@RequestBody ClothesSocial dto) { + + return clothesTypeService.socialUpdate(dto); + } + + + /** + * 社区-灵感 + */ + @PostMapping("socialMuseUpdate") + @ControllerEndpoint(operation = "社区-灵感", exceptionMessage = "操作失败") + public FebsResponse socialMuseUpdate(@RequestBody ClothesSocialMuse dto) { + + return clothesTypeService.socialMuseUpdate(dto); + } + + /** + * 社区获取设计类型-工艺 + * @return + */ + @GetMapping(value = "/allArt/{typeId}") + public FebsResponse allArt(@NotNull(message = "{required}") @PathVariable Long typeId) { + + return new FebsResponse().success().data(clothesTypeService.allArt(typeId)); + } + + /** + * 社区获取设计类型-尺码 + * @return + */ + @GetMapping(value = "/allSize/{typeId}") + public FebsResponse allSize(@NotNull(message = "{required}") @PathVariable Long typeId) { + + return new FebsResponse().success().data(clothesTypeService.allSize(typeId)); + } + + /** + * 社区获取设计类型-位置 + * @return + */ + @GetMapping(value = "/allLocation/{typeId}") + public FebsResponse allLocation(@NotNull(message = "{required}") @PathVariable Long typeId) { + + return new FebsResponse().success().data(clothesTypeService.allLocation(typeId)); + } + + /** + * 社区获取设计类型-图案 + * @return + */ + @GetMapping(value = "/allPattern/{typeId}") + public FebsResponse allPattern(@NotNull(message = "{required}") @PathVariable Long typeId) { + + return new FebsResponse().success().data(clothesTypeService.allPattern(typeId)); + } + + /** + * 社区获取设计类型-布料 + * @return + */ + @GetMapping(value = "/allCloth/{typeId}") + public FebsResponse allCloth(@NotNull(message = "{required}") @PathVariable Long typeId) { + + return new FebsResponse().success().data(clothesTypeService.allCloth(typeId)); + } + + /** + * 社区获取设计类型 + * @return + */ + @GetMapping(value = "/allType") + public FebsResponse allType() { + + return new FebsResponse().success().data(clothesTypeService.allType()); + } + + /** + * 社区获取分类 + * @return + */ + @GetMapping(value = "/allGroup") + public FebsResponse allGroup() { + + return new FebsResponse().success().data(clothesTypeService.allGroup()); + } + + /** + * 社区-开启 + */ + @GetMapping("socialState/{id}/{state}") + @ControllerEndpoint(operation = "社区-开启", exceptionMessage = "操作失败") + public FebsResponse socialState(@NotNull(message = "{required}") @PathVariable Long id, + @NotNull(message = "{required}") @PathVariable Integer state) { + + return clothesTypeService.socialState(id,state); + } + + /** + * 社区-开启评论 + */ + @GetMapping("commentStateSwitch/{id}/{state}") + @ControllerEndpoint(operation = "社区-开启评论", exceptionMessage = "操作失败") + public FebsResponse commentStateSwitch(@NotNull(message = "{required}") @PathVariable Long id, + @NotNull(message = "{required}") @PathVariable Integer state) { + + return clothesTypeService.commentStateSwitch(id,state); + } + + /** + * 社区-评论-是否展示 + */ + @GetMapping("showStateSwitch/{id}/{state}") + @ControllerEndpoint(operation = "社区-评论-是否展示", exceptionMessage = "操作失败") + public FebsResponse showStateSwitch(@NotNull(message = "{required}") @PathVariable Long id, + @NotNull(message = "{required}") @PathVariable Integer state) { + + return clothesTypeService.showStateSwitch(id,state); + } + + /** + * 社区-推荐首页 + */ + @GetMapping("socialHotState/{id}/{state}") + @ControllerEndpoint(operation = "社区-开启", exceptionMessage = "操作失败") + public FebsResponse socialHotState(@NotNull(message = "{required}") @PathVariable Long id, + @NotNull(message = "{required}") @PathVariable Integer state) { + + return clothesTypeService.socialHotState(id,state); + } + + /** + * 社区-删除 + */ + @GetMapping("socialDelete/{id}") + @ControllerEndpoint(operation = "社区-删除", exceptionMessage = "删除失败") + public FebsResponse socialDelete(@NotNull(message = "{required}") @PathVariable Long id) { + + return clothesTypeService.socialDelete(id); + } /** * 订单列表 @@ -86,6 +342,77 @@ /** * 订单列表-修改物流编号 */ + @GetMapping("printOrder/{id}") + @ControllerEndpoint(operation = "订单列表-修改物流编号", exceptionMessage = "操作失败") + public FebsResponse printOrder(@NotNull(message = "{required}") @PathVariable Long id) { + AdminClothesPrintOrderDto dto = new AdminClothesPrintOrderDto(); + dto.setId(id); + return clothesTypeService.printOrder(dto); + } + + public static void main(String[] args) { + AdminClothesPrintOrderVo vo = new AdminClothesPrintOrderVo(); + vo.setOrderNo("20201201"); + vo.setTypeName("T恤"); + vo.setTypeFront("https://excoin.oss-cn-hangzhou.aliyuncs.com/clothes/1752740706568ab67808fb49940a7930b9e0ab0793238.png"); + vo.setTypeBack("https://excoin.oss-cn-hangzhou.aliyuncs.com/clothes/1752740734639227e7f5a0f3a4de097a2785305bff825.png"); + vo.setClothName("棉"); + vo.setClothCode("TX"); + vo.setSizeName("XL"); + vo.setSizeCode("XL"); + vo.setArtName("印花"); + vo.setArtCode("C"); + List<AdminClothesPrintPatternVo> patterns = new ArrayList<>(); + AdminClothesPrintPatternVo pattern = new AdminClothesPrintPatternVo(); + pattern.setPatternName("胸口"); + pattern.setPatternCode("front-one"); + pattern.setPatternText("胸口"); + pattern.setPatternImage("https://excoin.oss-cn-hangzhou.aliyuncs.com/clothes/17527407868773d1ad92c4c2e454396a6fc051c2219bc.png"); + patterns.add(pattern); + + AdminClothesPrintPatternVo pattern1 = new AdminClothesPrintPatternVo(); + pattern1.setPatternName("左下"); + pattern1.setPatternCode("front-two"); + pattern1.setPatternText("左下"); + pattern1.setPatternImage("https://excoin.oss-cn-hangzhou.aliyuncs.com/clothes/17527407868773d1ad92c4c2e454396a6fc051c2219bc.png"); + patterns.add(pattern1); + AdminClothesPrintPatternVo pattern2 = new AdminClothesPrintPatternVo(); + pattern2.setPatternName("袖口"); + pattern2.setPatternCode("front-three"); + pattern2.setPatternText("袖口"); + pattern2.setPatternImage("https://excoin.oss-cn-hangzhou.aliyuncs.com/clothes/17527407868773d1ad92c4c2e454396a6fc051c2219bc.png"); + patterns.add(pattern2); + vo.setPatterns( patterns); + + List<AdminClothesPrintLocationVo> locations = new ArrayList<>(); + AdminClothesPrintLocationVo location = new AdminClothesPrintLocationVo(); + location.setLocationName("后背"); + location.setLocationCode("back-one"); + location.setLocationText("后背"); + location.setLocationImage("https://excoin.oss-cn-hangzhou.aliyuncs.com/clothes/17527407868773d1ad92c4c2e454396a6fc051c2219bc.png"); + locations.add(location); + vo.setLocations(locations); + + AdminClothesPrintMemberStatureVo adminClothesPrintMemberStatureVo = new AdminClothesPrintMemberStatureVo(); + adminClothesPrintMemberStatureVo.setName("会员身高"); + adminClothesPrintMemberStatureVo.setHeightLine(new BigDecimal("170")); + adminClothesPrintMemberStatureVo.setBustLine(new BigDecimal("90")); + adminClothesPrintMemberStatureVo.setWaistLine(new BigDecimal("80")); + adminClothesPrintMemberStatureVo.setWideLine(new BigDecimal("100")); + adminClothesPrintMemberStatureVo.setHipLine(new BigDecimal("100")); + vo.setMemberStature(adminClothesPrintMemberStatureVo); + + + //将vo转换成json字符串 + JSON parse = JSONUtil.parse(vo); + System.out.println(parse.toString()); + + + } + + /** + * 订单列表-修改物流编号 + */ @PostMapping("deliverGoodsUpdate") @ControllerEndpoint(operation = "订单列表-修改物流编号", exceptionMessage = "操作失败") public FebsResponse deliverGoodsUpdate(@Valid AdminClothesDeliverGoodsDto dto) { -- Gitblit v1.9.1