package com.jeesharp.business.modules.mall.convert;

import com.jeesharp.business.modules.mall.dto.MallProductTemplateSaveDTO;
import com.jeesharp.business.modules.mall.entity.MallProductTemplate;
import com.jeesharp.business.modules.mall.entity.MallProductTemplateItem;
import com.jeesharp.business.modules.mall.vo.MallProductTemplateInfoVO;
import com.jeesharp.business.modules.mall.vo.MallProductTemplateItemVO;
import com.jeesharp.business.modules.mall.vo.MallProductTemplateListVO;
import com.jeesharp.business.modules.mall.vo.MallProductTemplateQueryVO;
import com.jeesharp.framework.common.pojo.convert.BasePojoConvert;
import org.mapstruct.Mapper;
import org.mapstruct.ReportingPolicy;
import org.mapstruct.factory.Mappers;

/**
 * 商品发布模板 MapStruct 转换器；明细行在应用层单独装配。
 *
 * @author jeesharp
 * @since 2026-05-15
 */
@Mapper(unmappedTargetPolicy = ReportingPolicy.IGNORE, unmappedSourcePolicy = ReportingPolicy.IGNORE)
public interface MallProductTemplateConvert extends BasePojoConvert<MallProductTemplate, MallProductTemplateSaveDTO, MallProductTemplateInfoVO, MallProductTemplateListVO, MallProductTemplateQueryVO> {

    MallProductTemplateConvert INSTANCE = Mappers.getMapper(MallProductTemplateConvert.class);

    MallProductTemplateItemVO itemToVo(MallProductTemplateItem entity);
}
