package cn.tsy.idsse.dsds.service.dict;

import java.time.LocalDateTime;
import java.util.List;

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

import cn.hme.framework.web.exception.BusinessException;
import cn.hme.framework.web.helper.FrameAssertHelper;
import cn.tsy.data.idsse.dsds.mapper.dict.DictDataMapper;
import cn.tsy.data.idsse.dsds.model.dict.DictData;

@Service
public class DictDataService {

	@Autowired
	private DictDataMapper mData;

	/***********************
	 * 增加或者修改
	 */
	public void editData(DictData data) {
		FrameAssertHelper.isNotEmpty(data.getData_name(), "数据样本类型名称不允许为空！");
		// 判断类型是否存在
		List<DictData> list = this.mData.selectListByColumn("data_name", data.getData_name());
		if (data.getTsy_id() != null) {
			if (list.size() > 0 && list.get(0).getTsy_id() - data.getTsy_id() != 0)
				throw new BusinessException("数据样本类型名称【" + data.getData_name() + "】已经存在，请检查！");
			this.mData.update(data);
		} else {
			FrameAssertHelper.isEmpty(list, "数据样本类型名称【" + data.getData_name() + "】已经存在，请检查！");
			data.setCreate_time(LocalDateTime.now());
			this.mData.insert(data);
		}
	}

	/*****************************
	 * 删除，
	 */
	public void deleteData(int data_id) {
		/**************
		 * @todo 需要去判断是否真的可以删除
		 */
		this.mData.deleteByKey(data_id);
	}
}
