package com.unis.base.server.domain;

import java.util.ArrayList;
import java.util.List;

import com.github.pagehelper.PageInfo;
import com.unis.base.common.vo.TyZjxxzbQueryVO;
import org.springframework.beans.factory.annotation.Autowired;
import com.unis.base.common.vo.TyZjxxzbVO;
import com.unis.base.server.dao.TyZjxxzbDao;
import com.unis.base.server.entity.TyZjxxzbDO;
import com.unis.common.utils.LsBeanUtils;
import org.springframework.stereotype.Component;

/**
 * @author huangxing
 * @version 1.0
 * @Title TyZjxxmxbDomain
 * @ProjectName 持久化
 * @Description
 * @date 2019/07/22 17点26分
 */
@Component
public class TyZjxxzbDomain extends BaseDomain {

	@Autowired
	private TyZjxxzbDao tyZjxxzbMapper;

	/**
	 *
	 * @param tyZjxxzbQueryVO
	 * @return
	 */
	public List<TyZjxxzbVO> getTyZjxxzbList(TyZjxxzbQueryVO tyZjxxzbQueryVO) {
		return tyZjxxzbMapper.getTyZjxxzbList(tyZjxxzbQueryVO);
	}

	/**
	 *
	 * @param tyZjxxzbVO
	 * @return
	 */
	public int insert(TyZjxxzbVO tyZjxxzbVO) {
		//进行传递参数copy
		TyZjxxzbDO tyZjxxzbDO = new TyZjxxzbDO();
		LsBeanUtils.copyAllProperties(tyZjxxzbVO, tyZjxxzbDO);
		return tyZjxxzbMapper.insert(tyZjxxzbDO);
	}

	/**
	 *
	 * @param zjxxid
	 * @return
	 */
	public TyZjxxzbVO getTyZjxxzbById(String zjxxid) {
		TyZjxxzbVO tyZjxxzbVO = new TyZjxxzbVO();
		LsBeanUtils.copyAllProperties(tyZjxxzbMapper.selectByKey(zjxxid), tyZjxxzbVO);
		return tyZjxxzbVO;
	}

	/**
	 *
	 * @param tyZjxxzbVO
	 * @return
	 */
	public int update(TyZjxxzbVO tyZjxxzbVO) {
		//进行传递参数copy
		TyZjxxzbDO tyZjxxzbDO = new TyZjxxzbDO();
		LsBeanUtils.copyAllProperties(tyZjxxzbVO, tyZjxxzbDO);
		return tyZjxxzbMapper.updateByPrimaryKey(tyZjxxzbDO);
	}


	/**
	 * 获取所有列表不分页
	 * @return
	 */
	public PageInfo<TyZjxxzbVO> getAllList() {
		List<TyZjxxzbDO> list = tyZjxxzbMapper.selectAllList();
		PageInfo<TyZjxxzbDO> page = new PageInfo<TyZjxxzbDO>(list);

		PageInfo<TyZjxxzbVO> pageList = new PageInfo<TyZjxxzbVO>();
		LsBeanUtils.copyAllProperties(page, pageList);


		return pageList;
	}

	/**
	 *
	 * @param tyZjxxzbVO 批量新增
	 * @return
	 */
	public int batchInserts(List<TyZjxxzbVO> tyZjxxzbVO) {
		int i=0;
		for (int t = 0; t < tyZjxxzbVO.size(); t++) {
			//进行传递参数copy
			TyZjxxzbDO tyZjxxzbDO = new TyZjxxzbDO();
			LsBeanUtils.copyAllProperties(tyZjxxzbVO.get(t), tyZjxxzbDO);
			i=tyZjxxzbMapper.insert(tyZjxxzbDO);
		}
		return i;
	}

}
