From 987cc25fc8e4614eda1976f644de00cdc1c2ab60 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=98mahaoran=E2=80=99?= <2570310046@qq.com> Date: Wed, 13 Nov 2024 22:35:58 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AC=AC=E4=B8=80=E6=AC=A1=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../muyu/product/domain/AttributeGroup.java | 3 + .../domain/model/RuleAttrAddModel.java | 2 + .../domain/req/AttributeGroupEditReq.java | 7 ++ .../product/domain/req/RuleInfoEditReq.java | 5 ++ .../domain/resp/AddAttributeGroupResp.java | 13 ++++ .../domain/resp/AttributeGroupUpdResp.java | 30 +++++++++ .../product/domain/resp/FindByIdResp.java | 22 +++++++ .../product/domain/resp/RuleAttrUpdResp.java | 23 +++++++ .../controller/AttributeGroupController.java | 30 ++++++++- .../controller/RuleInfoController.java | 7 +- .../mapper/AsAttributeGroupMapper.java | 29 ++++++++ .../product/mapper/RuleAttrInfoMapper.java | 11 ++++ .../service/AttributeGroupService.java | 28 ++++++++ .../muyu/product/service/RuleInfoService.java | 12 ++++ .../impl/AttributeGroupServiceImpl.java | 66 ++++++++++++++++++- .../service/impl/RuleInfoServiceImpl.java | 32 ++++++++- .../mapper/product/AsAttributeGroupMapper.xml | 13 ++++ .../mapper/product/RuleAttrInfoMapper.xml | 30 +++++++++ 18 files changed, 355 insertions(+), 8 deletions(-) create mode 100644 muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/AddAttributeGroupResp.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/FindByIdResp.java create mode 100644 muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/RuleAttrUpdResp.java diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/AttributeGroup.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/AttributeGroup.java index e9450e2..a6f48ae 100644 --- a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/AttributeGroup.java +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/AttributeGroup.java @@ -49,6 +49,9 @@ public class AttributeGroup extends BaseEntity { @ApiModelProperty(name = "状态", value = "状态", required = true) private String states; + @Excel(name = "备注") + @ApiModelProperty(name = "备注", value = "备注", required = true) + private String remark; /** * 查询构造器 diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/model/RuleAttrAddModel.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/model/RuleAttrAddModel.java index e293352..8dc4982 100644 --- a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/model/RuleAttrAddModel.java +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/model/RuleAttrAddModel.java @@ -30,6 +30,8 @@ public class RuleAttrAddModel extends BaseEntity { */ private String name; + private String attrValue; + /** * 规格属性值集合 */ 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..5d42bef 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,7 +1,12 @@ package com.muyu.product.domain.req; import java.util.Date; +import java.util.List; + import com.fasterxml.jackson.annotation.JsonFormat; +import com.muyu.product.domain.AttributeGroup; +import com.muyu.product.domain.AttributeInfo; +import com.muyu.product.domain.resp.AttributeGroupUpdResp; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; @@ -33,5 +38,7 @@ public class AttributeGroupEditReq extends BaseEntity { @ApiModelProperty(name = "状态", value = "状态", required = true) private String states; + private List attributeList; + } diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/RuleInfoEditReq.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/RuleInfoEditReq.java index bc9d602..620853a 100644 --- a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/RuleInfoEditReq.java +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/RuleInfoEditReq.java @@ -1,5 +1,6 @@ package com.muyu.product.domain.req; +import com.muyu.product.domain.RuleInfo; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; @@ -8,6 +9,8 @@ import lombok.experimental.SuperBuilder; import io.swagger.annotations.*; import com.muyu.common.core.web.domain.BaseEntity; +import java.util.List; + /** * 商品规格对象 rule_info * @@ -31,4 +34,6 @@ public class RuleInfoEditReq extends BaseEntity { @ApiModelProperty(name = "规格状态", value = "规格状态") private String status; + private List ruleInfoList; + } diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/AddAttributeGroupResp.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/AddAttributeGroupResp.java new file mode 100644 index 0000000..1216cb3 --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/AddAttributeGroupResp.java @@ -0,0 +1,13 @@ +package com.muyu.product.domain.resp; + +import lombok.Data; + +import java.util.List; + +@Data +public class AddAttributeGroupResp { + private Long groupId; + private Integer attributeId; + + private List list; +} 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..57082b0 --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/AttributeGroupUpdResp.java @@ -0,0 +1,30 @@ +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.AttributeInfo; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.List; + +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class AttributeGroupUpdResp { + /** 属性组编号 */ + private Long id; + + /** 组名称 */ + private String name; + + /** 状态 */ + private String states; + + private List attributeList; +} diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/FindByIdResp.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/FindByIdResp.java new file mode 100644 index 0000000..e8d9d05 --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/FindByIdResp.java @@ -0,0 +1,22 @@ +package com.muyu.product.domain.resp; + +import lombok.Data; + +import java.util.Date; +import java.util.List; + +@Data +public class FindByIdResp { + private Integer id;//属性组编号 + private String name;//组名称 + private String states;//状态 + private String createBy;//创建人 + private Date createTime;//创建时间 + private String updateBy;//更新人 + private Date updateTime;//更新时间 + private String remark;//备注 + + private String attrId;//属性ID + private String attrName;//属性名称 + +} diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/RuleAttrUpdResp.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/RuleAttrUpdResp.java new file mode 100644 index 0000000..b2f16f7 --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/RuleAttrUpdResp.java @@ -0,0 +1,23 @@ +package com.muyu.product.domain.resp; + +import lombok.Data; + +import java.util.List; + +@Data +public class RuleAttrUpdResp { + + private Long id; + /** + * 规格属性名称 + */ + private String name; + + /** + * 规格属性值集合 + */ + private List valueList; + + + +} 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 bd489a0..b63216e 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 @@ -4,7 +4,10 @@ import java.util.List; import javax.servlet.http.HttpServletResponse; import com.muyu.product.domain.model.AttributeGroupSaveModel; +import com.muyu.product.domain.resp.AddAttributeGroupResp; import com.muyu.product.domain.resp.AttributeGroupPageResp; +import com.muyu.product.domain.resp.AttributeGroupUpdResp; +import com.muyu.product.domain.resp.FindByIdResp; import io.swagger.annotations.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; @@ -74,10 +77,32 @@ 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)); } + /** + * 回显 + * @param id + * @return + */ + @GetMapping("/findById/{id}") + public Result findById(@PathVariable Integer id){ + return Result.success(attributeGroupService.findById(id)); + } + + +// /** +// * 修改属性 +// * @param +// * @return +// */ +// @PostMapping("upd") +// public Result upd(@RequestBody AddAttributeGroupResp addAttributeGroupResp){ +// Result upd = attributeGroupService.upd(addAttributeGroupResp); +// return upd; +// } + /** * 新增属性组 */ @@ -99,6 +124,7 @@ public class AttributeGroupController extends BaseController { @PutMapping("/{id}") @ApiOperation("修改属性组") public Result edit(@PathVariable Long id, @RequestBody AttributeGroupEditReq attributeGroupEditReq) { + attributeGroupService.updateAttibuteGroup(id, attributeGroupEditReq); return toAjax(attributeGroupService.updateById(AttributeGroup.editBuild(id,attributeGroupEditReq))); } 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..2966094 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 @@ -77,10 +77,12 @@ 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) { + Result ruleById = ruleInfoService.getRuleById(id); + return ruleById; } + /** * 新增商品规格 */ @@ -100,6 +102,7 @@ public class RuleInfoController extends BaseController { @PutMapping("/{id}") @ApiOperation("修改商品规格") public Result edit(@PathVariable Long id, @RequestBody RuleInfoEditReq ruleInfoEditReq) { + ruleInfoService.upd(id,ruleInfoEditReq); return toAjax(ruleInfoService.updateById(RuleInfo.editBuild(id,ruleInfoEditReq))); } diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/AsAttributeGroupMapper.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/AsAttributeGroupMapper.java index 1b420df..64da537 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/AsAttributeGroupMapper.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/AsAttributeGroupMapper.java @@ -2,7 +2,13 @@ package com.muyu.product.mapper; import java.util.List; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.muyu.common.core.domain.Result; import com.muyu.product.domain.AsAttributeGroup; +import com.muyu.product.domain.AttributeInfo; +import com.muyu.product.domain.resp.AddAttributeGroupResp; +import com.muyu.product.domain.resp.FindByIdResp; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; /** * 属性与组中间Mapper接口 @@ -10,6 +16,29 @@ import com.muyu.product.domain.AsAttributeGroup; * @author DongZeLiang * @date 2024-02-27 */ +@Mapper public interface AsAttributeGroupMapper extends BaseMapper { + /** + * 回显已有属性 + * @param id + * @return + */ + FindByIdResp findById(Integer id); + + /** + * 删除中间表已有属性 + * @param groupId + * @return + */ + void del(Long groupId); + + /** + * 添加中间表已有属性 + * @param groupId + * @param list + * @return + */ + void add(@Param("groupId") Long groupId , @Param("list") List list); + } 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..82f6ccb 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,10 @@ 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.RuleInfo; +import com.muyu.product.domain.resp.RuleInfoResp; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; /** * 规格详情Mapper接口 @@ -10,6 +14,13 @@ import com.muyu.product.domain.RuleAttrInfo; * @author DongZeLiang * @date 2024-02-27 */ +@Mapper public interface RuleAttrInfoMapper extends BaseMapper { + RuleInfoResp getRuleById(Long id); + + void del(Long id); + + void add(@Param("id") Long id, @Param("ruleInfoList") List ruleInfoList); + } 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 9527f88..eabf31b 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 @@ -2,12 +2,17 @@ package com.muyu.product.service; import java.util.List; +import com.muyu.common.core.domain.Result; import com.muyu.common.core.web.page.TableDataInfo; import com.muyu.product.domain.AttributeGroup; import com.baomidou.mybatisplus.extension.service.IService; import com.muyu.product.domain.AttributeInfo; import com.muyu.product.domain.model.AttributeGroupSaveModel; +import com.muyu.product.domain.req.AttributeGroupEditReq; +import com.muyu.product.domain.resp.AddAttributeGroupResp; import com.muyu.product.domain.resp.AttributeGroupPageResp; +import com.muyu.product.domain.resp.AttributeGroupUpdResp; +import com.muyu.product.domain.resp.FindByIdResp; /** * 属性组Service接口 @@ -39,4 +44,27 @@ public interface AttributeGroupService extends IService { */ public Boolean save(AttributeGroupSaveModel attributeGroupSaveModel); + /** + * 回显规格属性 + * @param id + * @return + */ + FindByIdResp findById(Integer id); + + + /** + * 修改规格属性 + * @param + * @return + */ +// Result upd(AddAttributeGroupResp addAttributeGroupResp); + + /** + * 商品规格回显 + * @param id + * @return + */ + AttributeGroupUpdResp getUpdById(Long id); + + Result updateAttibuteGroup(Long id, AttributeGroupEditReq attributeGroupEditReq); } 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..f8b2a9e 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 @@ -2,10 +2,12 @@ package com.muyu.product.service; import java.util.List; +import com.muyu.common.core.domain.Result; 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.RuleInfoEditReq; import com.muyu.product.domain.req.RuleInfoQueryReq; import com.muyu.product.domain.resp.RuleInfoResp; @@ -32,4 +34,14 @@ public interface RuleInfoService extends IService { public boolean save(RuleInfoAddModel ruleInfoAddModel); TableDataInfo queryList (RuleInfoQueryReq ruleInfoQueryReq); + + /** + * 回显 + * @param id + * @return + */ + Result getRuleById(Long id); + + Result upd(Long id, RuleInfoEditReq ruleInfoEditReq); + } 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 85f52d1..7331cbc 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 @@ -3,13 +3,19 @@ package com.muyu.product.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.github.pagehelper.PageInfo; +import com.muyu.common.core.domain.Result; import com.muyu.common.core.utils.ObjUtils; import com.muyu.common.core.web.page.TableDataInfo; import com.muyu.product.domain.AsAttributeGroup; import com.muyu.product.domain.AttributeGroup; import com.muyu.product.domain.AttributeInfo; import com.muyu.product.domain.model.AttributeGroupSaveModel; +import com.muyu.product.domain.req.AttributeGroupEditReq; +import com.muyu.product.domain.resp.AddAttributeGroupResp; import com.muyu.product.domain.resp.AttributeGroupPageResp; +import com.muyu.product.domain.resp.AttributeGroupUpdResp; +import com.muyu.product.domain.resp.FindByIdResp; +import com.muyu.product.mapper.AsAttributeGroupMapper; import com.muyu.product.mapper.AttributeGroupMapper; import com.muyu.product.service.AsAttributeGroupService; import com.muyu.product.service.AttributeGroupService; @@ -34,11 +40,14 @@ import java.util.stream.Stream; public class AttributeGroupServiceImpl extends ServiceImpl implements AttributeGroupService { @Autowired - private AsAttributeGroupService attributeGroupService; + private AsAttributeGroupService asAttributeGroupService; @Autowired private AttributeInfoService attributeInfoService; + @Autowired + private AsAttributeGroupMapper asAttributeGroupMapper; + /** * 分页查询 * @@ -100,11 +109,64 @@ public class AttributeGroupServiceImpl extends ServiceImpl attributeIdList = attributeGroupSaveModel.getAttributeIdList(); - attributeGroupService.saveBatch( + asAttributeGroupService.saveBatch( attributeIdList.stream() .map(attributeId -> AsAttributeGroup.buildGroup(attributeGroupId, attributeId)) .toList() ); return save; } + + @Override + public FindByIdResp findById(Integer id) { + return asAttributeGroupMapper.findById(id); + } + + + /** + * 修改规格属性 + * @param + * @return + */ +// @Transactional +// @Override +// public Result upd(AddAttributeGroupResp addAttributeGroupResp) { +//// asAttributeGroupMapper.del(addAttributeGroupResp.getGroupId()); +//// asAttributeGroupMapper.add(addAttributeGroupResp.getGroupId(),addAttributeGroupResp.getList()); +// return Result.success(0,"修改成功"); +// } + + /** + * 商品规格属性回显 + * @param id + * @return + */ + @Override + public AttributeGroupUpdResp getUpdById(Long id) { + //查询编号 + AttributeGroup attributeGroup = this.getById(id); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(AsAttributeGroup::getGroupId, id); + List asAttributeGroups = asAttributeGroupService.list(queryWrapper); + List attributeList = asAttributeGroups.stream() + .map(AsAttributeGroup::getAttributeId) + .toList(); + List attributeInfoList = attributeInfoService.listByIds(attributeList); + + return AttributeGroupUpdResp.builder() + .id(attributeGroup.getId()) + .name(attributeGroup.getName()) + .states(attributeGroup.getStates()) + .attributeList(attributeInfoList).build(); + + + } + + @Transactional + @Override + public Result updateAttibuteGroup(Long id, AttributeGroupEditReq attributeGroupEditReq) { + asAttributeGroupMapper.del(id); + asAttributeGroupMapper.add(id,attributeGroupEditReq.getAttributeList()); + return Result.success(0,"修改成功"); + } } 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..821546a 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 @@ -5,27 +5,32 @@ import java.util.Date; import java.util.List; import java.util.function.Function; import java.util.stream.Collectors; +import java.util.stream.Stream; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; +import com.muyu.common.core.domain.Result; import com.muyu.common.core.text.Convert; import com.muyu.common.core.utils.ObjUtils; import com.muyu.common.core.web.page.TableDataInfo; import com.muyu.common.security.utils.SecurityUtils; -import com.muyu.product.domain.RuleAttrInfo; +import com.muyu.product.domain.*; import com.muyu.product.domain.model.RuleAttrAddModel; import com.muyu.product.domain.model.RuleInfoAddModel; +import com.muyu.product.domain.req.RuleInfoEditReq; import com.muyu.product.domain.req.RuleInfoQueryReq; +import com.muyu.product.domain.resp.AttributeGroupUpdResp; 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; import org.springframework.stereotype.Service; import com.muyu.product.mapper.RuleInfoMapper; -import com.muyu.product.domain.RuleInfo; import com.muyu.product.service.RuleInfoService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import org.springframework.transaction.annotation.Transactional; /** * 商品规格Service业务层处理 @@ -40,6 +45,9 @@ public class RuleInfoServiceImpl extends ServiceImpl @Autowired private RuleAttrInfoService ruleAttrInfoService; + @Autowired + private RuleAttrInfoMapper ruleAttrInfoMapper; + /** * 查询商品规格列表 * @@ -107,4 +115,24 @@ public class RuleInfoServiceImpl extends ServiceImpl .total(isPage ? new PageInfo<>(list).getTotal() : 0) .build(); } + + @Override + public Result getRuleById(Long id) { + RuleInfoResp getRuleById = ruleAttrInfoMapper.getRuleById(id); + List ruleAttrList = getRuleById.getRuleAttrList(); + for (RuleAttrAddModel ruleAttrAddModel : ruleAttrList) { + String attrValue = ruleAttrAddModel.getAttrValue(); + String[] split = attrValue.split(","); + ruleAttrAddModel.setValueList(List.of(split)); + } + return Result.success(getRuleById); + } + + @Transactional + @Override + public Result upd(Long id, RuleInfoEditReq ruleInfoEditReq) { + ruleAttrInfoMapper.del(id); + ruleAttrInfoMapper.add(id,ruleInfoEditReq.getRuleInfoList()); + return Result.success(0,"修改成功"); + } } diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/AsAttributeGroupMapper.xml b/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/AsAttributeGroupMapper.xml index 05c468d..dc30ba4 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/AsAttributeGroupMapper.xml +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/AsAttributeGroupMapper.xml @@ -18,4 +18,17 @@ select id, group_id, attribute_id, remark, create_by, create_time, update_by, update_time from as_attribute_group + + INSERT INTO `as_attribute_group` ( `group_id`, `attribute_id`) VALUES + + (#{groupId},#{list.id}) + + + + + delete from as_attribute_group where group_id =#{groupId} + + 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..2970da8 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 @@ -16,7 +16,37 @@ 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 + + + + + delete from rule_attr_info where rule_id = #{id} + + + +