master
parent
af3fe56aa6
commit
382e38c56b
|
@ -17,6 +17,7 @@ import com.muyu.product.domain.req.RuleInfoEditReq;
|
||||||
import com.muyu.common.core.web.domain.BaseEntity;
|
import com.muyu.common.core.web.domain.BaseEntity;
|
||||||
|
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
import java.util.function.Supplier;
|
import java.util.function.Supplier;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -51,6 +52,8 @@ public class RuleInfo extends BaseEntity {
|
||||||
@ApiModelProperty(name = "规格状态", value = "规格状态")
|
@ApiModelProperty(name = "规格状态", value = "规格状态")
|
||||||
private String status;
|
private String status;
|
||||||
|
|
||||||
|
private List<RuleInfo> ruleInfoList;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询构造器
|
* 查询构造器
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
package com.muyu.product.domain.req;
|
package com.muyu.product.domain.req;
|
||||||
|
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
|
@ -32,4 +34,6 @@ public class AttributeGroupEditReq extends BaseEntity {
|
||||||
/** 状态 */
|
/** 状态 */
|
||||||
@ApiModelProperty(name = "状态", value = "状态", required = true)
|
@ApiModelProperty(name = "状态", value = "状态", required = true)
|
||||||
private String states;
|
private String states;
|
||||||
|
|
||||||
|
private List<AttributeInfoSaveReq> attributeList;
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,31 @@
|
||||||
|
package com.muyu.product.domain.resp;
|
||||||
|
|
||||||
|
import com.muyu.product.domain.AttributeInfo;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改回显详情信息
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
@AllArgsConstructor
|
||||||
|
@NoArgsConstructor
|
||||||
|
public class AttributeGroupUpdResp {
|
||||||
|
|
||||||
|
/** 属性组编号 */
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
/** 组名称 */
|
||||||
|
private String name;
|
||||||
|
|
||||||
|
/** 状态 */
|
||||||
|
private String states;
|
||||||
|
|
||||||
|
/** id集合*/
|
||||||
|
private List<AttributeInfo> attributeList;
|
||||||
|
}
|
|
@ -5,6 +5,7 @@ import javax.servlet.http.HttpServletResponse;
|
||||||
|
|
||||||
import com.muyu.product.domain.model.AttributeGroupSaveModel;
|
import com.muyu.product.domain.model.AttributeGroupSaveModel;
|
||||||
import com.muyu.product.domain.resp.AttributeGroupPageResp;
|
import com.muyu.product.domain.resp.AttributeGroupPageResp;
|
||||||
|
import com.muyu.product.domain.resp.AttributeGroupUpdResp;
|
||||||
import io.swagger.annotations.*;
|
import io.swagger.annotations.*;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
|
@ -74,8 +75,8 @@ public class AttributeGroupController extends BaseController {
|
||||||
@RequiresPermissions("product:attributeGroup:query")
|
@RequiresPermissions("product:attributeGroup:query")
|
||||||
@GetMapping(value = "/{id}")
|
@GetMapping(value = "/{id}")
|
||||||
@ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long", paramType = "path", dataTypeClass = Long.class)
|
@ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long", paramType = "path", dataTypeClass = Long.class)
|
||||||
public Result<AttributeGroup> getInfo(@PathVariable("id") Long id) {
|
public Result<AttributeGroupUpdResp> getInfo(@PathVariable("id") Long id) {
|
||||||
return Result.success(attributeGroupService.getById(id));
|
return Result.success(attributeGroupService.getUpdById(id));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -99,6 +100,7 @@ public class AttributeGroupController extends BaseController {
|
||||||
@PutMapping("/{id}")
|
@PutMapping("/{id}")
|
||||||
@ApiOperation("修改属性组")
|
@ApiOperation("修改属性组")
|
||||||
public Result<String> edit(@PathVariable Long id, @RequestBody AttributeGroupEditReq attributeGroupEditReq) {
|
public Result<String> edit(@PathVariable Long id, @RequestBody AttributeGroupEditReq attributeGroupEditReq) {
|
||||||
|
attributeGroupService.updAttributeGroupInfo(id,attributeGroupEditReq);
|
||||||
return toAjax(attributeGroupService.updateById(AttributeGroup.editBuild(id,attributeGroupEditReq)));
|
return toAjax(attributeGroupService.updateById(AttributeGroup.editBuild(id,attributeGroupEditReq)));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -113,4 +115,6 @@ public class AttributeGroupController extends BaseController {
|
||||||
public Result<String> remove(@PathVariable List<Long> ids) {
|
public Result<String> remove(@PathVariable List<Long> ids) {
|
||||||
return toAjax(attributeGroupService.removeBatchByIds(ids));
|
return toAjax(attributeGroupService.removeBatchByIds(ids));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,16 @@
|
||||||
|
package com.muyu.product.mapper;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import com.muyu.product.domain.AttributeGroup;
|
||||||
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
import org.mybatis.spring.annotation.MapperScan;
|
||||||
|
|
||||||
|
@Mapper
|
||||||
|
public interface AsAttributeGroupInfoMapper{
|
||||||
|
|
||||||
|
void delAttributeInfo(Long id);
|
||||||
|
|
||||||
|
|
||||||
|
void addAttributeInfo(@Param("id") Long id, @Param("ids") Long ids);
|
||||||
|
}
|
|
@ -7,7 +7,9 @@ import com.muyu.product.domain.AttributeGroup;
|
||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
import com.muyu.product.domain.AttributeInfo;
|
import com.muyu.product.domain.AttributeInfo;
|
||||||
import com.muyu.product.domain.model.AttributeGroupSaveModel;
|
import com.muyu.product.domain.model.AttributeGroupSaveModel;
|
||||||
|
import com.muyu.product.domain.req.AttributeGroupEditReq;
|
||||||
import com.muyu.product.domain.resp.AttributeGroupPageResp;
|
import com.muyu.product.domain.resp.AttributeGroupPageResp;
|
||||||
|
import com.muyu.product.domain.resp.AttributeGroupUpdResp;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 属性组Service接口
|
* 属性组Service接口
|
||||||
|
@ -39,4 +41,12 @@ public interface AttributeGroupService extends IService<AttributeGroup> {
|
||||||
*/
|
*/
|
||||||
public Boolean save(AttributeGroupSaveModel attributeGroupSaveModel);
|
public Boolean save(AttributeGroupSaveModel attributeGroupSaveModel);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 回显属性详情
|
||||||
|
* @param id
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
AttributeGroupUpdResp getUpdById(Long id);
|
||||||
|
|
||||||
|
void updAttributeGroupInfo(Long id, AttributeGroupEditReq attributeGroupEditReq);
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,7 +9,11 @@ import com.muyu.product.domain.AsAttributeGroup;
|
||||||
import com.muyu.product.domain.AttributeGroup;
|
import com.muyu.product.domain.AttributeGroup;
|
||||||
import com.muyu.product.domain.AttributeInfo;
|
import com.muyu.product.domain.AttributeInfo;
|
||||||
import com.muyu.product.domain.model.AttributeGroupSaveModel;
|
import com.muyu.product.domain.model.AttributeGroupSaveModel;
|
||||||
|
import com.muyu.product.domain.req.AttributeGroupEditReq;
|
||||||
|
import com.muyu.product.domain.req.AttributeInfoSaveReq;
|
||||||
import com.muyu.product.domain.resp.AttributeGroupPageResp;
|
import com.muyu.product.domain.resp.AttributeGroupPageResp;
|
||||||
|
import com.muyu.product.domain.resp.AttributeGroupUpdResp;
|
||||||
|
import com.muyu.product.mapper.AsAttributeGroupInfoMapper;
|
||||||
import com.muyu.product.mapper.AttributeGroupMapper;
|
import com.muyu.product.mapper.AttributeGroupMapper;
|
||||||
import com.muyu.product.service.AsAttributeGroupService;
|
import com.muyu.product.service.AsAttributeGroupService;
|
||||||
import com.muyu.product.service.AttributeGroupService;
|
import com.muyu.product.service.AttributeGroupService;
|
||||||
|
@ -34,11 +38,14 @@ import java.util.stream.Stream;
|
||||||
public class AttributeGroupServiceImpl extends ServiceImpl<AttributeGroupMapper, AttributeGroup> implements AttributeGroupService {
|
public class AttributeGroupServiceImpl extends ServiceImpl<AttributeGroupMapper, AttributeGroup> implements AttributeGroupService {
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private AsAttributeGroupService attributeGroupService;
|
private AsAttributeGroupService asAttributeGroupService;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private AttributeInfoService attributeInfoService;
|
private AttributeInfoService attributeInfoService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private AsAttributeGroupInfoMapper asAttributeGroupInfoMapper;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 分页查询
|
* 分页查询
|
||||||
*
|
*
|
||||||
|
@ -100,11 +107,35 @@ public class AttributeGroupServiceImpl extends ServiceImpl<AttributeGroupMapper,
|
||||||
Long attributeGroupId = attributeGroup.getId();
|
Long attributeGroupId = attributeGroup.getId();
|
||||||
List<Long> attributeIdList = attributeGroupSaveModel.getAttributeIdList();
|
List<Long> attributeIdList = attributeGroupSaveModel.getAttributeIdList();
|
||||||
|
|
||||||
attributeGroupService.saveBatch(
|
asAttributeGroupService.saveBatch(
|
||||||
attributeIdList.stream()
|
attributeIdList.stream()
|
||||||
.map(attributeId -> AsAttributeGroup.buildGroup(attributeGroupId, attributeId))
|
.map(attributeId -> AsAttributeGroup.buildGroup(attributeGroupId, attributeId))
|
||||||
.toList()
|
.toList()
|
||||||
);
|
);
|
||||||
return save;
|
return save;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AttributeGroupUpdResp getUpdById(Long id) {
|
||||||
|
AttributeGroup attributeGroup = this.getById(id);
|
||||||
|
LambdaQueryWrapper<AsAttributeGroup> queryWrapper = new LambdaQueryWrapper<>();
|
||||||
|
queryWrapper.eq(AsAttributeGroup::getGroupId, id);
|
||||||
|
List<AsAttributeGroup> asAttributeGroupList = asAttributeGroupService.list(queryWrapper);
|
||||||
|
List<Long> attributeIdList = asAttributeGroupList.stream().map(AsAttributeGroup::getAttributeId).toList();
|
||||||
|
List<AttributeInfo> attributeInfoList = attributeInfoService.listByIds(attributeIdList);
|
||||||
|
return AttributeGroupUpdResp.builder()
|
||||||
|
.id(attributeGroup.getId())
|
||||||
|
.name(attributeGroup.getName())
|
||||||
|
.states(attributeGroup.getStates())
|
||||||
|
.attributeList(attributeInfoList).build();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void updAttributeGroupInfo(Long id, AttributeGroupEditReq attributeGroupEditReq) {
|
||||||
|
asAttributeGroupInfoMapper.delAttributeInfo(id);
|
||||||
|
List<AttributeInfoSaveReq> attributeLists = attributeGroupEditReq.getAttributeList();
|
||||||
|
for (AttributeInfoSaveReq attributeList : attributeLists) {
|
||||||
|
asAttributeGroupInfoMapper.addAttributeInfo(id,attributeList.getId());
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
|
<!DOCTYPE mapper
|
||||||
|
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
|
<mapper namespace="com.muyu.product.mapper.AsAttributeGroupInfoMapper">
|
||||||
|
<insert id="addAttributeInfo">
|
||||||
|
insert into as_attribute_group (group_id,attribute_id) values (#{id},#{ids})
|
||||||
|
</insert>
|
||||||
|
|
||||||
|
<delete id="delAttributeInfo">
|
||||||
|
delete from as_attribute_group where group_id=#{id}
|
||||||
|
</delete>
|
||||||
|
|
||||||
|
</mapper>
|
Loading…
Reference in New Issue