From fba615cec8e9952aa0d62a974d2008c0ef085a98 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=9A=E5=BF=97=E8=B1=AA123?= <14699252+shang-zhihao-123@user.noreply.gitee.com> Date: Thu, 14 Nov 2024 10:16:42 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AC=AC=E4=B8=89=E6=AC=A1=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/model/RuleInfoAddModel.java | 2 +- .../domain/req/AttributeGroupEditReq.java | 7 +++ .../product/domain/req/RuleAttrInfoReq.java | 31 +++++++++++ .../domain/resp/AttributeGroupUpdResp.java | 37 +++++++++++++ .../product/domain/resp/RuleAttrInfoResp.java | 43 +++++++++++++++ .../controller/AttributeGroupController.java | 6 +- .../controller/RuleAttrInfoController.java | 1 + .../controller/RuleInfoController.java | 12 ++-- .../product/mapper/AttributeGroupMapper.java | 4 ++ .../product/mapper/RuleAttrInfoMapper.java | 23 ++++++++ .../service/AttributeGroupService.java | 5 ++ .../product/service/RuleAttrInfoService.java | 8 ++- .../muyu/product/service/RuleInfoService.java | 9 +++ .../impl/AttributeGroupServiceImpl.java | 32 ++++++++++- .../service/impl/RuleAttrInfoServiceImpl.java | 15 ++++- .../service/impl/RuleInfoServiceImpl.java | 55 +++++++++++++++++++ .../mapper/product/AttributeGroupMapper.xml | 20 +++---- .../mapper/product/RuleAttrInfoMapper.xml | 31 +++++++++++ 18 files changed, 318 insertions(+), 23 deletions(-) create mode 100644 muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/RuleAttrInfoReq.java create mode 100644 muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/AttributeGroupUpdResp.java create mode 100644 muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/RuleAttrInfoResp.java diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/model/RuleInfoAddModel.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/model/RuleInfoAddModel.java index d2742b3..3adb71c 100644 --- a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/model/RuleInfoAddModel.java +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/model/RuleInfoAddModel.java @@ -22,7 +22,7 @@ import java.util.List; @AllArgsConstructor @EqualsAndHashCode(callSuper = true) public class RuleInfoAddModel extends BaseEntity { - + private Long id; /** 规格名称 */ private String name; diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/AttributeGroupEditReq.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/AttributeGroupEditReq.java index 35a1b47..5c834ee 100644 --- a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/AttributeGroupEditReq.java +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/AttributeGroupEditReq.java @@ -1,6 +1,8 @@ package com.muyu.product.domain.req; import java.util.Date; +import java.util.List; + import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import lombok.EqualsAndHashCode; @@ -33,5 +35,10 @@ public class AttributeGroupEditReq extends BaseEntity { @ApiModelProperty(name = "状态", value = "状态", required = true) private String states; + /** + * 属性ID集合 + */ + @ApiModelProperty(name = "属性ID集合", value = "属性ID集合", required = true) + private List attributeIdList; } diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/RuleAttrInfoReq.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/RuleAttrInfoReq.java new file mode 100644 index 0000000..4ceb30d --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/RuleAttrInfoReq.java @@ -0,0 +1,31 @@ +package com.muyu.product.domain.req; + +import com.muyu.product.domain.model.RuleAttrAddModel; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.List; + +/** + * @Author:尚志豪 + * @Package:com.muyu.product.domain.req + * @Project:cloud-server + * @name:RuleAttrInfoReq + * @Date:2024/11/14 0:32 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class RuleAttrInfoReq { + /** 规格名称 */ + private String name; + + /** 规格状态 */ + private String status; + + /** + * 规格属性集合 + */ + private List ruleAttrList; +} diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/AttributeGroupUpdResp.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/AttributeGroupUpdResp.java new file mode 100644 index 0000000..7de733f --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/AttributeGroupUpdResp.java @@ -0,0 +1,37 @@ +package com.muyu.product.domain.resp; + +import com.muyu.product.domain.AttributeInfo; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import java.util.List; + +/** + * @Author:尚志豪 + * @Package:com.muyu.product.domain.resp + * @Project:cloud-server + * @name:AttributeGroupUpdResp + * @Date:2024/11/13 16:33 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +public class AttributeGroupUpdResp { + private static final long serialVersionUID = 1L; + + /** 属性组编号 */ + private Long id; + + /** 组名称 */ + private String name; + + /** 状态 */ + private String states; + + /** 属性Id集合 */ + private List attributeList; +} diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/RuleAttrInfoResp.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/RuleAttrInfoResp.java new file mode 100644 index 0000000..09b883b --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/RuleAttrInfoResp.java @@ -0,0 +1,43 @@ +package com.muyu.product.domain.resp; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.muyu.common.core.annotation.Excel; +import com.muyu.product.domain.RuleAttrInfo; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.List; + +/** + * @Author:尚志豪 + * @Package:com.muyu.product.domain.resp + * @Project:cloud-server + * @name:RuleAttrInfoResp + * @Date:2024/11/14 0:37 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class RuleAttrInfoResp { + /** 主键 */ + @TableId(value = "id",type = IdType.AUTO) + @ApiModelProperty(name = "主键", value = "主键") + private Long id; + + /** 规格名称 */ + @Excel(name = "规格名称") + @ApiModelProperty(name = "规格名称", value = "规格名称") + private String name; + + /** 规格状态 */ + @Excel(name = "规格状态") + @ApiModelProperty(name = "规格状态", value = "规格状态") + private String status; + + private List ruleInfoResps; + + private List attrValue; +} diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/AttributeGroupController.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/AttributeGroupController.java index ed530b0..e0c8e9d 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/AttributeGroupController.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/AttributeGroupController.java @@ -7,6 +7,7 @@ import com.muyu.product.domain.model.AttributeGroupSaveModel; import com.muyu.product.domain.model.Ids; import com.muyu.product.domain.req.AttributeInfoEditReq; import com.muyu.product.domain.resp.AttributeGroupPageResp; +import com.muyu.product.domain.resp.AttributeGroupUpdResp; import io.swagger.annotations.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; @@ -76,8 +77,8 @@ public class AttributeGroupController extends BaseController { @RequiresPermissions("product:attributeGroup:query") @GetMapping(value = "/{id}") @ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long", paramType = "path", dataTypeClass = Long.class) - public Result getInfo(@PathVariable("id") Long id) { - return Result.success(attributeGroupService.getById(id)); + public Result getInfo(@PathVariable("id") Long id) { + return Result.success(attributeGroupService.getUpdById(id)); } /** @@ -103,7 +104,6 @@ public class AttributeGroupController extends BaseController { public Result edit(@PathVariable Long id, @RequestBody AttributeGroupSaveReq attributeGroupSaveReq) { // return toAjax(attributeGroupService.updateById(AttributeGroup.editBuild(id,attributeGroupEditReq))); return toAjax(attributeGroupService.updateByIdss(id,attributeGroupSaveReq)); - } /** diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/RuleAttrInfoController.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/RuleAttrInfoController.java index 422428b..2d4c553 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/RuleAttrInfoController.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/RuleAttrInfoController.java @@ -73,6 +73,7 @@ public class RuleAttrInfoController extends BaseController { @ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long", paramType = "path", dataTypeClass = Long.class) public Result getInfo(@PathVariable("id") Long id) { return Result.success(ruleAttrInfoService.getById(id)); + } /** diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/RuleInfoController.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/RuleInfoController.java index b6a9c73..d4f829a 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/RuleInfoController.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/RuleInfoController.java @@ -5,6 +5,7 @@ import javax.servlet.http.HttpServletResponse; import com.muyu.common.core.text.Convert; import com.muyu.product.domain.model.RuleInfoAddModel; +import com.muyu.product.domain.req.RuleAttrInfoReq; import com.muyu.product.domain.resp.RuleInfoResp; import io.swagger.annotations.*; import org.springframework.beans.factory.annotation.Autowired; @@ -77,8 +78,9 @@ public class RuleInfoController extends BaseController { @RequiresPermissions("product:rule:query") @GetMapping(value = "/{id}") @ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long", paramType = "path", dataTypeClass = Long.class) - public Result getInfo(@PathVariable("id") Long id) { - return Result.success(ruleInfoService.getById(id)); + public Result getInfo(@PathVariable("id") Long id) { + RuleInfoAddModel resp=ruleInfoService.getRuleAttrInfoResp(id); + return Result.success(resp); } /** @@ -99,9 +101,9 @@ public class RuleInfoController extends BaseController { @Log(title = "商品规格", businessType = BusinessType.UPDATE) @PutMapping("/{id}") @ApiOperation("修改商品规格") - public Result edit(@PathVariable Long id, @RequestBody RuleInfoEditReq ruleInfoEditReq) { - return toAjax(ruleInfoService.updateById(RuleInfo.editBuild(id,ruleInfoEditReq))); - } + public Result edit(@PathVariable Long id, @RequestBody RuleAttrInfoReq req) { + ruleInfoService.updateRuleById(id,req); + return Result.success(); } /** * 删除商品规格 diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/AttributeGroupMapper.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/AttributeGroupMapper.java index 93e1d11..752d25d 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/AttributeGroupMapper.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/AttributeGroupMapper.java @@ -24,4 +24,8 @@ public interface AttributeGroupMapper extends BaseMapper { */ int updateByIdss(@Param("id") Long id); + /** + * 修改主表 + */ + void updateGroup(AttributeGroupSaveReq attributeGroupSaveReq); } diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/RuleAttrInfoMapper.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/RuleAttrInfoMapper.java index b51378c..005a836 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/RuleAttrInfoMapper.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/RuleAttrInfoMapper.java @@ -3,6 +3,8 @@ package com.muyu.product.mapper; import java.util.List; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.muyu.product.domain.RuleAttrInfo; +import com.muyu.product.domain.req.RuleAttrInfoReq; +import org.apache.ibatis.annotations.Param; /** * 规格详情Mapper接口 @@ -11,5 +13,26 @@ import com.muyu.product.domain.RuleAttrInfo; * @date 2024-02-27 */ public interface RuleAttrInfoMapper extends BaseMapper { + /** + * 查询规格详情表 + * @param id + * @return + */ + List getRuleAttrInfo(@Param("id") Long id); + + /** + * 删除规格详情表 + * @param id + */ + void deleteRule(@Param("id") Long id); + + /** + * 修改商品规格表 + * @param id + */ + void updRule(@Param("id") Long id, @Param("req") RuleAttrInfoReq req); + + void addRuleAttrModel(@Param("id") Long id, @Param("name") String name, @Param("valueData") String valueData); + } diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/AttributeGroupService.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/AttributeGroupService.java index ddacf67..4f5b6a9 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/AttributeGroupService.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/AttributeGroupService.java @@ -8,6 +8,7 @@ import com.muyu.product.domain.model.Ids; import com.muyu.product.domain.req.AttributeGroupSaveReq; import com.muyu.product.domain.req.AttributeInfoEditReq; import com.muyu.product.domain.resp.AttributeGroupPageResp; +import com.muyu.product.domain.resp.AttributeGroupUpdResp; import java.util.List; @@ -47,4 +48,8 @@ public interface AttributeGroupService extends IService { int updateByIds(Ids id); int updateByIdss(Long id, AttributeGroupSaveReq attributeGroupSaveReq); + /** + * 获取属性组详细信息 + */ + AttributeGroupUpdResp getUpdById(Long id); } diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/RuleAttrInfoService.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/RuleAttrInfoService.java index 2623202..4d87e89 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/RuleAttrInfoService.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/RuleAttrInfoService.java @@ -25,4 +25,10 @@ public interface RuleAttrInfoService extends IService { * @return 规格详情集合 */ List getInfoByRuleId (Long ruleId); -} + + /** + * 获取商品规格详细信息 + * @param id + * @return + */ + List getRuleAttrInfo(Long id);} diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/RuleInfoService.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/RuleInfoService.java index 54c5b08..c41f1d8 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/RuleInfoService.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/RuleInfoService.java @@ -6,6 +6,7 @@ import com.muyu.common.core.web.page.TableDataInfo; import com.muyu.product.domain.RuleInfo; import com.baomidou.mybatisplus.extension.service.IService; import com.muyu.product.domain.model.RuleInfoAddModel; +import com.muyu.product.domain.req.RuleAttrInfoReq; import com.muyu.product.domain.req.RuleInfoQueryReq; import com.muyu.product.domain.resp.RuleInfoResp; @@ -32,4 +33,12 @@ public interface RuleInfoService extends IService { public boolean save(RuleInfoAddModel ruleInfoAddModel); TableDataInfo queryList (RuleInfoQueryReq ruleInfoQueryReq); + /** + * 获取商品规格详细信息 + */ + RuleInfoAddModel getRuleAttrInfoResp(Long id); + /** + * 修改商品规格 + */ + void updateRuleById(Long id, RuleAttrInfoReq req); } diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/AttributeGroupServiceImpl.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/AttributeGroupServiceImpl.java index d80be54..ffd6b69 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/AttributeGroupServiceImpl.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/AttributeGroupServiceImpl.java @@ -14,6 +14,7 @@ import com.muyu.product.domain.model.Ids; import com.muyu.product.domain.req.AttributeGroupSaveReq; import com.muyu.product.domain.req.AttributeInfoEditReq; import com.muyu.product.domain.resp.AttributeGroupPageResp; +import com.muyu.product.domain.resp.AttributeGroupUpdResp; import com.muyu.product.mapper.AttributeGroupMapper; import com.muyu.product.service.AsAttributeGroupService; import com.muyu.product.service.AttributeGroupService; @@ -39,6 +40,8 @@ public class AttributeGroupServiceImpl extends ServiceImpl attributeIdList = attributeGroupSaveReq.getAttributeIdList(); attributeGroupService.saveBatch( attributeIdList.stream() .map(attributeId -> AsAttributeGroup.buildGroup(id, attributeId)) .toList() ); - return 0; -// return attributeGroupMapper.updateByIdss(id,attributeGroupSaveReq); + return 1; } + /** + * 获取属性组详细信息 + */ + @Override + public AttributeGroupUpdResp getUpdById(Long id) { + AttributeGroup attributeGroup = this.getById(id); + + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(AsAttributeGroup::getGroupId,id); + List asAttributeGroupList = asAttributeGroupService.list(queryWrapper); + List attributeIdList = asAttributeGroupList.stream() + .map(AsAttributeGroup::getAttributeId) + .toList(); + List attributeInfoList = attributeInfoService.listByIds(attributeIdList); + + return AttributeGroupUpdResp.builder() + .id(attributeGroup.getId()) + .name(attributeGroup.getName()) + .states(attributeGroup.getStates()) + .attributeList(attributeInfoList) + .build(); + } } diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/RuleAttrInfoServiceImpl.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/RuleAttrInfoServiceImpl.java index 4b7b712..e109e4d 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/RuleAttrInfoServiceImpl.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/RuleAttrInfoServiceImpl.java @@ -4,6 +4,7 @@ import java.util.List; import com.muyu.common.core.utils.ObjUtils; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.muyu.product.mapper.RuleAttrInfoMapper; import com.muyu.product.domain.RuleAttrInfo; @@ -20,7 +21,8 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; @Slf4j @Service public class RuleAttrInfoServiceImpl extends ServiceImpl implements RuleAttrInfoService { - + @Autowired + private RuleAttrInfoMapper ruleAttrInfoMapper; /** * 查询规格详情列表 * @@ -64,4 +66,15 @@ public class RuleAttrInfoServiceImpl extends ServiceImpl getRuleAttrInfo(Long id) { + List ruleAttrInfos= ruleAttrInfoMapper.getRuleAttrInfo(id); + return ruleAttrInfos; + } + } diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/RuleInfoServiceImpl.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/RuleInfoServiceImpl.java index 0df7cf2..b33d727 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/RuleInfoServiceImpl.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/RuleInfoServiceImpl.java @@ -15,8 +15,10 @@ import com.muyu.common.security.utils.SecurityUtils; import com.muyu.product.domain.RuleAttrInfo; import com.muyu.product.domain.model.RuleAttrAddModel; import com.muyu.product.domain.model.RuleInfoAddModel; +import com.muyu.product.domain.req.RuleAttrInfoReq; import com.muyu.product.domain.req.RuleInfoQueryReq; import com.muyu.product.domain.resp.RuleInfoResp; +import com.muyu.product.mapper.RuleAttrInfoMapper; import com.muyu.product.service.RuleAttrInfoService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -39,6 +41,8 @@ public class RuleInfoServiceImpl extends ServiceImpl @Autowired private RuleAttrInfoService ruleAttrInfoService; + @Autowired + private RuleAttrInfoMapper ruleAttrInfoMapper; /** * 查询商品规格列表 @@ -107,4 +111,55 @@ public class RuleInfoServiceImpl extends ServiceImpl .total(isPage ? new PageInfo<>(list).getTotal() : 0) .build(); } + /** + * 获取商品规格详细信息 + */ + @Override + public RuleInfoAddModel getRuleAttrInfoResp(Long id) { + //获取商品规格 + RuleInfo byId = this.getById(id); + if (byId==null){ + throw new RuntimeException("没有这个商品规格"); + } + List ruleAttrInfos=ruleAttrInfoService.getRuleAttrInfo(byId.getId()); + ArrayList arrayList = new ArrayList<>(); + RuleAttrAddModel ruleAttrAddModel = new RuleAttrAddModel(); + for (RuleAttrInfo ruleAttrInfo : ruleAttrInfos) { + ruleAttrAddModel.setName(ruleAttrInfo.getName()); + } + List list = ruleAttrInfos.stream().map(RuleAttrInfo::getAttrValue).toList(); + ruleAttrAddModel.setValueList(list); + arrayList.add(ruleAttrAddModel); + RuleInfoAddModel resp = new RuleInfoAddModel(); + resp.setId(byId.getId()); + resp.setName(byId.getName()); + resp.setStatus(byId.getStatus()); + resp.setRuleAttrList(arrayList); + return resp; + } + /** + * 修改商品规格 + */ + @Override + public void updateRuleById(Long id, RuleAttrInfoReq req) { + //修改商品规格表 + ruleAttrInfoMapper.updRule(id,req); + //删除规格详情表 + ruleAttrInfoMapper.deleteRule(id); + //添加规格详情表 + List ruleAttrList = req.getRuleAttrList(); + for (RuleAttrAddModel ruleAttrAddModel : ruleAttrList) { + List valueList = ruleAttrAddModel.getValueList(); + String value=""; + String valueData=null; + for (String s : valueList) { + valueData = value + "," + s; + } + String substring = valueData.substring(1); + System.out.println(substring); + ruleAttrInfoMapper.addRuleAttrModel(id,ruleAttrAddModel.getName(),substring); + } + } + + } diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/AttributeGroupMapper.xml b/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/AttributeGroupMapper.xml index c49a785..9afb277 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/AttributeGroupMapper.xml +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/AttributeGroupMapper.xml @@ -27,16 +27,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ( #{id}, #{e}) + + + UPDATE `product`.`attribute_group` + SET + `name` = #{name}, + `states` = #{states} + WHERE + `id` = #{id}; + - - delete from as_attribute_group where - - INSERT INTO `product`.`as_attribute_group` - ( `group_id`, `attribute_id`) VALUES - - - ( #{id}, #{e.}) - - delete + delete from as_attribute_group where group_id =#{id} diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/RuleAttrInfoMapper.xml b/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/RuleAttrInfoMapper.xml index 3186330..e35412b 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/RuleAttrInfoMapper.xml +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/RuleAttrInfoMapper.xml @@ -19,4 +19,35 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" select id, rule_id, name, attr_value, remark, create_by, create_time, update_by, update_time from rule_attr_info + + INSERT INTO rule_attr_info ( `rule_id`, `name`, `attr_value`,create_by, `create_time`) + VALUES ( #{id},#{name}, #{valueData},'admin',now()); + + + + UPDATE rule_info + SET `name` = #{req.name}, + `status` = #{req.status}, + `update_time` = now() + WHERE + `id` = #{id} + + + + delete from rule_attr_info where rule_id=#{id} + +