package com.unis.base.server.domain;

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

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import com.alibaba.fastjson.JSONObject;
import com.unis.base.common.vo.TyZjxxmxbVO;
import com.unis.base.server.dao.TyZjxxmxbDao;
import com.unis.base.server.entity.TyZjxxmxbDO;
import com.unis.common.utils.LsBeanUtils;

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

	@Autowired
	private TyZjxxmxbDao tyZjxxmxbMapper;

	/**
	 *
	 * @param TyZjxxmxbVo
	 * @return
	 */
	public List<TyZjxxmxbVO> getTyZjxxmxbList(TyZjxxmxbVO tyZjxxmxbVO) {
		TyZjxxmxbDO zjxxmxbDO = new TyZjxxmxbDO();
		// 进行传递参数copy
		LsBeanUtils.copyAllProperties(tyZjxxmxbVO, zjxxmxbDO);
		List<TyZjxxmxbVO> tyZjxxmxbVoList = new ArrayList<TyZjxxmxbVO>();

		for (TyZjxxmxbDO tyZjxxmxbDO : tyZjxxmxbMapper.select(zjxxmxbDO)) {
			TyZjxxmxbVO tyZjxxmxbV = new TyZjxxmxbVO();
			LsBeanUtils.copyAllProperties(tyZjxxmxbDO, tyZjxxmxbV);
			tyZjxxmxbVoList.add(tyZjxxmxbV);
		}
		return tyZjxxmxbVoList;
	}

	/**
	 *
	 * @param TyZjxxmxbVo
	 * @return
	 */
	public int insert(TyZjxxmxbVO tyZjxxmxbVO) {
		// 进行传递参数copy
		TyZjxxmxbDO tyZjxxmxbDO = new TyZjxxmxbDO();
		LsBeanUtils.copyAllProperties(tyZjxxmxbVO, tyZjxxmxbDO);
		return tyZjxxmxbMapper.insert(tyZjxxmxbDO);
	}

	/**
	 *
	 * @param zjxxid
	 * @return
	 */
	public TyZjxxmxbVO getTyZjxxmxbById(String zjxxid) {
		TyZjxxmxbVO tyZjxxmxbVO = new TyZjxxmxbVO();
		LsBeanUtils.copyAllProperties(tyZjxxmxbMapper.selectByKey(zjxxid), tyZjxxmxbVO);
		return tyZjxxmxbVO;
	}

	/**
	 *
	 * @param TyZjxxmxbVo
	 * @return
	 */
	public int update(TyZjxxmxbVO tyZjxxmxbVO) {
		// 进行传递参数copy
		TyZjxxmxbDO tyZjxxmxbDO = new TyZjxxmxbDO();
		LsBeanUtils.copyAllProperties(tyZjxxmxbVO, tyZjxxmxbDO);
		return tyZjxxmxbMapper.updateByPrimaryKey(tyZjxxmxbDO);

	}

	/**
	 * 用质检信息id获得所有的列表
	 *
	 * @param zjxxid
	 * @return
	 */
	public List<TyZjxxmxbVO> getTyZjxxmxbByzjxxid(String zjxxid) {

		List<TyZjxxmxbDO> voList = tyZjxxmxbMapper.getTyZjxxmxbByzjxxid(zjxxid);

		List<TyZjxxmxbVO> parseArray = JSONObject.parseArray(JSONObject.toJSONString(voList), TyZjxxmxbVO.class);

		return parseArray;
	}



	/**
	 *
	 * @param TyZjxxmxbVo 批量新增质检明细
	 * @return
	 */
	public int batchInserts(List<TyZjxxmxbVO> tyZjxxmxbVO) {
		int i=0;
		for (int t = 0; t < tyZjxxmxbVO.size(); t++) {
			//进行传递参数copy
			TyZjxxmxbDO tyZjxxmxbDO = new TyZjxxmxbDO();
			LsBeanUtils.copyAllProperties(tyZjxxmxbVO.get(t), tyZjxxmxbDO);
			i= tyZjxxmxbMapper.insert(tyZjxxmxbDO);
		}
		return i;
	}


}
