package com.dk.mdm.service.pur;

import com.dk.common.infrastructure.annotaiton.Pagination;
import com.dk.common.model.pojo.PageList;
import com.dk.common.response.ResponseResultVO;
import com.dk.mdm.model.pojo.pur.PurchaseItem;
import com.dk.mdm.mapper.pur.PurchaseItemMapper;
import com.dk.common.service.BaseService;
import com.dk.common.mapper.BaseMapper;
import com.dk.mdm.model.query.pur.PurchaseItemQuery;
import com.dk.mdm.model.response.pur.PurchaseItemResponse;
import org.springframework.stereotype.Service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;

@Service
@Transactional
public class PurchaseItemService extends BaseService<PurchaseItem> {

	@Override
	public BaseMapper<PurchaseItem> getRepository() {
		return purchaseItemMapper;
	}

	@Autowired
	private PurchaseItemMapper purchaseItemMapper;

	/**
	 * @desc   : 重写主键
	 * @author : 常皓宁
	 * @date   : 2024/2/28 15:16
	 */
	@Override
	public String getPrimaryKey() {
		return "item_id";
	}


	/**
	 * @desc   : 条件查询
	 * @author : 常皓宁
	 * @date   : 2024/2/28 15:16
	 */
	@Pagination
	public ResponseResultVO<PageList<PurchaseItemResponse>> selectByCond(PurchaseItemQuery purchaseItemQuery) {
		return super.mergeListWithCount(purchaseItemMapper, purchaseItemMapper.selectByCond(purchaseItemQuery), purchaseItemMapper.countByCond(purchaseItemQuery));
	}

	/**
	 * @desc   : 根据id编辑
	 * @author : 常皓宁
	 * @date   : 2024/2/28 15:16
	 */
	@Pagination
	public ResponseResultVO<Boolean> updataById(PurchaseItem purchaseItem) {
		return super.updateByUuid(purchaseItem);
	}

}
