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.DesignStdCicEntity;
import com.steering.pss.sale.order.model.DesignStdDicEntity;
import com.steering.pss.sale.order.model.DesignStdEntity;
import com.steering.pss.sale.order.model.DesignStdGicEntity;
import com.steering.pss.sale.order.model.DesignStdPicEntity;
import com.steering.pss.sale.order.model.DesignStdPicSmpEntity;
import com.steering.pss.sale.order.model.DesignStdSicEntity;
import com.steering.pss.sale.order.model.DesignStdWicEntity;
import com.steering.pss.sale.order.model.DesignWaterRatioEntity;
import com.steering.pss.sale.order.model.MscStdWaterEntity;

/**
 * 交付标准连接数据 接口
 * 
 * @author Administrator
 * 
 */
public interface DeliveryStdDaoImp {
	/**
	 * 查询引用冶金规范码
	 * 
	 * @param con
	 * @param msc
	 * @return
	 */
	String getQuoteMsc(java.sql.Connection con, String msc) throws SQLException;

	/**
	 * 查询水压压力等
	 * 
	 * @param con
	 * @param modelCode
	 *            扣型
	 * @param stdCode
	 *            标准
	 * @param steelStyle
	 *            钢级
	 * @param stdStyle
	 *            类别
	 * @return
	 * @throws SQLException
	 */
	List<DesignWaterRatioEntity> getWaterPress(Connection con,
			String modelCode, String stdCode, String steelStyle, String stdStyle)
			throws SQLException;

	/**
	 * 查询引用水压标准
	 * 
	 * @param con
	 *            连接字符串
	 * @param stdCode
	 *            标准
	 * @param stdStyle
	 *            标准类别
	 * @return 引用水压标准和引用水压标准类别
	 * @throws SQLException
	 */
	String[] getQuoteWaterStd(Connection con, String stdCode, String stdStyle)
			throws SQLException;

	/**
	 * 查询成分索引号 （扣型，冶金规范码）
	 * 
	 * @param con
	 * @param msc
	 *            冶金规范码
	 * @param modelCode
	 *            扣型
	 * @return 成分索引号集合
	 * @throws SQLException
	 */
	List<String> getCic(Connection con, String msc, String modelCode)
			throws SQLException;

	/**
	 * 查询理化索引号 （扣型，冶金规范码）
	 * 
	 * @param con
	 * @param msc
	 *            冶金规范码
	 * @param modelCode
	 *            扣型
	 * @return 理化索引号集合
	 * @throws SQLException
	 */
	List<String> getPic(Connection con, String msc, String modelCode)
			throws SQLException;

	/**
	 * 查询公差索引号 （扣型，冶金规范码）
	 * 
	 * @param con
	 * @param msc
	 *            冶金规范码
	 * @param modelCode
	 *            扣型
	 * @return
	 * @throws SQLException
	 */
	List<String> getSic(Connection con, String msc, String modelCode)
			throws SQLException;

	/**
	 * 查询探伤索引号 （扣型，冶金规范码）
	 * 
	 * @param con
	 * @param msc
	 *            冶金规范码
	 * @param modelCode
	 *            扣型
	 * @return
	 * @throws SQLException
	 */
	List<String> getDic(Connection con, String msc, String modelCode)
			throws SQLException;

	/**
	 * 查询水压主表信息（扣型，冶金规范码）
	 * 
	 * @param con
	 * @param msc
	 *            冶金规范码
	 * @param modelCode
	 *            扣型
	 * @return
	 * @throws SQLException
	 */
	List<MscStdWaterEntity> getWic(Connection con, String msc, String modelCode)
			throws SQLException;

	/**
	 * 查询加工索引号 （扣型，冶金规范码）
	 * 
	 * @param con
	 * @param msc
	 *            冶金规范码
	 * @param modelCode
	 *            扣型
	 * @return
	 * @throws SQLException
	 */
	List<String> getGic(Connection con, String msc, String modelCode)
			throws SQLException;

	/**
	 * 增加 质量设计-交付标准
	 * 
	 * @param con
	 *            连接字符串
	 * @param comDesignStd
	 *            质量设计-交付标准
	 * @param designKey
	 *            designKey
	 * @throws SQLException
	 */
	void addStandard(java.sql.Connection con, DesignStdEntity comDesignStd,
			String designKey) throws SQLException;

	/**
	 * 查询成分标准
	 * 
	 * @param con
	 *            连接字符串
	 * @param cic
	 *            成分索引号
	 * @return 成分标准集合
	 * @throws SQLException
	 */
	List<DesignStdCicEntity> getChem(java.sql.Connection con, String cic)
			throws SQLException;

	/**
	 * 保存成分标准
	 * 
	 * @param con
	 *            连接字符串
	 * @param chem
	 *            成分实体类
	 * @param designKey
	 *            key
	 * @throws SQLException
	 */
	void saveChem(java.sql.Connection con, DesignStdCicEntity chem,
			String designKey, String userName) throws SQLException;

	/**
	 * 查询 理化标准
	 * 
	 * @param con
	 *            连接字符串
	 * @param pic
	 *            理化索引号
	 * @return 集合
	 * @throws SQLException
	 */
	List<DesignStdPicEntity> getPhy(java.sql.Connection con, String pic)
			throws SQLException;

	/**
	 * 保存理化标准
	 * 
	 * @param con
	 *            连接字符串
	 * @param phy
	 *            理化实体类
	 * @param designKey
	 *            KEY
	 * @param userName
	 *            用户
	 * @throws SQLException
	 */
	void savePhy(java.sql.Connection con, DesignStdPicEntity phy,
			String designKey, String userName) throws SQLException;

	/**
	 * 查询取样检验要求
	 * 
	 * @param con
	 *            连接字符串
	 * @param pic
	 *            理化索引号
	 * @param phyCodeMin
	 *            取样码
	 * @return 取样实体类
	 * @throws SQLException
	 */
	DesignStdPicSmpEntity getPicSample(java.sql.Connection con, String pic,
			String phyCodeMin) throws SQLException;

	/**
	 * 保存检验要求
	 * 
	 * @param con
	 *            连接字符串
	 * @param comPicSmp
	 *            取样实体类
	 * @param designKey
	 *            key
	 * @throws SQLException
	 */
	void savePicSample(java.sql.Connection con,
			DesignStdPicSmpEntity comPicSmp, String designKey)
			throws SQLException;

	/**
	 * 查询 公差标准
	 * 
	 * @param con
	 *            连接字符串
	 * @param sic
	 *            公差索引号
	 * @return 集合
	 * @throws SQLException
	 */
	List<DesignStdSicEntity> getSpec(java.sql.Connection con, String sic)
			throws SQLException;

	/**
	 * 保存 质量设计公差标准
	 * 
	 * @param con
	 *            连接字符串
	 * @param spec
	 *            公差索引号
	 * @param designKey
	 *            KEY
	 * @throws SQLException
	 */
	void saveSpec(java.sql.Connection con, DesignStdSicEntity spec,
			String designKey) throws SQLException;

	/**
	 * 查询 探伤标准
	 * 
	 * @param con
	 *            连接字符串
	 * @param dic
	 *            探伤索引号
	 * @return
	 * @throws SQLException
	 */
	List<DesignStdDicEntity> getDetes(java.sql.Connection con, String dic)
			throws SQLException;

	/**
	 * 保存探伤标准
	 * 
	 * @param con
	 *            连接字符串
	 * @param dete
	 *            探伤标准
	 * @param designKey
	 *            KEY
	 * @throws SQLException
	 */
	void saveDete(java.sql.Connection con, DesignStdDicEntity dete,
			String designKey) throws SQLException;

	/**
	 * 查询水压标准
	 * 
	 * @param con
	 * @param wic
	 * @return
	 * @throws SQLException
	 */
	List<DesignStdWicEntity> getWater(java.sql.Connection con, String wic)
			throws SQLException;

	/**
	 * 保存质量设计水压标准
	 * 
	 * @param con
	 * @param water
	 * @param designKey
	 * @throws SQLException
	 */
	void saveWater(java.sql.Connection con, DesignStdWicEntity water,
			String designKey) throws SQLException;

	/**
	 * 查询加工标准
	 * 
	 * @param con
	 * @param gic
	 * @return
	 * @throws SQLException
	 */
	List<DesignStdGicEntity> getProcess(java.sql.Connection con, String gic)
			throws SQLException;

	/**
	 * 保存质量设计加工标准
	 * 
	 * @param con
	 * @param process
	 * @param designKey
	 * @throws SQLException
	 */
	void saveProcess(java.sql.Connection con, DesignStdGicEntity process,
			String designKey) throws SQLException;

}
