package com.yeshi.fanli.service.impl.clazz;
|
|
import java.util.Date;
|
import java.util.List;
|
|
import javax.annotation.Resource;
|
|
import org.springframework.stereotype.Service;
|
import org.springframework.transaction.annotation.Transactional;
|
|
import com.yeshi.fanli.dao.mybatis.clazz.GoodsSubClassLabelMapMapper;
|
import com.yeshi.fanli.dao.mybatis.clazz.GoodsSubClassLabelMapper;
|
import com.yeshi.fanli.entity.bus.clazz.GoodsSubClassLabel;
|
import com.yeshi.fanli.entity.bus.clazz.GoodsSubClassLabelMap;
|
import com.yeshi.fanli.exception.GoodsClassException;
|
import com.yeshi.fanli.service.inter.clazz.GoodsSubClassLabelService;
|
import com.yeshi.fanli.util.StringUtil;
|
|
@Service
|
public class GoodsSubClassLabelServiceImpl implements GoodsSubClassLabelService {
|
|
@Resource
|
private GoodsSubClassLabelMapper goodsSubClassLabelMapper;
|
|
@Resource
|
private GoodsSubClassLabelMapMapper goodsSubClassLabelMapMapper;
|
|
@Override
|
public void addSubClassLabel(GoodsSubClassLabel label) throws GoodsClassException {
|
|
if (label == null || label.getGoodsClass() == null || StringUtil.isNullOrEmpty(label.getName()))
|
throw new GoodsClassException(1, "数据不完整");
|
GoodsSubClassLabel oldLabel = goodsSubClassLabelMapper.selectByClassIdAndName(label.getName(),
|
label.getGoodsClass().getId());
|
if (oldLabel != null)
|
throw new GoodsClassException(2, "分类标签名称已经存在");
|
label.setCreateTime(new Date());
|
goodsSubClassLabelMapper.insertSelective(label);
|
}
|
|
@Override
|
public void addSubClassLabelMap(GoodsSubClassLabelMap map) throws GoodsClassException {
|
if (map.getGoodsSubClass() == null || map.getLabel() == null)
|
throw new GoodsClassException(1, "数据不完整");
|
|
GoodsSubClassLabelMap oldMap = goodsSubClassLabelMapMapper.selectByLabelIdAndSubClassId(map.getLabel().getId(),
|
map.getGoodsSubClass().getId());
|
if (oldMap != null)
|
throw new GoodsClassException(2, "对应关系已经存在");
|
// 通过subClassId查询
|
|
GoodsSubClassLabelMap omap = goodsSubClassLabelMapMapper.selectBySubClassId(map.getGoodsSubClass().getId());
|
if (omap != null)
|
goodsSubClassLabelMapMapper.deleteByPrimaryKey(omap.getId());
|
|
map.setCreateTime(new Date());
|
goodsSubClassLabelMapMapper.insertSelective(map);
|
}
|
|
@Override
|
public List<GoodsSubClassLabel> listLabelByClassId(Long classId) {
|
|
return goodsSubClassLabelMapper.listByClassId(classId);
|
}
|
|
@Override
|
public List<GoodsSubClassLabelMap> listMapByLabelId(Long labelId) {
|
return goodsSubClassLabelMapMapper.listMapByLabelId(labelId);
|
}
|
|
@Transactional
|
@Override
|
public void deleteLabel(Long labelId) {
|
|
List<GoodsSubClassLabelMap> maplist = listMapByLabelId(labelId);
|
if (maplist != null)
|
for (GoodsSubClassLabelMap map : maplist) {
|
goodsSubClassLabelMapMapper.deleteByPrimaryKey(map.getId());
|
}
|
goodsSubClassLabelMapper.deleteByPrimaryKey(labelId);
|
}
|
|
@Override
|
public void updateSubClassLabel(GoodsSubClassLabel label) {
|
goodsSubClassLabelMapper.updateByPrimaryKeySelective(label);
|
}
|
|
@Override
|
public GoodsSubClassLabelMap selectBySubClassId(Long subClassId) {
|
|
return goodsSubClassLabelMapMapper.selectBySubClassId(subClassId);
|
}
|
|
}
|