规格属性回显

master
崔福波 2024-11-14 16:21:47 +08:00
parent d0e494b040
commit 2d98f71aee
4 changed files with 83 additions and 22 deletions

View File

@ -0,0 +1,45 @@
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.model.RuleAttrAddModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
/**
* @Authorcuifubo
* @Packagecom.muyu.product.domain.resp
* @Projectcloud-server
* @nameRuleInfoUpdResp
* @Date2024.11.14 16:10
*/
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class RuleInfoUpdResp {
/** 主键 */
@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<RuleAttrAddModel> ruleAttrList;
}

View File

@ -7,6 +7,7 @@ import com.muyu.common.core.text.Convert;
import com.muyu.product.domain.model.RuleInfoAddModel;
import com.muyu.product.domain.resp.RuleAttributeResp;
import com.muyu.product.domain.resp.RuleInfoResp;
import com.muyu.product.domain.resp.RuleInfoUpdResp;
import io.swagger.annotations.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
@ -78,9 +79,8 @@ 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<RuleInfoAddModel> getInfo(@PathVariable("id") Long id) {
RuleInfoAddModel updById = ruleInfoService.getUpdById(id);
return Result.success(updById);
public Result<RuleInfoUpdResp> getInfo(@PathVariable("id") Long id) {
return Result.success(ruleInfoService.getUpdById(id));
}
/**

View File

@ -9,6 +9,7 @@ import com.muyu.product.domain.model.RuleInfoAddModel;
import com.muyu.product.domain.req.RuleInfoQueryReq;
import com.muyu.product.domain.resp.RuleAttributeResp;
import com.muyu.product.domain.resp.RuleInfoResp;
import com.muyu.product.domain.resp.RuleInfoUpdResp;
/**
* Service
@ -35,5 +36,5 @@ public interface RuleInfoService extends IService<RuleInfo> {
TableDataInfo<RuleInfoResp> queryList (RuleInfoQueryReq ruleInfoQueryReq);
RuleInfoAddModel getUpdById(Long id);
RuleInfoUpdResp getUpdById(Long id);
}

View File

@ -19,6 +19,7 @@ import com.muyu.product.domain.model.RuleInfoAddModel;
import com.muyu.product.domain.req.RuleInfoQueryReq;
import com.muyu.product.domain.resp.RuleAttributeResp;
import com.muyu.product.domain.resp.RuleInfoResp;
import com.muyu.product.domain.resp.RuleInfoUpdResp;
import com.muyu.product.service.RuleAttrInfoService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
@ -111,28 +112,42 @@ public class RuleInfoServiceImpl extends ServiceImpl<RuleInfoMapper, RuleInfo>
}
@Override
public RuleInfoAddModel getUpdById(Long id) {
public RuleInfoUpdResp getUpdById(Long id) {
RuleInfo byId = this.getById(id);
List<RuleAttrInfo> infoByRuleId = ruleAttrInfoService.getRuleInfo(byId.getId());
ArrayList<RuleAttrAddModel> ruleAttrAddModels = new ArrayList<>();
RuleAttrAddModel ruleAttrAddModel = new RuleAttrAddModel();
for (RuleAttrInfo ruleAttrInfo : infoByRuleId) {
ruleAttrAddModel.setName(ruleAttrInfo.getName());
}
LambdaQueryWrapper<RuleAttrInfo> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(RuleAttrInfo::getRuleId,id);
List<RuleAttrInfo> attrInfoList = this.ruleAttrInfoService.list(queryWrapper);
List<String> list = infoByRuleId.stream()
.map(RuleAttrInfo::getAttrValue)
.toList();
ruleAttrAddModel.setValueList(list);
ruleAttrAddModels.add(ruleAttrAddModel);
RuleInfoAddModel updById = new RuleInfoAddModel();
updById.setId(byId.getId());
updById.setName(byId.getName());
updById.setStatus(byId.getStatus());
updById.setRuleAttrList(ruleAttrAddModels);
return updById;
return RuleInfoUpdResp.builder()
.id(byId.getId())
.name(byId.getName())
.status(byId.getStatus())
.ruleAttrList(attrInfoList.stream().map(RuleAttrAddModel::infoBuild).toList())
.build();
}
// RuleInfo byId = this.getById(id);
//
// List<RuleAttrInfo> infoByRuleId = ruleAttrInfoService.getRuleInfo(byId.getId());
// ArrayList<RuleAttrAddModel> ruleAttrAddModels = new ArrayList<>();
// RuleAttrAddModel ruleAttrAddModel = new RuleAttrAddModel();
// for (RuleAttrInfo ruleAttrInfo : infoByRuleId) {
// ruleAttrAddModel.setName(ruleAttrInfo.getName());
// }
//
// List<String> list = infoByRuleId.stream()
// .map(RuleAttrInfo::getAttrValue)
// .toList();
// ruleAttrAddModel.setValueList(list);
// ruleAttrAddModels.add(ruleAttrAddModel);
// RuleInfoAddModel updById = new RuleInfoAddModel();
// updById.setId(byId.getId());
// updById.setName(byId.getName());
// updById.setStatus(byId.getStatus());
// updById.setRuleAttrList(ruleAttrAddModels);
// return updById;
}