123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135 |
- package com.caimei.modules.cmpage.service;
- import com.alibaba.fastjson.JSON;
- import com.caimei.modules.cmpage.dao.CmPageCentreDao;
- import com.caimei.modules.cmpage.entity.CmImage;
- import com.caimei.modules.cmpage.entity.CmPageCentre;
- import com.caimei.modules.miniprogram.utils.UploadPicUtils;
- import com.caimei.modules.newhome.entity.NewPageFloorContent;
- import com.caimei.modules.newhome.entity.NewPageFloorImage;
- import com.caimei.modules.product.dao.ProductDao;
- import com.caimei.modules.product.entity.Product;
- import com.caimei.utils.AppUtils;
- import com.thinkgem.jeesite.common.config.Global;
- import com.thinkgem.jeesite.common.persistence.Page;
- import com.thinkgem.jeesite.common.service.CrudService;
- import com.thinkgem.jeesite.common.utils.StringUtils;
- import org.springframework.beans.BeanUtils;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import org.springframework.transaction.annotation.Transactional;
- import org.springframework.transaction.interceptor.TransactionAspectSupport;
- import java.text.SimpleDateFormat;
- import java.util.ArrayList;
- import java.util.Date;
- import java.util.List;
- /**
- * 相关商品管理Service
- *
- * @author Lijun
- * @version 2017-05-04
- */
- @Service
- @Transactional(readOnly = true)
- public class CmPageCentreService extends CrudService<CmPageCentreDao, CmPageCentre> {
- @Autowired
- private CmPageCentreDao cmPageCentreDao;
- @Autowired
- private CmImageService cmImageService;
- @Autowired
- private ProductDao productDao;
- public CmPageCentre get(String id) {
- CmPageCentre cmPageCentre = super.get(id);
- if (null != cmPageCentre) {
- List<CmImage> centreImages = cmImageService.findCentreImageByCentreId(id);
- if (centreImages != null && centreImages.size() > 0) {
- centreImages.forEach(image -> {
- image.setCreateDateStc(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(image.getCreateDate()));
- });
- cmPageCentre.setCmImages(centreImages);
- }
- }
- return cmPageCentre;
- }
- public List<CmPageCentre> findList(CmPageCentre cmPageCentre) {
- return super.findList(cmPageCentre);
- }
- public Page<CmPageCentre> findPage(Page<CmPageCentre> page, CmPageCentre cmPageCentre) {
- return super.findPage(page, cmPageCentre);
- }
- @Transactional(readOnly = false)
- public void save(CmPageCentre cmPageCentre) {
- super.save(cmPageCentre);
- cmPageCentreDao.deletePageImage(cmPageCentre.getId());
- if (StringUtils.isNotBlank(cmPageCentre.getImages())) {
- try {
- List<NewPageFloorImage> floorImages = JSON.parseArray(cmPageCentre.getImages(), NewPageFloorImage.class);
- List<String> imageIds = new ArrayList<>();
- for (NewPageFloorImage floorImage : floorImages) {
- if (!floorImage.getImage().contains("http")) {
- floorImage.setImage(UploadPicUtils.saveImageToServer(floorImage.getImage(), null));
- }
- CmImage image = new CmImage();
- BeanUtils.copyProperties(floorImage, image);
- image.setSort(Integer.valueOf(floorImage.getSort()));
- image.setTitle(floorImage.getName());
- image.setEnabledStatus(floorImage.getPcStatus());
- image.setCrmEnabledStatus(floorImage.getAppletsStatus());
- Date createDate = new Date();
- if (StringUtils.isNotBlank(floorImage.getCreateDate())) {
- createDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(floorImage.getCreateDate());
- }
- image.setCreateDate(createDate);
- cmImageService.save(image);
- imageIds.add(image.getId());
- }
- cmPageCentreDao.insertPageCentreImage(cmPageCentre.getId(), imageIds);
- } catch (Exception e) {
- e.printStackTrace();
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- }
- }
- }
- @Transactional(readOnly = false)
- public void delete(CmPageCentre cmPageCentre) {
- super.delete(cmPageCentre);
- }
- @Transactional(readOnly = false)
- public void saveSort(String sort, String id) {
- cmPageCentreDao.saveSort(sort, id);
- }
- public NewPageFloorContent findFloorContent(Integer centreId) {
- NewPageFloorContent floorContent = cmPageCentreDao.findFloorContentByCentreId(centreId);
- List<NewPageFloorImage> floorImageList = cmPageCentreDao.findFloorImage(centreId);
- floorImageList.forEach(image -> {
- image.setImage(AppUtils.getProductImageURL(image.getImage(), 0, Global.getConfig("wwwServer")));
- if (image.getProductId() != null) {
- Product product = productDao.get(image.getProductId().toString());
- if (product != null) {
- image.setImage(AppUtils.getProductImageURL(product.getMainImage(), 0, Global.getConfig("wwwServer")));
- image.setName(product.getName());
- }
- }
- });
- floorContent.setCentreId(centreId);
- floorContent.setFloorImageList(floorImageList);
- return floorContent;
- }
- public String findPageTitle(String pageId) {
- return cmPageCentreDao.findPageTitle(pageId);
- }
- }
|