package com.mzl.flower.service.flower;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.mzl.flower.config.exception.ValidationException;
|
import com.mzl.flower.config.security.SecurityUtils;
|
import com.mzl.flower.dto.request.flower.FlowerMarkupPsSpCgSaveDTO;
|
import com.mzl.flower.dto.request.flower.FlowerMarkupSpCgBatchSaveDTO;
|
import com.mzl.flower.dto.request.flower.FlowerMarkupSpCgQueryDTO;
|
import com.mzl.flower.dto.request.flower.FlowerMarkupSpCgSaveDTO;
|
import com.mzl.flower.dto.response.flower.FlowerMarkupSpCgDTO;
|
import com.mzl.flower.dto.response.flower.FlowerMarkupSpCgListDTO;
|
import com.mzl.flower.entity.flower.FlowerMarkupSpCg;
|
import com.mzl.flower.entity.partner.Partner;
|
import com.mzl.flower.mapper.flower.FlowerMarkupSpCgMapper;
|
import com.mzl.flower.service.BaseService;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.beans.BeanUtils;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
import org.springframework.transaction.annotation.Transactional;
|
|
import java.util.List;
|
|
@Slf4j
|
@Service
|
@Transactional
|
public class FlowerMarkupSpCgService extends BaseService {
|
|
@Autowired
|
private FlowerMarkupSpCgMapper spCgMapper;
|
|
public void saveMarkupSpCg(FlowerMarkupSpCgSaveDTO dto){
|
|
Long cId = dto.getCategoryId();
|
FlowerMarkupSpCg cg = spCgMapper.selectOne(new QueryWrapper<FlowerMarkupSpCg>()
|
.eq("partner_id", dto.getPartnerId()).eq("category_id", cId));
|
if(cg == null){
|
cg = new FlowerMarkupSpCg();
|
BeanUtils.copyProperties(dto, cg);
|
cg.setPartnerId(dto.getPartnerId());
|
cg.create(SecurityUtils.getUserId());
|
spCgMapper.insert(cg);
|
} else {
|
BeanUtils.copyProperties(dto, cg);
|
cg.update(SecurityUtils.getUserId());
|
spCgMapper.updateById(cg);
|
}
|
|
markupCacheClient.addMarkupSpCg(dto.getPartnerId(), cId, cg);
|
}
|
|
public void saveMarkupSpCgBatch(FlowerMarkupSpCgBatchSaveDTO dto) {
|
List<Long> categoryIds = dto.getCategoryId();
|
if (categoryIds == null || categoryIds.size() == 0) {
|
throw new ValidationException("分类列表不能为空");
|
}
|
for (Long categoryId : categoryIds) {
|
FlowerMarkupSpCgSaveDTO cg = new FlowerMarkupSpCgSaveDTO();
|
BeanUtils.copyProperties(dto, cg);
|
cg.setCategoryId(categoryId);
|
saveMarkupSpCg(cg);
|
}
|
}
|
public FlowerMarkupSpCgDTO getMarkupSpCg(Long categoryId){
|
FlowerMarkupSpCgDTO dto = new FlowerMarkupSpCgDTO();
|
dto.setCategoryId(categoryId);
|
|
Partner s = getCurrentPartner();
|
Long sId = s.getId();
|
FlowerMarkupSpCg cg = spCgMapper.selectOne(new QueryWrapper<FlowerMarkupSpCg>()
|
.eq("partner_id", sId).eq("category_id", categoryId));
|
if(cg != null){
|
BeanUtils.copyProperties(cg, dto);
|
}
|
|
return dto;
|
}
|
|
public Page<FlowerMarkupSpCgListDTO> selectMarkupSpCgList(Page page, FlowerMarkupSpCgQueryDTO dto){
|
|
List<FlowerMarkupSpCgListDTO> ll = spCgMapper.selectMarkupSpCgList(page, dto.getPartnerId(), dto);
|
|
page.setRecords(ll);
|
return page;
|
}
|
|
public void deleteMarkupSpCg(Long categoryId){
|
Partner s = getCurrentPartner();
|
Long sId = s.getId();
|
spCgMapper.delete(new QueryWrapper<FlowerMarkupSpCg>()
|
.eq("partner_id", sId).eq("category_id", categoryId));
|
markupCacheClient.deleteMarkupSpCg(sId, categoryId);
|
}
|
|
}
|