EquipmentServiceImpl.java 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. package com.caimei.www.service.page.impl;
  2. import com.caimei.www.mapper.EquipmentDao;
  3. import com.caimei.www.mapper.SinglePageDao;
  4. import com.caimei.www.pojo.JsonModel;
  5. import com.caimei.www.pojo.page.ImageLink;
  6. import com.caimei.www.pojo.page.PageContent;
  7. import com.caimei.www.pojo.page.PageFloor;
  8. import com.caimei.www.pojo.page.Parameter;
  9. import com.caimei.www.service.page.EquipmentService;
  10. import com.caimei.www.utils.ImageUtil;
  11. import lombok.extern.slf4j.Slf4j;
  12. import org.springframework.beans.factory.annotation.Value;
  13. import org.springframework.stereotype.Service;
  14. import javax.annotation.Resource;
  15. import java.util.ArrayList;
  16. import java.util.List;
  17. /**
  18. * Description
  19. *
  20. * @author : Charles
  21. * @date : 2020/7/16
  22. */
  23. @Slf4j
  24. @Service
  25. public class EquipmentServiceImpl implements EquipmentService {
  26. @Resource
  27. private EquipmentDao equipmentDao;
  28. @Resource
  29. SinglePageDao singlePageDao;
  30. @Value("${caimei.wwwDomain}")
  31. private String domain;
  32. /**
  33. * 项目仪器详情
  34. *
  35. * @param equipmentId
  36. * @return
  37. */
  38. @Override
  39. public PageContent getEquipmentById(Integer equipmentId) {
  40. PageContent equipment = equipmentDao.getEquipmentById(equipmentId);
  41. if (null != equipment){
  42. List<Parameter> contents = equipmentDao.getParametersByEquipmentId(equipmentId);
  43. equipment.setPageContents(contents);
  44. }
  45. return equipment;
  46. }
  47. /**
  48. * 获取项目仪器详情页中层信息(搭配推荐,相似商品)
  49. *
  50. * @param equipmentId
  51. * @return
  52. */
  53. @Override
  54. public JsonModel<List<PageFloor>> getEquipmentRecommendById(Integer equipmentId) {
  55. if (equipmentId == null) { return JsonModel.error("参数异常", null);}
  56. List<PageFloor> floorList = singlePageDao.getFloorByPageId(equipmentId);
  57. if (floorList.size() > 0) {
  58. List<PageFloor> tempList = new ArrayList<>();
  59. floorList.forEach(floor -> {
  60. List<ImageLink> imageLinks = singlePageDao.getDataByFloorId(floor.getId());
  61. if (imageLinks.size() > 0) {
  62. imageLinks.forEach(img -> {
  63. img.setImage(ImageUtil.getImageURL("actType", img.getImage(), 0, domain));
  64. });
  65. floor.setFloorData(imageLinks);
  66. } else {
  67. tempList.add(floor);
  68. }
  69. });
  70. if(tempList.size() > 0){
  71. floorList.removeAll(tempList);
  72. }
  73. }
  74. return JsonModel.success(floorList);
  75. }
  76. }