using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WMS.IData.ISC;
using WMS.Model.SC;
using System.Data;
using WMS.IData;using System.Data.SqlClient;
namespace WMS.SqlServerData.SCData
{
public class WorkingTaskData : IWorkingTask
{
#region 根据条件获得物料数据
///
/// 获得物料数据
///
///
///
public DataTable GetMaterialList(WorkingTaskModel model)
{
StringBuilder strSql = new StringBuilder();
strSql.Append(@"select t.PALAN_ID,
pl.plan_name palan_name,
t.GOODS_ID,
g.goods_name GOODS_NAME,
t.MATERIAL_ID,
m.goods_name MATERIAL_NAME,
p.Goods_Num GOODS_NUM,
p.Goods_Completenum GOODS_COMPLETEMUN,
p.complete_date COMPLETE_DATE,
p.team_id TEAM_ID,
t.STAND_NUM,
t.MAX_NUM,
t.REALITY_NUM,
t.LOSS_PERCENT,
t.REALITY_MAN,
u.Name REALITY_MAN_NAME,
t.OPERAT_MAN,
b.name OPERAT_MAN_NAME,
t.OPERAT_DATE,
t.REALITY_DATE,
t.REMARK,
t.UNIT,
t.PRICE
FROM T_SC_GET_MATERIAL t
left join T_BASE_GOODS g
on t.goods_id = g.goods_id
left join T_BASE_GOODS m
on t.material_id = m.goods_id
left join T_BASE_USERINFO u
on t.reality_man = u.user_id
left join T_BASE_USERINFO b
on t.operat_man = b.user_id
left join T_SC_PLANGOODS p
on t.goods_id = p.goods_id
and t.palan_id = p.plan_id
left join T_SC_PROCESS_PLAN pl
on t.palan_id = pl.plan_id
");
strSql.Append(" where 1= 1");
if (!string.IsNullOrEmpty(model.GOODS_ID))
{
strSql.Append(" and t.GOODS_ID ='" + model.GOODS_ID + "'");
}
if (!string.IsNullOrEmpty(model.PALAN_ID))
{
strSql.Append(" and t.PALAN_ID='" + model.PALAN_ID + "'");
}
return SystemDataObject.Instance.GetDataTable(strSql.ToString());
}
#endregion
#region 新增一条
///
/// 新增一条数据
///
///
public void AddMaterialByModel(WorkingTaskModel model)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("insert into T_SC_GET_MATERIAL(");
strSql.Append("PALAN_ID,GOODS_ID,MATERIAL_ID,STAND_NUM,MAX_NUM,REALITY_NUM,LOSS_PERCENT,REALITY_MAN,OPERAT_MAN,OPERAT_DATE,REMARK,UNIT,PRICE,REALITY_DATE,GOODS_NUM)");
strSql.Append(" values (");
strSql.Append("@PALAN_ID,@GOODS_ID,@MATERIAL_ID,@STAND_NUM,@MAX_NUM,@REALITY_NUM,@LOSS_PERCENT,@REALITY_MAN,@OPERAT_MAN,@OPERAT_DATE,@REMARK,@UNIT,@PRICE,@REALITY_DATE,@GOODS_NUM)");
SqlParameter[] parameters = {
new SqlParameter("@PALAN_ID", SqlDbType.VarChar,50),
new SqlParameter("@GOODS_ID", SqlDbType.VarChar,50),
new SqlParameter("@MATERIAL_ID", SqlDbType.VarChar,50),
new SqlParameter("@STAND_NUM", SqlDbType.Decimal,4),
new SqlParameter("@MAX_NUM", SqlDbType.Decimal,4),
new SqlParameter("@REALITY_NUM", SqlDbType.Decimal,4),
new SqlParameter("@LOSS_PERCENT", SqlDbType.Decimal,4),
new SqlParameter("@REALITY_MAN", SqlDbType.VarChar,50),
new SqlParameter("@OPERAT_MAN", SqlDbType.VarChar,50),
new SqlParameter("@OPERAT_DATE", SqlDbType.Date),
new SqlParameter("@REMARK", SqlDbType.VarChar,50),
new SqlParameter("@UNIT", SqlDbType.Char),
new SqlParameter("@PRICE", SqlDbType.Decimal,4),
new SqlParameter("@REALITY_DATE",SqlDbType.Date),
new SqlParameter("@GOODS_NUM", SqlDbType.Decimal,4)
};
parameters[0].Value = model.PALAN_ID;
parameters[1].Value = model.GOODS_ID;
parameters[2].Value = model.MATERIAL_ID;
parameters[3].Value = model.STAND_NUM;
parameters[4].Value = model.MAX_NUM;
parameters[5].Value = model.REALITY_NUM;
parameters[6].Value = model.LOSS_PERCENT;
parameters[7].Value = model.REALITY_MAN;
parameters[8].Value = model.OPERAT_MAN;
parameters[9].Value = model.OPERAT_DATE;
parameters[10].Value = model.REMARK;
parameters[11].Value = model.UNIT;
parameters[12].Value = model.PRICE;
parameters[13].Value = model.REALITY_DATE;
parameters[14].Value = model.GOODS_NUM;
SystemDataObject.Instance.ExecuteSql(strSql.ToString(), parameters);
}
#endregion
#region 新增多条
///
/// 新增集合
///
///
public void AddMaterialList(List list)
{
StringBuilder strSql = new StringBuilder();
List strlist = new List();
List strparam = new List();
foreach (WorkingTaskModel item in list)
{
strSql = new StringBuilder();
strSql.Append("insert into T_SC_GET_MATERIAL(");
strSql.Append("PALAN_ID,GOODS_ID,MATERIAL_ID,STAND_NUM,MAX_NUM,REALITY_NUM,LOSS_PERCENT,REALITY_MAN,OPERAT_MAN,OPERAT_DATE,REMARK,UNIT,PRICE,REALITY_DATE,GOODS_NUM)");
strSql.Append(" values (");
strSql.Append("@PALAN_ID,@GOODS_ID,@MATERIAL_ID,@STAND_NUM,@MAX_NUM,@REALITY_NUM,@LOSS_PERCENT,@REALITY_MAN,@OPERAT_MAN,@OPERAT_DATE,@REMARK,@UNIT,@PRICE,@REALITY_DATE,@GOODS_NUM)");
SqlParameter[] parameters = {
new SqlParameter("@PALAN_ID", SqlDbType.VarChar,50),
new SqlParameter("@GOODS_ID", SqlDbType.VarChar,50),
new SqlParameter("@MATERIAL_ID", SqlDbType.VarChar,50),
new SqlParameter("@STAND_NUM", SqlDbType.Decimal,4),
new SqlParameter("@MAX_NUM", SqlDbType.Decimal,4),
new SqlParameter("@REALITY_NUM", SqlDbType.Decimal,4),
new SqlParameter("@LOSS_PERCENT", SqlDbType.Decimal,4),
new SqlParameter("@REALITY_MAN", SqlDbType.VarChar,50),
new SqlParameter("@OPERAT_MAN", SqlDbType.VarChar,50),
new SqlParameter("@OPERAT_DATE", SqlDbType.Date),
new SqlParameter("@REMARK", SqlDbType.VarChar,50),
new SqlParameter("@UNIT", SqlDbType.Char),
new SqlParameter("@PRICE", SqlDbType.Decimal,4),
new SqlParameter("@REALITY_DATE",SqlDbType.Date),
new SqlParameter("@GOODS_NUM", SqlDbType.Decimal,4) };
parameters[0].Value = item.PALAN_ID;
parameters[1].Value = item.GOODS_ID;
parameters[2].Value = item.MATERIAL_ID;
parameters[3].Value = item.STAND_NUM;
parameters[4].Value = item.MAX_NUM;
parameters[5].Value = item.REALITY_NUM;
parameters[6].Value = item.LOSS_PERCENT;
parameters[7].Value = item.REALITY_MAN;
parameters[8].Value = item.OPERAT_MAN;
parameters[9].Value = item.OPERAT_DATE;
parameters[10].Value = item.REMARK;
parameters[11].Value = item.UNIT;
parameters[12].Value = item.PRICE;
parameters[13].Value = item.REALITY_DATE;
parameters[14].Value = item.GOODS_NUM;
strlist.Add(strSql.ToString());
strparam.Add(parameters);
}
SystemDataObject.Instance.ExecuteList(strlist, strparam);
}
#endregion
#region 更新一条
///
/// 更新一条数据
///
///
public void UpdateMaterialByModel(WorkingTaskModel model)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("update T_SC_GET_MATERIAL set ");
strSql.Append("PALAN_ID=@PALAN_ID,");
strSql.Append("GOODS_ID=@GOODS_ID,");
strSql.Append("MATERIAL_ID=@MATERIAL_ID,");
strSql.Append("STAND_NUM=@STAND_NUM,");
strSql.Append("MAX_NUM=@MAX_NUM,");
strSql.Append("REALITY_NUM=@REALITY_NUM,");
strSql.Append("LOSS_PERCENT=@LOSS_PERCENT,");
strSql.Append("REALITY_MAN=@REALITY_MAN,");
strSql.Append("OPERAT_MAN=@OPERAT_MAN,");
strSql.Append("OPERAT_DATE=@OPERAT_DATE,");
strSql.Append("REMARK=@REMARK,");
strSql.Append("UNIT=@UNIT,");
strSql.Append("PRICE=@PRICE,");
strSql.Append("REALITY_DATE=@REALITY_DATE,");
strSql.Append("GOODS_NUM=@GOODS_NUM");
strSql.Append(" where PALAN_ID=@PALAN_ID and GOODS_ID=@GOODS_ID and MATERIAL_ID=@MATERIAL_ID ");
SqlParameter[] parameters = {
new SqlParameter("@PALAN_ID", SqlDbType.VarChar,50),
new SqlParameter("@GOODS_ID", SqlDbType.VarChar,50),
new SqlParameter("@MATERIAL_ID", SqlDbType.VarChar,50),
new SqlParameter("@STAND_NUM", SqlDbType.Decimal,4),
new SqlParameter("@MAX_NUM", SqlDbType.Decimal,4),
new SqlParameter("@REALITY_NUM", SqlDbType.Decimal,4),
new SqlParameter("@LOSS_PERCENT", SqlDbType.Decimal,4),
new SqlParameter("@REALITY_MAN", SqlDbType.VarChar,50),
new SqlParameter("@OPERAT_MAN", SqlDbType.VarChar,50),
new SqlParameter("@OPERAT_DATE", SqlDbType.Date),
new SqlParameter("@REMARK", SqlDbType.VarChar,50),
new SqlParameter("@UNIT", SqlDbType.Char,2),
new SqlParameter("@PRICE", SqlDbType.Decimal,4),
new SqlParameter("@REALITY_DATE", SqlDbType.Date),
new SqlParameter("@GOODS_NUM", SqlDbType.Decimal,4),
new SqlParameter("@PALAN_ID", SqlDbType.VarChar,50),
new SqlParameter("@GOODS_ID", SqlDbType.VarChar,50),
new SqlParameter("@MATERIAL_ID", SqlDbType.VarChar,50)
};
parameters[0].Value = model.PALAN_ID;
parameters[1].Value = model.GOODS_ID;
parameters[2].Value = model.MATERIAL_ID;
parameters[3].Value = model.STAND_NUM;
parameters[4].Value = model.MAX_NUM;
parameters[5].Value = model.REALITY_NUM;
parameters[6].Value = model.LOSS_PERCENT;
parameters[7].Value = model.REALITY_MAN;
parameters[8].Value = model.OPERAT_MAN;
parameters[9].Value = model.OPERAT_DATE;
parameters[10].Value = model.REMARK;
parameters[11].Value = model.UNIT;
parameters[12].Value = model.PRICE;
parameters[13].Value = model.REALITY_DATE;
parameters[14].Value = model.GOODS_NUM;
parameters[15].Value = model.PALAN_ID;
parameters[16].Value = model.GOODS_ID;
parameters[17].Value = model.MATERIAL_ID;
SystemDataObject.Instance.ExecuteSql(strSql.ToString(), parameters);
}
#endregion
#region 更新多条
///
/// 更新集合
///
///
public void UpdateMaterialList(List list)
{
StringBuilder strSql = new StringBuilder();
List strlist = new List();
List strparam = new List();
foreach (WorkingTaskModel item in list)
{
strSql = new StringBuilder();
strSql.Append("update T_SC_GET_MATERIAL set ");
strSql.Append("PALAN_ID=@PALAN_ID,");
strSql.Append("GOODS_ID=@GOODS_ID,");
strSql.Append("MATERIAL_ID=@MATERIAL_ID,");
strSql.Append("STAND_NUM=@STAND_NUM,");
strSql.Append("MAX_NUM=@MAX_NUM,");
strSql.Append("REALITY_NUM=@REALITY_NUM,");
strSql.Append("LOSS_PERCENT=@LOSS_PERCENT,");
strSql.Append("REALITY_MAN=@REALITY_MAN,");
strSql.Append("OPERAT_MAN=@OPERAT_MAN,");
strSql.Append("OPERAT_DATE=@OPERAT_DATE,");
strSql.Append("REMARK=@REMARK,");
strSql.Append("UNIT=@UNIT,");
strSql.Append("PRICE=@PRICE,");
strSql.Append("GOODS_NUM=@GOODS_NUM,");
strSql.Append("REALITY_DATE=@REALITY_DATE");
strSql.Append(" where PALAN_ID=@PALAN_ID and GOODS_ID=@GOODS_ID and MATERIAL_ID=@MATERIAL_ID ");
SqlParameter[] parameters = {
new SqlParameter("@PALAN_ID", SqlDbType.VarChar,50),
new SqlParameter("@GOODS_ID", SqlDbType.VarChar,50),
new SqlParameter("@MATERIAL_ID", SqlDbType.VarChar,50),
new SqlParameter("@STAND_NUM", SqlDbType.Decimal,4),
new SqlParameter("@MAX_NUM", SqlDbType.Decimal,4),
new SqlParameter("@REALITY_NUM", SqlDbType.Decimal,4),
new SqlParameter("@LOSS_PERCENT", SqlDbType.Decimal,4),
new SqlParameter("@REALITY_MAN", SqlDbType.VarChar,50),
new SqlParameter("@OPERAT_MAN", SqlDbType.VarChar,50),
new SqlParameter("@OPERAT_DATE", SqlDbType.Date),
new SqlParameter("@REMARK", SqlDbType.VarChar,50),
new SqlParameter("@UNIT", SqlDbType.Char),
new SqlParameter("@PRICE", SqlDbType.Decimal,4),
new SqlParameter("@GOODS_NUM",SqlDbType.Decimal),
new SqlParameter("@REALITY_DATE",SqlDbType.Date),
new SqlParameter("@PALAN_ID", SqlDbType.VarChar,50),
new SqlParameter("@GOODS_ID", SqlDbType.VarChar,50),
new SqlParameter("@MATERIAL_ID", SqlDbType.VarChar,50)};
parameters[0].Value = item.PALAN_ID;
parameters[1].Value = item.GOODS_ID;
parameters[2].Value = item.MATERIAL_ID;
parameters[3].Value = item.STAND_NUM;
parameters[4].Value = item.MAX_NUM;
parameters[5].Value = item.REALITY_NUM;
parameters[6].Value = item.LOSS_PERCENT;
parameters[7].Value = item.REALITY_MAN;
parameters[8].Value = item.OPERAT_MAN;
parameters[9].Value = item.OPERAT_DATE;
parameters[10].Value = item.REMARK;
parameters[11].Value = item.UNIT;
parameters[12].Value = item.PRICE;
parameters[13].Value = item.GOODS_NUM;
parameters[14].Value = item.REALITY_DATE;
parameters[15].Value = item.PALAN_ID;
parameters[16].Value = item.GOODS_ID;
parameters[17].Value = item.MATERIAL_ID;
strlist.Add(strSql.ToString());
strparam.Add(parameters);
strSql.Clear();
}
SystemDataObject.Instance.ExecuteList(strlist, strparam);
}
#endregion
#region 删除一条
///
/// 删除一条数据
///
///
public void DeleteMaterialByModel(WorkingTaskModel model)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("delete from T_SC_GET_MATERIAL ");
strSql.Append(" where PALAN_ID=@PALAN_ID and GOODS_ID=@GOODS_ID and MATERIAL_ID=@MATERIAL_ID ");
SqlParameter[] parameters = {
new SqlParameter("@PALAN_ID", SqlDbType.VarChar,50),
new SqlParameter("@GOODS_ID", SqlDbType.VarChar,50),
new SqlParameter("@MATERIAL_ID", SqlDbType.VarChar,50) };
parameters[0].Value = model.PALAN_ID;
parameters[1].Value = model.GOODS_ID;
parameters[2].Value = model.MATERIAL_ID;
SystemDataObject.Instance.ExecuteSql(strSql.ToString(), parameters);
}
#endregion
}
}