refactor(params): 重构机型参数相关数据结构与方法
- 注释和禁用旧的ProductModelParamsItemService接口方法 - 将ProductModelParamsItemAddRequest新增字段和校验完善 - 修改ProductModelParamsItemUpdateRequest1继承关系,改为继承更新后的AddRequest - ProductModelParamsItemVO新增多个字段,支持描述、类型、图片等属性 - ProductModelParamsItemServiceImpl中禁用旧实现代码,统一注释处理 - ProductModelController中调整新增和更新机型参数项的逻辑 - ProductModelParamsDataMapper.xml修正SQL拼接条件,改为使用batchNumber匹配 - QuotationModelPriceServiceImpl中根据batchNumber替换configItemId关联逻辑 - 删除不再使用的ProductModelParamsAddRequest类文件
This commit is contained in:
parent
73206d7ca4
commit
25eca66b56
|
|
@ -417,16 +417,12 @@ public class ProductModelController extends ControllerBase {
|
|||
*/
|
||||
@Transactional
|
||||
@PostMapping("/addParamsItem")
|
||||
public ApiResult<Integer> addParamsItem(@Valid @RequestBody ProductModelParamsItemAddRequest1 request) {
|
||||
VUtils.trueThrowBusinessError(Objects.isNull(request.getModelParamsId())).throwMessage("机型参数id不能为空");
|
||||
public ApiResult<Integer> addParamsItem(@Valid @RequestBody ProductModelParamsItemAddRequest request) {
|
||||
// VUtils.trueThrowBusinessError(Objects.isNull(request.getModelParamsId())).throwMessage("机型参数id不能为空");
|
||||
ProductModelParams info = productModelParamsService.getById(request.getModelParamsId());
|
||||
VUtils.trueThrowBusinessError(Objects.isNull(info)).throwMessage("无效的数据");
|
||||
// 查找父级指标节点
|
||||
ProductModelParamsData parentData = productModelParamsDataService.lambdaQuery()
|
||||
.eq(ProductModelParamsData::getParamsId, request.getModelParamsId())
|
||||
.eq(ProductModelParamsData::getParentId, 0)
|
||||
.eq(ProductModelParamsData::getName, request.getIndexName())
|
||||
.one();
|
||||
ProductModelParamsData parentData = productModelParamsDataService.getById(request.getParentId());
|
||||
VUtils.trueThrowBusinessError(Objects.isNull(parentData)).throwMessage("指标不存在");
|
||||
// 重复校验:同一指标下同名参数
|
||||
VUtils.trueThrowBusinessError(
|
||||
|
|
@ -439,13 +435,13 @@ public class ProductModelController extends ControllerBase {
|
|||
// 写时复制
|
||||
if (Objects.equals(info.getState(), PublishState.Published.getState())) {
|
||||
Integer oldId = request.getModelParamsId();
|
||||
request.setModelParamsId(productModelParamsService.add(request.getModelId(), info.getBatchNumber()));
|
||||
request.setModelParamsId(productModelParamsService.add(info.getModelId(), info.getBatchNumber()));
|
||||
productModelParamsService.copyItems(oldId, request.getModelParamsId());
|
||||
// 重新查找新版本中的父节点
|
||||
parentData = productModelParamsDataService.lambdaQuery()
|
||||
.eq(ProductModelParamsData::getParamsId, request.getModelParamsId())
|
||||
.eq(ProductModelParamsData::getParentId, 0)
|
||||
.eq(ProductModelParamsData::getName, request.getIndexName())
|
||||
.eq(ProductModelParamsData::getName, parentData.getName())
|
||||
.one();
|
||||
}
|
||||
// 保存 ProductModelParamsData 子节点(默认语言数据)
|
||||
|
|
@ -458,6 +454,13 @@ public class ProductModelController extends ControllerBase {
|
|||
.setImportant(request.getImportant())
|
||||
.setCompare(request.getCompare())
|
||||
.setIco(request.getIco())
|
||||
.setType(request.getType())
|
||||
.setOptionalType(request.getOptionalType())
|
||||
.setRemark(request.getRemark())
|
||||
.setImageUrl(request.getImageUrl())
|
||||
.setGroupName(request.getGroupName())
|
||||
.setShippingDimensions(request.getShippingDimensions())
|
||||
.setWeight(request.getWeight())
|
||||
.setCreateBy(AdminUserUtil.getUserName())
|
||||
.setCreateTime(LocalDateTime.now());
|
||||
productModelParamsDataService.save(data);
|
||||
|
|
@ -491,7 +494,6 @@ public class ProductModelController extends ControllerBase {
|
|||
@Transactional
|
||||
@PostMapping("/updateParamsItem")
|
||||
public ApiResult<ParamsItemVO> updateParamsItem(@Valid @RequestBody ProductModelParamsItemUpdateRequest1 request) {
|
||||
VUtils.trueThrowBusinessError(Objects.isNull(request.getModelParamsId())).throwMessage("机型参数id不能为空");
|
||||
ProductModelParams info = productModelParamsService.getById(request.getModelParamsId());
|
||||
VUtils.trueThrowBusinessError(Objects.isNull(info)).throwMessage("无效的数据");
|
||||
Long dataId = request.getModelParamsItemId();
|
||||
|
|
@ -511,7 +513,7 @@ public class ProductModelController extends ControllerBase {
|
|||
// 写时复制
|
||||
if (Objects.equals(info.getState(), PublishState.Published.getState())) {
|
||||
Integer oldId = request.getModelParamsId();
|
||||
request.setModelParamsId(productModelParamsService.add(request.getModelId(), info.getBatchNumber()));
|
||||
request.setModelParamsId(productModelParamsService.add(info.getModelId(), info.getBatchNumber()));
|
||||
productModelParamsService.copyItems(oldId, request.getModelParamsId());
|
||||
// 在新版本中找到对应的数据记录
|
||||
ProductModelParamsData newData = productModelParamsDataService.lambdaQuery()
|
||||
|
|
@ -534,6 +536,13 @@ public class ProductModelController extends ControllerBase {
|
|||
.set(ProductModelParamsData::getImportant, request.getImportant())
|
||||
.set(ProductModelParamsData::getCompare, request.getCompare())
|
||||
.set(ProductModelParamsData::getIco, request.getIco())
|
||||
.set(ProductModelParamsData::getType, request.getType())
|
||||
.set(ProductModelParamsData::getOptionalType, request.getOptionalType())
|
||||
.set(ProductModelParamsData::getRemark, request.getRemark())
|
||||
.set(ProductModelParamsData::getImageUrl, request.getImageUrl())
|
||||
.set(ProductModelParamsData::getGroupName, request.getGroupName())
|
||||
.set(ProductModelParamsData::getShippingDimensions, request.getShippingDimensions())
|
||||
.set(ProductModelParamsData::getWeight, request.getWeight())
|
||||
.set(ProductModelParamsData::getUpdateBy, AdminUserUtil.getUserName())
|
||||
.set(ProductModelParamsData::getUpdateTime, LocalDateTime.now())
|
||||
.eq(ProductModelParamsData::getId, dataId)
|
||||
|
|
|
|||
|
|
@ -1,22 +0,0 @@
|
|||
package com.nflg.mobilebroken.common.pojo.request;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class ProductModelParamsAddRequest {
|
||||
|
||||
private Integer id;
|
||||
|
||||
/**
|
||||
* 机型ID
|
||||
*/
|
||||
@NotNull
|
||||
private Integer modelId;
|
||||
|
||||
@NotEmpty
|
||||
private List<ProductModelParamsItemAddRequest> items;
|
||||
}
|
||||
|
|
@ -5,28 +5,36 @@ import com.fasterxml.jackson.annotation.JsonIgnore;
|
|||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
@Data
|
||||
public class ProductModelParamsItemAddRequest implements Serializable {
|
||||
|
||||
/**
|
||||
* 语言编码
|
||||
* 父级ID
|
||||
*/
|
||||
@NotBlank
|
||||
private String languageCode;
|
||||
@NotNull(message = "父级ID不能为空")
|
||||
private Long parentId;
|
||||
|
||||
/**
|
||||
* 指标名称
|
||||
* 机型参数id
|
||||
*/
|
||||
@NotBlank
|
||||
private String indexName;
|
||||
@NotNull(message = "机型参数id不能为空")
|
||||
private Integer modelParamsId;
|
||||
|
||||
/**
|
||||
* 语言编码
|
||||
*/
|
||||
@NotBlank(message = "语言编码不能为空")
|
||||
private String languageCode;
|
||||
|
||||
/**
|
||||
* 批次号
|
||||
*/
|
||||
@JsonIgnore
|
||||
private String batchNumber= IdUtil.getSnowflakeNextIdStr();
|
||||
private Long batchNumber = IdUtil.getSnowflakeNextId();
|
||||
|
||||
/**
|
||||
* 参数名称
|
||||
|
|
@ -41,20 +49,56 @@ public class ProductModelParamsItemAddRequest implements Serializable {
|
|||
/**
|
||||
* 是否主要参数
|
||||
*/
|
||||
private Boolean main=false;
|
||||
private Boolean main = false;
|
||||
|
||||
/**
|
||||
* 是否重要参数
|
||||
*/
|
||||
private Boolean important=false;
|
||||
private Boolean important = false;
|
||||
|
||||
/**
|
||||
* 是否参与比较
|
||||
*/
|
||||
private Boolean compare=true;
|
||||
private Boolean compare = true;
|
||||
|
||||
/**
|
||||
* 图标
|
||||
*/
|
||||
private String ico;
|
||||
|
||||
/**
|
||||
* 描述
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 类别,0:可选配置;1:标准配置
|
||||
*/
|
||||
@NotNull(message = "类别不能为空")
|
||||
private Integer type;
|
||||
|
||||
/**
|
||||
* 选配类别,0:新增可选;1:替换可选
|
||||
*/
|
||||
private Integer optionalType;
|
||||
|
||||
/**
|
||||
* 图片
|
||||
*/
|
||||
private String imageUrl;
|
||||
|
||||
/**
|
||||
* 分组名称,同组的可选配置替换
|
||||
*/
|
||||
private String groupName;
|
||||
|
||||
/**
|
||||
* 运输尺寸
|
||||
*/
|
||||
private String shippingDimensions;
|
||||
|
||||
/**
|
||||
* 重量
|
||||
*/
|
||||
private BigDecimal weight;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ import lombok.Data;
|
|||
import javax.validation.constraints.NotNull;
|
||||
|
||||
@Data
|
||||
public class ProductModelParamsItemUpdateRequest1 extends ProductModelParamsItemAddRequest1 {
|
||||
public class ProductModelParamsItemUpdateRequest1 extends ProductModelParamsItemAddRequest {
|
||||
|
||||
/**
|
||||
* 机型参数项id
|
||||
|
|
|
|||
|
|
@ -1,8 +1,11 @@
|
|||
package com.nflg.mobilebroken.common.pojo.vo;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.FieldStrategy;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Data
|
||||
|
|
@ -46,6 +49,41 @@ public class ProductParamsItemVO {
|
|||
*/
|
||||
private String ico;
|
||||
|
||||
/**
|
||||
* 描述
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 类别,0:可选配置;1:标准配置
|
||||
*/
|
||||
private Integer type;
|
||||
|
||||
/**
|
||||
* 选配类别,0:新增可选;1:替换可选
|
||||
*/
|
||||
private Integer optionalType;
|
||||
|
||||
/**
|
||||
* 图片
|
||||
*/
|
||||
private String imageUrl;
|
||||
|
||||
/**
|
||||
* 分组名称,同组的可选配置替换
|
||||
*/
|
||||
private String groupName;
|
||||
|
||||
/**
|
||||
* 运输尺寸
|
||||
*/
|
||||
private String shippingDimensions;
|
||||
|
||||
/**
|
||||
* 重量
|
||||
*/
|
||||
private BigDecimal weight;
|
||||
|
||||
/**
|
||||
* 创建人
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -24,25 +24,25 @@ public interface IProductModelParamsItemService extends IService<ProductModelPar
|
|||
|
||||
// void update(Integer paramsId, @NotEmpty List<ProductModelParamsItemAddRequest> items);
|
||||
|
||||
void deleteByParamsIds(@NotEmpty List<Integer> ids);
|
||||
|
||||
List<ProductModelMainParamsItemVO> getMainList(Integer modelParamsId);
|
||||
|
||||
List<ProductModelParamsItemVO> getList(Integer modelParamsId);
|
||||
|
||||
void addIndexName(@Valid ProductModelParamsNameAddRequest request);
|
||||
|
||||
void addItem(@Valid List<ProductModelParamsItemAddRequest1> request);
|
||||
|
||||
void updateIndexName(@Valid ProductModelParamsNameUpdateRequest request);
|
||||
|
||||
void deleteParam(@Valid ProductModelParamsItemDeleteRequest request);
|
||||
|
||||
// void importModelParamsItem(@Valid @NotNull Integer modelParamsId, List<ProductModelParamsExcelDTO> datas);
|
||||
|
||||
void updateItem(@Valid ProductModelParamsItemUpdateRequest1 request);
|
||||
|
||||
void deleteIndexName(@Valid ParamsIndexNameDeleteRequest request);
|
||||
|
||||
List<ProductModelParamsItem> getForQuotation(Long configId);
|
||||
// void deleteByParamsIds(@NotEmpty List<Integer> ids);
|
||||
//
|
||||
// List<ProductModelMainParamsItemVO> getMainList(Integer modelParamsId);
|
||||
//
|
||||
// List<ProductModelParamsItemVO> getList(Integer modelParamsId);
|
||||
//
|
||||
// void addIndexName(@Valid ProductModelParamsNameAddRequest request);
|
||||
//
|
||||
// void addItem(@Valid List<ProductModelParamsItemAddRequest1> request);
|
||||
//
|
||||
// void updateIndexName(@Valid ProductModelParamsNameUpdateRequest request);
|
||||
//
|
||||
// void deleteParam(@Valid ProductModelParamsItemDeleteRequest request);
|
||||
//
|
||||
//// void importModelParamsItem(@Valid @NotNull Integer modelParamsId, List<ProductModelParamsExcelDTO> datas);
|
||||
//
|
||||
// void updateItem(@Valid ProductModelParamsItemUpdateRequest1 request);
|
||||
//
|
||||
// void deleteIndexName(@Valid ParamsIndexNameDeleteRequest request);
|
||||
//
|
||||
// List<ProductModelParamsItem> getForQuotation(Long configId);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -91,135 +91,135 @@ public class ProductModelParamsItemServiceImpl extends ServiceImpl<ProductModelP
|
|||
// }
|
||||
// }
|
||||
|
||||
@Override
|
||||
public void deleteByParamsIds(List<Integer> ids) {
|
||||
remove(new LambdaQueryWrapper<ProductModelParamsItem>()
|
||||
.in(ProductModelParamsItem::getModelParamsId, ids));
|
||||
}
|
||||
// @Override
|
||||
// public void deleteByParamsIds(List<Integer> ids) {
|
||||
// remove(new LambdaQueryWrapper<ProductModelParamsItem>()
|
||||
// .in(ProductModelParamsItem::getModelParamsId, ids));
|
||||
// }
|
||||
|
||||
@Override
|
||||
public List<ProductModelMainParamsItemVO> getMainList(Integer modelParamsId) {
|
||||
List<ProductModelMainParamsItemVO> vos = new ArrayList<>();
|
||||
List<DictionaryItemTranslate> translates = dictionaryItemTranslateService.getListByDictionaryCode(Constant.DICTIONARY_PRODUCT_MODEL_MAIN_PARAMS);
|
||||
Map<String, List<DictionaryItemTranslate>> maps = translates.stream().collect(Collectors.groupingBy(DictionaryItemTranslate::getLanguageCode));
|
||||
if (Objects.isNull(modelParamsId)) {
|
||||
maps.forEach((languageCode, data) -> {
|
||||
ProductModelMainParamsItemVO vo = new ProductModelMainParamsItemVO()
|
||||
.setLanguageCode(languageCode)
|
||||
.setItems(data.stream().map(it -> new ProductParamsItemVO()
|
||||
.setName(it.getValue()))
|
||||
.collect(Collectors.toList()));
|
||||
vos.add(vo);
|
||||
});
|
||||
return vos;
|
||||
}else {
|
||||
List<ProductModelParamsItem> datas = lambdaQuery().eq(ProductModelParamsItem::getModelParamsId, modelParamsId).list();
|
||||
maps.forEach((languageCode, translates1) -> {
|
||||
ProductModelMainParamsItemVO vo = new ProductModelMainParamsItemVO()
|
||||
.setLanguageCode(languageCode)
|
||||
.setItems(translates1.stream()
|
||||
.map(it -> {
|
||||
ProductModelParamsItem item = datas.stream()
|
||||
.filter(iit -> StrUtil.equals(iit.getLanguageCode(), languageCode)
|
||||
&& StrUtil.equals(iit.getName(), it.getValue()))
|
||||
.findFirst()
|
||||
.orElse(null);
|
||||
return new ProductParamsItemVO()
|
||||
.setName(it.getValue())
|
||||
.setValue(Objects.isNull(item)?"" : item.getValue());
|
||||
})
|
||||
.collect(Collectors.toList()));
|
||||
vos.add(vo);
|
||||
});
|
||||
}
|
||||
return vos;
|
||||
}
|
||||
// @Override
|
||||
// public List<ProductModelMainParamsItemVO> getMainList(Integer modelParamsId) {
|
||||
// List<ProductModelMainParamsItemVO> vos = new ArrayList<>();
|
||||
// List<DictionaryItemTranslate> translates = dictionaryItemTranslateService.getListByDictionaryCode(Constant.DICTIONARY_PRODUCT_MODEL_MAIN_PARAMS);
|
||||
// Map<String, List<DictionaryItemTranslate>> maps = translates.stream().collect(Collectors.groupingBy(DictionaryItemTranslate::getLanguageCode));
|
||||
// if (Objects.isNull(modelParamsId)) {
|
||||
// maps.forEach((languageCode, data) -> {
|
||||
// ProductModelMainParamsItemVO vo = new ProductModelMainParamsItemVO()
|
||||
// .setLanguageCode(languageCode)
|
||||
// .setItems(data.stream().map(it -> new ProductParamsItemVO()
|
||||
// .setName(it.getValue()))
|
||||
// .collect(Collectors.toList()));
|
||||
// vos.add(vo);
|
||||
// });
|
||||
// return vos;
|
||||
// }else {
|
||||
// List<ProductModelParamsItem> datas = lambdaQuery().eq(ProductModelParamsItem::getModelParamsId, modelParamsId).list();
|
||||
// maps.forEach((languageCode, translates1) -> {
|
||||
// ProductModelMainParamsItemVO vo = new ProductModelMainParamsItemVO()
|
||||
// .setLanguageCode(languageCode)
|
||||
// .setItems(translates1.stream()
|
||||
// .map(it -> {
|
||||
// ProductModelParamsItem item = datas.stream()
|
||||
// .filter(iit -> StrUtil.equals(iit.getLanguageCode(), languageCode)
|
||||
// && StrUtil.equals(iit.getName(), it.getValue()))
|
||||
// .findFirst()
|
||||
// .orElse(null);
|
||||
// return new ProductParamsItemVO()
|
||||
// .setName(it.getValue())
|
||||
// .setValue(Objects.isNull(item)?"" : item.getValue());
|
||||
// })
|
||||
// .collect(Collectors.toList()));
|
||||
// vos.add(vo);
|
||||
// });
|
||||
// }
|
||||
// return vos;
|
||||
// }
|
||||
|
||||
@Override
|
||||
public List<ProductModelParamsItemVO> getList(Integer modelParamsId) {
|
||||
List<ProductModelParamsItem> datas = lambdaQuery().eq(ProductModelParamsItem::getModelParamsId, modelParamsId).list();
|
||||
Map<String, List<ProductModelParamsItem>> maps = datas.stream().collect(Collectors.groupingBy(ProductModelParamsItem::getLanguageCode));
|
||||
List<ProductModelParamsItemVO> vos = new ArrayList<>();
|
||||
maps.forEach((languageCode, data) -> {
|
||||
ProductModelParamsItemVO vo = new ProductModelParamsItemVO()
|
||||
.setLanguageCode(languageCode);
|
||||
vos.add(vo);
|
||||
Map<String, List<ProductModelParamsItem>> itemMap = data.stream().collect(Collectors.groupingBy(ProductModelParamsItem::getIndexName));
|
||||
itemMap.forEach((indexName, itemData) -> {
|
||||
ProductModelMainParamsItemChildrenVO ivo=new ProductModelMainParamsItemChildrenVO()
|
||||
.setIndexName(indexName)
|
||||
.setBatchNumber(CollectionUtil.isNotEmpty(itemData) ? itemData.get(0).getBatchNumber() : "")
|
||||
.setItems(itemData.stream()
|
||||
.sorted(Comparator.comparing(ProductModelParamsItem::getId))
|
||||
.filter(pi -> StrUtil.isNotBlank(pi.getName()))
|
||||
.map(pi -> Convert.convert(ProductParamsItemVO.class, pi))
|
||||
.collect(Collectors.toList()));
|
||||
ivo.getItems().sort(Comparator.comparing(ProductParamsItemVO::getId));
|
||||
vo.getItems().add(ivo);
|
||||
});
|
||||
vo.getItems().sort(Comparator.comparing(ProductModelMainParamsItemChildrenVO::getBatchNumber));
|
||||
});
|
||||
vos.sort(Comparator.comparing(ProductModelParamsItemVO::getLanguageCode));
|
||||
return vos;
|
||||
}
|
||||
// @Override
|
||||
// public List<ProductModelParamsItemVO> getList(Integer modelParamsId) {
|
||||
// List<ProductModelParamsItem> datas = lambdaQuery().eq(ProductModelParamsItem::getModelParamsId, modelParamsId).list();
|
||||
// Map<String, List<ProductModelParamsItem>> maps = datas.stream().collect(Collectors.groupingBy(ProductModelParamsItem::getLanguageCode));
|
||||
// List<ProductModelParamsItemVO> vos = new ArrayList<>();
|
||||
// maps.forEach((languageCode, data) -> {
|
||||
// ProductModelParamsItemVO vo = new ProductModelParamsItemVO()
|
||||
// .setLanguageCode(languageCode);
|
||||
// vos.add(vo);
|
||||
// Map<String, List<ProductModelParamsItem>> itemMap = data.stream().collect(Collectors.groupingBy(ProductModelParamsItem::getIndexName));
|
||||
// itemMap.forEach((indexName, itemData) -> {
|
||||
// ProductModelMainParamsItemChildrenVO ivo=new ProductModelMainParamsItemChildrenVO()
|
||||
// .setIndexName(indexName)
|
||||
// .setBatchNumber(CollectionUtil.isNotEmpty(itemData) ? itemData.get(0).getBatchNumber() : "")
|
||||
// .setItems(itemData.stream()
|
||||
// .sorted(Comparator.comparing(ProductModelParamsItem::getId))
|
||||
// .filter(pi -> StrUtil.isNotBlank(pi.getName()))
|
||||
// .map(pi -> Convert.convert(ProductParamsItemVO.class, pi))
|
||||
// .collect(Collectors.toList()));
|
||||
// ivo.getItems().sort(Comparator.comparing(ProductParamsItemVO::getId));
|
||||
// vo.getItems().add(ivo);
|
||||
// });
|
||||
// vo.getItems().sort(Comparator.comparing(ProductModelMainParamsItemChildrenVO::getBatchNumber));
|
||||
// });
|
||||
// vos.sort(Comparator.comparing(ProductModelParamsItemVO::getLanguageCode));
|
||||
// return vos;
|
||||
// }
|
||||
|
||||
@Override
|
||||
public void addIndexName(ProductModelParamsNameAddRequest request) {
|
||||
// VUtils.trueThrowBusinessError(lambdaQuery()
|
||||
// @Override
|
||||
// public void addIndexName(ProductModelParamsNameAddRequest request) {
|
||||
//// VUtils.trueThrowBusinessError(lambdaQuery()
|
||||
//// .eq(ProductModelParamsItem::getModelParamsId, request.getModelParamsId())
|
||||
//// .eq(ProductModelParamsItem::getIndexName, request.getIndexName())
|
||||
//// .eq(ProductModelParamsItem::getLanguageCode, request.getLanguageCode())
|
||||
//// .exists())
|
||||
//// .throwMessage("该指标已存在");
|
||||
//// save(new ProductModelParamsItem()
|
||||
//// .setModelParamsId(request.getModelParamsId())
|
||||
//// .setLanguageCode(request.getLanguageCode())
|
||||
//// .setIndexName(request.getIndexName())
|
||||
//// .setCreateBy(AdminUserUtil.getUserName())
|
||||
//// .setCreateTime(LocalDateTime.now()));
|
||||
// }
|
||||
|
||||
// @Transactional
|
||||
// @Override
|
||||
// public void addItem(List<ProductModelParamsItemAddRequest1> request) {
|
||||
// saveBatch(request.stream().map(it -> new ProductModelParamsItem()
|
||||
// .setModelParamsId(it.getModelParamsId())
|
||||
// .setLanguageCode(it.getLanguageCode())
|
||||
// .setBatchNumber(it.getBatchNumber())
|
||||
// .setIndexName(it.getIndexName())
|
||||
// .setName(it.getName())
|
||||
// .setValue(it.getValue())
|
||||
// .setMain(it.getMain())
|
||||
// .setImportant(it.getImportant())
|
||||
// .setCompare(it.getCompare())
|
||||
// .setIco(it.getIco())
|
||||
// .setCreateBy(AdminUserUtil.getUserName())
|
||||
// .setCreateTime(LocalDateTime.now()))
|
||||
// .collect(Collectors.toList())
|
||||
// );
|
||||
// }
|
||||
|
||||
// @Override
|
||||
// public void updateIndexName(ProductModelParamsNameUpdateRequest request) {
|
||||
// lambdaUpdate()
|
||||
// .set(ProductModelParamsItem::getIndexName, request.getNewIndexName())
|
||||
// .set(ProductModelParamsItem::getUpdateBy, AdminUserUtil.getUserName())
|
||||
// .set(ProductModelParamsItem::getUpdateTime, LocalDateTime.now())
|
||||
// .eq(ProductModelParamsItem::getModelParamsId, request.getModelParamsId())
|
||||
// .eq(ProductModelParamsItem::getIndexName, request.getIndexName())
|
||||
// .eq(ProductModelParamsItem::getLanguageCode, request.getLanguageCode())
|
||||
// .exists())
|
||||
// .throwMessage("该指标已存在");
|
||||
// save(new ProductModelParamsItem()
|
||||
// .setModelParamsId(request.getModelParamsId())
|
||||
// .setLanguageCode(request.getLanguageCode())
|
||||
// .setIndexName(request.getIndexName())
|
||||
// .setCreateBy(AdminUserUtil.getUserName())
|
||||
// .setCreateTime(LocalDateTime.now()));
|
||||
}
|
||||
// .eq(ProductModelParamsItem::getIndexName, request.getIndexName())
|
||||
// .update();
|
||||
// }
|
||||
|
||||
@Transactional
|
||||
@Override
|
||||
public void addItem(List<ProductModelParamsItemAddRequest1> request) {
|
||||
saveBatch(request.stream().map(it -> new ProductModelParamsItem()
|
||||
.setModelParamsId(it.getModelParamsId())
|
||||
.setLanguageCode(it.getLanguageCode())
|
||||
.setBatchNumber(it.getBatchNumber())
|
||||
.setIndexName(it.getIndexName())
|
||||
.setName(it.getName())
|
||||
.setValue(it.getValue())
|
||||
.setMain(it.getMain())
|
||||
.setImportant(it.getImportant())
|
||||
.setCompare(it.getCompare())
|
||||
.setIco(it.getIco())
|
||||
.setCreateBy(AdminUserUtil.getUserName())
|
||||
.setCreateTime(LocalDateTime.now()))
|
||||
.collect(Collectors.toList())
|
||||
);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateIndexName(ProductModelParamsNameUpdateRequest request) {
|
||||
lambdaUpdate()
|
||||
.set(ProductModelParamsItem::getIndexName, request.getNewIndexName())
|
||||
.set(ProductModelParamsItem::getUpdateBy, AdminUserUtil.getUserName())
|
||||
.set(ProductModelParamsItem::getUpdateTime, LocalDateTime.now())
|
||||
.eq(ProductModelParamsItem::getModelParamsId, request.getModelParamsId())
|
||||
.eq(ProductModelParamsItem::getLanguageCode, request.getLanguageCode())
|
||||
.eq(ProductModelParamsItem::getIndexName, request.getIndexName())
|
||||
.update();
|
||||
}
|
||||
|
||||
@Transactional
|
||||
@Override
|
||||
public void deleteParam(ProductModelParamsItemDeleteRequest request) {
|
||||
ProductModelParamsItem info=getById(request.getModelParamsItemId());
|
||||
remove(new LambdaQueryWrapper<ProductModelParamsItem>()
|
||||
.eq(ProductModelParamsItem::getBatchNumber,info.getBatchNumber())
|
||||
.eq(ProductModelParamsItem::getModelParamsId,request.getModelParamsId())
|
||||
);
|
||||
}
|
||||
// @Transactional
|
||||
// @Override
|
||||
// public void deleteParam(ProductModelParamsItemDeleteRequest request) {
|
||||
// ProductModelParamsItem info=getById(request.getModelParamsItemId());
|
||||
// remove(new LambdaQueryWrapper<ProductModelParamsItem>()
|
||||
// .eq(ProductModelParamsItem::getBatchNumber,info.getBatchNumber())
|
||||
// .eq(ProductModelParamsItem::getModelParamsId,request.getModelParamsId())
|
||||
// );
|
||||
// }
|
||||
|
||||
// @Transactional
|
||||
// @Override
|
||||
|
|
@ -259,44 +259,44 @@ public class ProductModelParamsItemServiceImpl extends ServiceImpl<ProductModelP
|
|||
// }
|
||||
// }
|
||||
|
||||
@Override
|
||||
public void updateItem(ProductModelParamsItemUpdateRequest1 request) {
|
||||
lambdaUpdate()
|
||||
.set(ProductModelParamsItem::getIndexName, request.getIndexName())
|
||||
.set(ProductModelParamsItem::getName, request.getName())
|
||||
.set(ProductModelParamsItem::getValue, request.getValue())
|
||||
.set(ProductModelParamsItem::getMain, request.getMain())
|
||||
.set(ProductModelParamsItem::getImportant, request.getImportant())
|
||||
.set(ProductModelParamsItem::getCompare, request.getCompare())
|
||||
.set(ProductModelParamsItem::getIco, request.getIco())
|
||||
.set(ProductModelParamsItem::getUpdateBy, AdminUserUtil.getUserName())
|
||||
.set(ProductModelParamsItem::getUpdateTime, LocalDateTime.now())
|
||||
.eq(ProductModelParamsItem::getId, request.getModelParamsItemId())
|
||||
.update();
|
||||
}
|
||||
// @Override
|
||||
// public void updateItem(ProductModelParamsItemUpdateRequest1 request) {
|
||||
// lambdaUpdate()
|
||||
// .set(ProductModelParamsItem::getIndexName, request.getIndexName())
|
||||
// .set(ProductModelParamsItem::getName, request.getName())
|
||||
// .set(ProductModelParamsItem::getValue, request.getValue())
|
||||
// .set(ProductModelParamsItem::getMain, request.getMain())
|
||||
// .set(ProductModelParamsItem::getImportant, request.getImportant())
|
||||
// .set(ProductModelParamsItem::getCompare, request.getCompare())
|
||||
// .set(ProductModelParamsItem::getIco, request.getIco())
|
||||
// .set(ProductModelParamsItem::getUpdateBy, AdminUserUtil.getUserName())
|
||||
// .set(ProductModelParamsItem::getUpdateTime, LocalDateTime.now())
|
||||
// .eq(ProductModelParamsItem::getId, request.getModelParamsItemId())
|
||||
// .update();
|
||||
// }
|
||||
|
||||
@Transactional
|
||||
@Override
|
||||
public void deleteIndexName(ParamsIndexNameDeleteRequest request) {
|
||||
List<Language> languages = languageService.getAllLanguages();
|
||||
languages.forEach(lang -> {
|
||||
ProductModelParamsItem item = lambdaQuery()
|
||||
.eq(ProductModelParamsItem::getBatchNumber, request.getBatchNumber())
|
||||
.eq(ProductModelParamsItem::getModelParamsId, request.getModelParamsId())
|
||||
.eq(ProductModelParamsItem::getLanguageCode, lang.getCode())
|
||||
.one();
|
||||
if (Objects.nonNull(item)) {
|
||||
remove(new LambdaQueryWrapper<ProductModelParamsItem>()
|
||||
.eq(ProductModelParamsItem::getModelParamsId, request.getModelParamsId())
|
||||
.eq(ProductModelParamsItem::getLanguageCode, lang.getCode())
|
||||
.eq(ProductModelParamsItem::getIndexName, item.getIndexName())
|
||||
);
|
||||
}
|
||||
});
|
||||
}
|
||||
// @Transactional
|
||||
// @Override
|
||||
// public void deleteIndexName(ParamsIndexNameDeleteRequest request) {
|
||||
// List<Language> languages = languageService.getAllLanguages();
|
||||
// languages.forEach(lang -> {
|
||||
// ProductModelParamsItem item = lambdaQuery()
|
||||
// .eq(ProductModelParamsItem::getBatchNumber, request.getBatchNumber())
|
||||
// .eq(ProductModelParamsItem::getModelParamsId, request.getModelParamsId())
|
||||
// .eq(ProductModelParamsItem::getLanguageCode, lang.getCode())
|
||||
// .one();
|
||||
// if (Objects.nonNull(item)) {
|
||||
// remove(new LambdaQueryWrapper<ProductModelParamsItem>()
|
||||
// .eq(ProductModelParamsItem::getModelParamsId, request.getModelParamsId())
|
||||
// .eq(ProductModelParamsItem::getLanguageCode, lang.getCode())
|
||||
// .eq(ProductModelParamsItem::getIndexName, item.getIndexName())
|
||||
// );
|
||||
// }
|
||||
// });
|
||||
// }
|
||||
|
||||
@Override
|
||||
public List<ProductModelParamsItem> getForQuotation(Long configId) {
|
||||
return baseMapper.getForQuotation(configId);
|
||||
}
|
||||
// @Override
|
||||
// public List<ProductModelParamsItem> getForQuotation(Long configId) {
|
||||
// return baseMapper.getForQuotation(configId);
|
||||
// }
|
||||
}
|
||||
|
|
@ -127,10 +127,10 @@ public class QuotationModelPriceServiceImpl extends ServiceImpl<QuotationModelPr
|
|||
.setParentId(configItem.getParentId())
|
||||
.setPartName(configItem.getName())
|
||||
.setType(configItem.getType())
|
||||
.setConfigItemUniqueId(configItem.getId())
|
||||
.setConfigItemUniqueId(configItem.getBatchNumber())
|
||||
.setOptionalType(configItem.getOptionalType());
|
||||
QuotationModelPriceItem priceItem = priceItems.stream()
|
||||
.filter(pit -> pit.getConfigItemUniqueId().equals(configItem.getId()))
|
||||
.filter(pit -> pit.getConfigItemUniqueId().equals(configItem.getBatchNumber()))
|
||||
.findFirst()
|
||||
.orElse(null);
|
||||
if (Objects.nonNull(priceItem)) {
|
||||
|
|
|
|||
|
|
@ -12,9 +12,9 @@
|
|||
(
|
||||
SELECT qmpi.config_item_unique_id,qmpia.amount
|
||||
FROM quotation_model_price_item qmpi
|
||||
LEFT JOIN quotation_model_price_item_area qmpia ON qmpia.price_item_id=qmpi.id
|
||||
LEFT JOIN quotation_model_price_item_area qmpia ON qmpia.price_item_id=qmpi.id
|
||||
WHERE qmpia.price_id=#{priceId} AND qmpia.area_id=#{categoryId}
|
||||
) pp ON pmpd.id=pp.config_item_unique_id
|
||||
) pp ON pmpd.batch_number=pp.config_item_unique_id
|
||||
WHERE pmpd.params_id=#{configId} AND l.`code`=#{language}
|
||||
ORDER BY pmpd.id
|
||||
</select>
|
||||
|
|
|
|||
Loading…
Reference in New Issue