package com.hfkj.service.impl;

import com.hfkj.dao.BsStoreAttachMapper;
import com.hfkj.entity.BsStoreAttach;
import com.hfkj.entity.BsStoreAttachExample;
import com.hfkj.service.BsStoreAttachService;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.Date;
import java.util.List;

/**
 * @className: BsStoreAttachServiceImpl
 * @author: HuRui
 * @date: 2022/12/3
 **/
@Service("storeAttachService")
public class BsStoreAttachServiceImpl implements BsStoreAttachService {

    @Resource
    private BsStoreAttachMapper storeAttachMapper;

    @Override
    public void editAttach(BsStoreAttach storeAttach) {
        if (storeAttach.getId() != null) {
            storeAttach.setStatus(1);
            storeAttach.setCreateTime(new Date());
            storeAttach.setUpdateTime(new Date());
            storeAttachMapper.insert(storeAttach);
        } else {
            storeAttach.setUpdateTime(new Date());
            storeAttachMapper.updateByPrimaryKey(storeAttach);
        }
    }

    @Override
    public List<BsStoreAttach> getAttachList(Long storeId, Integer type) {
        BsStoreAttachExample example = new BsStoreAttachExample();
        BsStoreAttachExample.Criteria criteria = example.createCriteria()
                                            .andStoreIdEqualTo(storeId)
                                            .andStatusNotEqualTo(0);

        if (type != null) {
            criteria.andTypeEqualTo(type);
        }

        example.setOrderByClause("create_time desc");
        return storeAttachMapper.selectByExample(example);
    }
}
