using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using WMS.Model.Strategy;
using WMS.IData.IStrategy;
using WMS.IData;using Oracle.ManagedDataAccess.Client;
namespace WMS.SqlServerData.Strategy
{
public class AccordingData : IAccording
{
///
/// 获得指派依据
///
///
///
public DataTable GetAccording(AccordingModel model)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("select ACCORD_ID,ACCORD_START,ACCORD_END,ACCORD_NUM,REMARK,VERSION,AUTO_ID ");
strSql.Append(" FROM T_STR_ACCORDING where 1= 1");
if (!string.IsNullOrEmpty(model.ACCORD_ID))
{
strSql.Append(" and ACCORD_ID = '" + model.ACCORD_ID + "'");
}
if (!string.IsNullOrEmpty(model.Auto_id))
{
strSql.Append(" and AUTO_ID = '" + model.Auto_id + "'");
}
if (model.ACCORD_NUM != 0)
{
strSql.Append(" and ACCORD_START <= " + model.ACCORD_NUM + " and ACCORD_END >= " + model.ACCORD_NUM + " ");
}
return SystemDataObject.Instance.GetDataTable(strSql.ToString());
}
///
/// 新增指派依据
///
///
public void AddAccording(AccordingModel model)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("insert into T_STR_ACCORDING(");
strSql.Append("ACCORD_ID,ACCORD_START,ACCORD_END,ACCORD_NUM,REMARK,VERSION,AUTO_ID)");
strSql.Append(" values (");
strSql.Append(":ACCORD_ID,:ACCORD_START,:ACCORD_END,:ACCORD_NUM,:REMARK,:VERSION,:AUTO_ID)");
OracleParameter[] parameters = new OracleParameter[]{
new OracleParameter(":ACCORD_ID",OracleDbType.Varchar2),
new OracleParameter(":ACCORD_START", OracleDbType.Decimal),
new OracleParameter(":ACCORD_END", OracleDbType.Decimal),
new OracleParameter(":ACCORD_NUM", OracleDbType.Decimal),
new OracleParameter(":REMARK",OracleDbType.Varchar2),
new OracleParameter(":VERSION",OracleDbType.Varchar2),
new OracleParameter(":AUTO_ID",OracleDbType.Varchar2)};
parameters[0].Value = model.ACCORD_ID;
parameters[1].Value = model.ACCORD_START;
parameters[2].Value = model.ACCORD_END;
parameters[3].Value = model.ACCORD_NUM;
parameters[4].Value = model.REMARK;
parameters[5].Value = model.VERSION;
parameters[6].Value = model.Auto_id;
SystemDataObject.Instance.ExecuteSql(strSql.ToString(), parameters);
}
///
/// 修改指派依据
///
///
public void UpdateAccording(AccordingModel model)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("update T_STR_ACCORDING set ");
strSql.Append("ACCORD_START=:ACCORD_START,");
strSql.Append("ACCORD_END=:ACCORD_END,");
strSql.Append("ACCORD_NUM=:ACCORD_NUM,");
strSql.Append("REMARK=:REMARK,");
strSql.Append("VERSION=:VERSION");
strSql.Append(" where ACCORD_ID=:ACCORD_ID, ");
strSql.Append(" and AUTO_ID=:AUTO_ID, ");
OracleParameter[] parameters = {
new OracleParameter(":ACCORD_START", OracleDbType.Decimal),
new OracleParameter(":ACCORD_END", OracleDbType.Decimal),
new OracleParameter(":ACCORD_NUM", OracleDbType.Decimal),
new OracleParameter(":REMARK",OracleDbType.Varchar2),
new OracleParameter(":VERSION",OracleDbType.Varchar2),
new OracleParameter(":ACCORD_ID",OracleDbType.Varchar2),
new OracleParameter(":AUTO_ID",OracleDbType.Varchar2)};
parameters[0].Value = model.ACCORD_START;
parameters[1].Value = model.ACCORD_END;
parameters[2].Value = model.ACCORD_NUM;
parameters[3].Value = model.REMARK;
parameters[4].Value = model.VERSION;
parameters[5].Value = model.ACCORD_ID;
parameters[6].Value = model.Auto_id;
SystemDataObject.Instance.ExecuteSql(strSql.ToString(), parameters);
}
///
/// 删除指派依据
///
///
public void DeleteAccording(AccordingModel model)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("delete from T_STR_ACCORDING ");
strSql.Append(" where AUTO_ID=:AUTO_ID ");
OracleParameter[] parameters = {
new OracleParameter(":AUTO_ID",OracleDbType.Varchar2)};
parameters[0].Value = model.Auto_id;
SystemDataObject.Instance.ExecuteSql(strSql.ToString(), parameters);
}
///
/// 获取流水号
///
///
public string GetSerNum()
{
string serNum = SystemDataObject.Instance.GetDataTable("select NEXT VALUE FOR [seq_according] ").Rows[0][0].ToString();
return serNum;
}
}
}