package com.steering.pss.sale.order.qualityDesign.Dao.imp;

import java.sql.Connection;
import java.sql.SQLException;
import java.util.List;

import com.steering.pss.sale.order.model.DesignStdSicEntity;
import com.steering.pss.sale.order.qualityDesign.model.ComBaseProductEntity;
import com.steering.pss.sale.order.qualityDesign.model.SlmOrdDesignStdSicEntity;

public interface MscSpecDaoImp {
	/**
	 * 查询已审批公差索引号
	 * 
	 * @param con
	 *            连接字符串
	 * @param msc
	 *            冶金规范码
	 * @param modelCode
	 *            扣型
	 * @return List<String>
	 * @throws SQLException
	 */
	List<String> getExamineSic(Connection con, String msc, String modelCode)
			throws SQLException;

	/**
	 * 查询有效公差索引号
	 * 
	 * @param con
	 *            连接字符串
	 * @param msc
	 *            冶金规范码
	 * @param modelCode
	 *            扣型
	 * @return List<String>
	 * @throws SQLException
	 */
	List<String> getvalidSic(Connection con, String msc, String modelCode)
			throws SQLException;

	/**
	 * 根据公差索引号查询公差标准
	 * 
	 * @param con
	 *            连接字符串
	 * @param sic
	 *            公差索引号
	 * @return List<DesignStdSicEntity>
	 * @throws SQLException
	 */
	List<SlmOrdDesignStdSicEntity> getSpecBySic(Connection con, String sic)
			throws SQLException;

	/**
	 * 保存公差标准
	 * 
	 * @param con
	 *            连接字符串
	 * @param spec
	 *            公差标准类
	 * @throws SQLException
	 */
	void saveSpec(Connection con, SlmOrdDesignStdSicEntity spec)
			throws SQLException;

	/**
	 * 修改交付标准索引号
	 * 
	 * @param con
	 *            连接字符串
	 * @param sic
	 *            成分索引号
	 * @param cic
	 *            质量主键
	 * @throws SQLException
	 */
	void updateDesignStd(Connection con, String sic, String designKey)
			throws SQLException;

	/**
	 * 根据公差索引号查询公差标准(提供给计划用)
	 * 
	 * @param con
	 *            连接字符串
	 * @param sic
	 *            公差索引号
	 * @return List<DesignStdSicEntity>
	 * @throws SQLException
	 */
	List<DesignStdSicEntity> getSpecBySics(Connection con, String sic)
			throws SQLException;

	String getSicFlag(Connection con, String ordLnPk)
			throws SQLException;
	
	/**
	 * 获取品名基础表
	 * @return
	 */
	ComBaseProductEntity getProduct(Connection con, String productCode)
			throws SQLException;
}
