规格属性回显

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.model.RuleInfoAddModel;
import com.muyu.product.domain.resp.RuleAttributeResp; import com.muyu.product.domain.resp.RuleAttributeResp;
import com.muyu.product.domain.resp.RuleInfoResp; import com.muyu.product.domain.resp.RuleInfoResp;
import com.muyu.product.domain.resp.RuleInfoUpdResp;
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;
@ -78,9 +79,8 @@ public class RuleInfoController extends BaseController {
@RequiresPermissions("product:rule:query") @RequiresPermissions("product:rule: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<RuleInfoAddModel> getInfo(@PathVariable("id") Long id) { public Result<RuleInfoUpdResp> getInfo(@PathVariable("id") Long id) {
RuleInfoAddModel updById = ruleInfoService.getUpdById(id); return Result.success(ruleInfoService.getUpdById(id));
return Result.success(updById);
} }
/** /**

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