Compare commits

...

3 Commits

5 changed files with 45 additions and 24 deletions

View File

@ -995,7 +995,7 @@ public class ProductModelController extends ControllerBase{
* @param request 请求参数 * @param request 请求参数
*/ */
@PostMapping("/saveFileSort") @PostMapping("/saveFileSort")
public ApiResult<Void> saveFileSort(@Valid @RequestBody SortSaveRequest request){ public ApiResult<Void> saveFileSort(@Valid @RequestBody SortSaveRequest request) {
productModelFileService.saveSort(request); productModelFileService.saveSort(request);
return ApiResult.success(); return ApiResult.success();
} }

View File

@ -0,0 +1,23 @@
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 SortSaveNewRequest {
/**
* 机型id
*/
@NotNull
private Integer modelId;
/**
* 调整后的顺序
*/
@NotEmpty
private List<Integer> ids;
}

View File

@ -14,6 +14,7 @@ import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
@ -72,10 +73,12 @@ public class ProductModelFileItemServiceImpl extends ServiceImpl<ProductModelFil
.eq(ProductModelFileItem::getModelId, request.getModelId()) .eq(ProductModelFileItem::getModelId, request.getModelId())
.update(); .update();
request.getItems().forEach(item -> { request.getItems().forEach(item -> {
if (Objects.nonNull(item.getFileItemId())) {
lambdaUpdate() lambdaUpdate()
.set(ProductModelFileItem::getShowInList, true) .set(ProductModelFileItem::getShowInList, true)
.eq(ProductModelFileItem::getId, item.getFileItemId()) .eq(ProductModelFileItem::getId, item.getFileItemId())
.update(); .update();
}
}); });
} }

View File

@ -29,7 +29,6 @@ import javax.annotation.Resource;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Map;
import java.util.Objects; import java.util.Objects;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@ -240,25 +239,20 @@ public class ProductModelFileServiceImpl extends ServiceImpl<ProductModelFileMap
@Override @Override
public List<FileDefaultConfigVO> getDefaultConfig(Integer modelId) { public List<FileDefaultConfigVO> getDefaultConfig(Integer modelId) {
List<Language> languages = languageService.getAllLanguages();
// List<ProductModelFileItem> list = productModelFileItemService.lambdaQuery()
// .eq(ProductModelFileItem::getModelId, modelId)
// .orderByAsc(ProductModelFileItem::getLanguageCode)
// .orderByDesc(ProductModelFileItem::getShowInList)
// .list();
List<ProductModelFileItem> list =productModelFileItemService.getPublishedByLanguage(modelId);
List<FileDefaultConfigVO> vos=new ArrayList<>(); List<FileDefaultConfigVO> vos=new ArrayList<>();
Map<String, List<ProductModelFileItem>> maps=list.stream().collect(Collectors.groupingBy(ProductModelFileItem::getLanguageCode)); List<Language> languages = languageService.getLanguages();
maps.forEach((languageCode,data)->{ List<ProductModelFileItem> list = productModelFileItemService.getPublishedByLanguage(modelId);
FileDefaultConfigVO vo=new FileDefaultConfigVO() languages.forEach(language -> {
.setLanguageCode(languageCode) FileDefaultConfigVO vo = new FileDefaultConfigVO()
.setLanguageName(languages.stream().filter(lang->lang.getCode().equals(languageCode)).findFirst().get().getName()) .setLanguageCode(language.getCode())
.setItems(data.stream().map(item->new FileDefaultConfigItemVO() .setLanguageName(language.getName())
.setItems(list.stream().filter(item -> StrUtil.equals(language.getCode(), item.getLanguageCode()))
.map(item -> {
return new FileDefaultConfigItemVO()
.setId(item.getId()) .setId(item.getId())
.setName(item.getName()) .setName(item.getName())
.setSelected(item.getShowInList())) .setSelected(item.getShowInList());
.collect(Collectors.toList()) }).collect(Collectors.toList()));
);
vos.add(vo); vos.add(vo);
}); });
return vos; return vos;

View File

@ -25,5 +25,6 @@
FROM product_model_file pmf FROM product_model_file pmf
INNER JOIN product_model_file_item pmfi ON pmf.id = pmfi.model_file_id INNER JOIN product_model_file_item pmfi ON pmf.id = pmfi.model_file_id
WHERE pmf.`enable` = 1 AND pmf.state = 1 AND pmf.model_id = #{modelId} AND pmfi.language_code = #{language} WHERE pmf.`enable` = 1 AND pmf.state = 1 AND pmf.model_id = #{modelId} AND pmfi.language_code = #{language}
ORDER BY pmf.sort
</select> </select>
</mapper> </mapper>