1087 lines
52 KiB
C#
1087 lines
52 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using WMS.Model.Stock;
|
|
|
|
using WMS.IData;using Oracle.ManagedDataAccess.Client;
|
|
using WMS.IData.IStock;
|
|
using System.Data;
|
|
|
|
namespace WMS.SqlServerData.StockData
|
|
{
|
|
public class ProvideRepData : IProvideRep
|
|
{
|
|
#region 获得流水号
|
|
/// <summary>
|
|
/// 获取验收流水号
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public string GetNextValNum()
|
|
{
|
|
string strSqlSeq = "";
|
|
strSqlSeq = "select NEXT VALUE FOR SEQ_STOCK_PROVIDEREP_ID";
|
|
|
|
DataTable dt = SystemDataObject.Instance.GetDataTable(strSqlSeq);
|
|
string strSEQ = "GB" + DateTime.Now.ToString("yyyyMMdd") + dt.Rows[0][0].ToString();
|
|
|
|
return strSEQ;
|
|
}
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
#region 查询主表信息
|
|
/// <summary>
|
|
/// 查询供应商补货数据信息
|
|
/// </summary>
|
|
/// <param name="proModel">供应商补货Model</param>
|
|
/// <returns></returns>
|
|
public DataTable GetProvideRepData(ProvideRepModel proModel)
|
|
{
|
|
StringBuilder strSql = new StringBuilder();
|
|
strSql.Append(@" select prorep_id, --供应商补货单据编号
|
|
t.pro_id, --供应商编号
|
|
p.provider_name pro_name, --供应商名称
|
|
t.total_num, --补货总量
|
|
t.create_man, --创建人
|
|
a.Name create_man_name, --创建人名称
|
|
t.confirm_man, --审核人
|
|
b.Name confirm_man_name, --审核人名称
|
|
t.OPERATORID,--录入人
|
|
c.Name OPERATOR_NAME, --录入人名称
|
|
t.OPERATEDATE, --录入时间
|
|
t.Create_date, --创建时间
|
|
t.Confirm_date, --审核时间
|
|
t.Expect_date, --预计到货时间
|
|
t.prorep_status, --单据Status
|
|
s.vc_dictionary_name RESION_NAME, --补货原因
|
|
t.Storage_Id, --所属仓库编号
|
|
st.storage_name STORAGE_NAME, --所属仓库名称
|
|
t.Storage_Area_Id, --所属仓库库区
|
|
sa.storage_area_name STORAGE_AREA_NAME, --所属仓库库区名称
|
|
t.shippers, --承运商
|
|
t.ORI_BILL, --来源单号
|
|
t.resion, --补货原因
|
|
t.print_count, --打印次数
|
|
t.remark --备注
|
|
from T_STOCK_PROREP t --供应商补货表
|
|
left join T_BASE_USERINFO a --用户表
|
|
on t.create_man = a.user_id
|
|
left join T_BASE_USERINFO b --用户表
|
|
on t.Confirm_man = b.user_id
|
|
left join T_BASE_USERINFO c --用户表
|
|
on t.OPERATORID = c.user_id
|
|
left outer join t_Base_Provider_Dictionary p --供应商明细表
|
|
on t.pro_id = p.provider_id
|
|
left join T_SYS_DICTIONARY_TAB s --字典表
|
|
on s.vc_dictionary_id = t.resion
|
|
left join t_Base_Storageinfo st --仓库表
|
|
on t.storage_id = st.storage_id
|
|
left join t_Base_Storage_Area sa --仓库库区表
|
|
on t.storage_area_id = sa.storage_area_id
|
|
where 1 = 1
|
|
");
|
|
#region 查询条件
|
|
if (!string.IsNullOrEmpty(proModel.PROREP_ID))
|
|
{
|
|
strSql.Append(" and t.prorep_id like '%" + proModel.PROREP_ID + "%'");
|
|
}
|
|
if (!string.IsNullOrEmpty(proModel.RESION))
|
|
{
|
|
strSql.Append(" and t.resion like '%" + proModel.RESION + "%'");
|
|
}
|
|
if (!string.IsNullOrEmpty(proModel.CREATE_MAN))
|
|
{
|
|
strSql.Append(" and t.CREATE_MAN like '%" + proModel.CREATE_MAN + "%'");
|
|
}
|
|
if (!string.IsNullOrEmpty(proModel.CONFIRM_MAN))
|
|
{
|
|
strSql.Append(" and t.CONFIRM_MAN like '%" + proModel.CONFIRM_MAN + "%'");
|
|
}
|
|
//if (!string.IsNullOrEmpty(proModel.REVIEW_MAN))
|
|
//{
|
|
// strSql.Append(" and t.REVIEW_MAN like '%" + proModel.REVIEW_MAN + "%'");
|
|
//}
|
|
if (proModel.TIMESTART != DateTime.MinValue && proModel.TIMEEND != DateTime.MinValue)
|
|
{
|
|
strSql.Append(" and t.create_date between convert(varchar(100),'" + proModel.TIMESTART.ToString("yyyy-MM-dd") + "',20) and convert(varchar(100),'" + proModel.TIMEEND.ToString("yyyy-MM-dd") + "',20)");
|
|
}
|
|
strSql.Append(" order by t.create_date desc");
|
|
#endregion
|
|
return SystemDataObject.Instance.GetDataTable(strSql.ToString());
|
|
}
|
|
#endregion
|
|
#region 查询明细表信息
|
|
/// <summary>
|
|
/// 查询供应商明细补货信息
|
|
/// </summary>
|
|
/// <param name="proID">供应商补货ID</param>
|
|
/// <returns></returns>
|
|
public DataTable GetProvideRepInfoData(string proID)
|
|
{
|
|
StringBuilder strSql = new StringBuilder();
|
|
strSql.Append(@"select s.prorep_id,
|
|
s.goods_id,
|
|
g.goods_name GOODS_NAME,
|
|
s.pro_id,
|
|
s.goods_count,
|
|
s.shevl_num,
|
|
s.price,
|
|
s.unit,
|
|
s.sumprice,
|
|
s.remark
|
|
from T_STOCK_PROREP_INFO s
|
|
left join T_BASE_GOODS g
|
|
on s.goods_id = g.goods_id
|
|
where 1 = 1
|
|
");
|
|
|
|
if (!string.IsNullOrEmpty(proID))
|
|
{
|
|
strSql.Append(" and s.prorep_id like '%" + proID + "%'");
|
|
}
|
|
strSql.Append(" order by s.prorep_id desc");
|
|
return SystemDataObject.Instance.GetDataTable(strSql.ToString());
|
|
}
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
#region 同时新增主表明细表数据
|
|
/// <summary>
|
|
/// 新增供应商补货主表明细表数据
|
|
/// </summary>
|
|
/// <param name="model">主表Model</param>
|
|
/// <param name="listmodel">明细表Model</param>
|
|
public void InsertProvideRepData(ProvideRepModel model, List<ProvideRepInfoModel> listmodel)
|
|
{
|
|
List<string> addsqlstrlist = new List<string>();
|
|
List<OracleParameter[]> addsqlpara = new List<OracleParameter[]>();
|
|
StringBuilder strSql = new StringBuilder();
|
|
|
|
strSql.Append("insert into T_STOCK_PROREP(");
|
|
strSql.Append("PROREP_ID,PRO_ID,TOTAL_NUM,CREATE_MAN,CONFIRM_MAN,CREATE_DATE,CONFIRM_DATE,EXPECT_DATE,PROREP_STATUS,REMARK,VERSION,RESION,STORAGE_ID,STORAGE_AREA_ID,PRINT_COUNT,SHIPPERS,ORI_BILL,OPERATORID,OPERATEDATE)");
|
|
strSql.Append(" values (");
|
|
strSql.Append(":PROREP_ID,:PRO_ID,:TOTAL_NUM,:CREATE_MAN,:CONFIRM_MAN,:CREATE_DATE,:CONFIRM_DATE,:EXPECT_DATE,:PROREP_STATUS,:REMARK,:VERSION,:RESION,:STORAGE_ID,:STORAGE_AREA_ID,:PRINT_COUNT,:SHIPPERS,:ORI_BILL,:OPERATORID,:OPERATEDATE)");
|
|
OracleParameter[] parameters = {
|
|
new OracleParameter(":PROREP_ID",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":PRO_ID",OracleDbType.Varchar2,20),
|
|
new OracleParameter(":TOTAL_NUM", OracleDbType.Decimal,4),
|
|
new OracleParameter(":CREATE_MAN",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":CONFIRM_MAN",OracleDbType.Varchar2,30),
|
|
//new OracleParameter(":REVIEW_MAN",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":CREATE_DATE", OracleDbType.Date),
|
|
new OracleParameter(":CONFIRM_DATE", OracleDbType.Date),
|
|
//new OracleParameter(":REVIEW_DATE", OracleDbType.Date),
|
|
new OracleParameter(":EXPECT_DATE", OracleDbType.Date),
|
|
new OracleParameter(":PROREP_STATUS",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":REMARK",OracleDbType.Varchar2,200),
|
|
new OracleParameter(":VERSION",OracleDbType.Varchar2,10),
|
|
new OracleParameter(":RESION",OracleDbType.Varchar2,200),
|
|
new OracleParameter(":STORAGE_ID",OracleDbType.Varchar2,50),
|
|
new OracleParameter(":STORAGE_AREA_ID",OracleDbType.Varchar2,50),
|
|
new OracleParameter(":PRINT_COUNT",OracleDbType.Decimal),
|
|
new OracleParameter(":SHIPPERS",OracleDbType.Varchar2,50),
|
|
new OracleParameter(":ORI_BILL",OracleDbType.Varchar2,50),
|
|
new OracleParameter(":OPERATORID",OracleDbType.Varchar2,50),
|
|
new OracleParameter(":OPERATEDATE", OracleDbType.Date) };
|
|
parameters[0].Value = model.PROREP_ID;
|
|
parameters[1].Value = model.PRO_ID;
|
|
parameters[2].Value = model.TOTAL_NUM;
|
|
parameters[3].Value = model.CREATE_MAN;
|
|
parameters[4].Value = model.CONFIRM_MAN;
|
|
//parameters[5].Value = model.REVIEW_MAN;
|
|
parameters[5].Value = model.CREATE_DATE;
|
|
parameters[6].Value = model.CONFIRM_DATE;
|
|
// parameters[8].Value = model.REVIEW_DATE;
|
|
parameters[7].Value = model.EXPECT_DATE;
|
|
parameters[8].Value = model.PROREP_STATUS;
|
|
parameters[9].Value = model.REMARK;
|
|
parameters[10].Value = model.VERSION;
|
|
parameters[11].Value = model.RESION;
|
|
parameters[12].Value = model.STORAGE_ID;
|
|
parameters[13].Value = model.STORAGE_AREA_ID;
|
|
parameters[14].Value = model.PRINT_COUNT;
|
|
parameters[15].Value = model.SHIPPERS;
|
|
parameters[16].Value = model.ORI_BILL;
|
|
parameters[17].Value = model.OPERATORID;
|
|
parameters[18].Value = model.OPERATEDATE;
|
|
addsqlstrlist.Add(strSql.ToString());
|
|
addsqlpara.Add(parameters);
|
|
|
|
|
|
foreach (ProvideRepInfoModel modelinfo in listmodel)
|
|
{
|
|
strSql = new StringBuilder();
|
|
strSql.Append("insert into T_STOCK_PROREP_INFO(");
|
|
strSql.Append("PROREP_ID,GOODS_ID,SHEVL_NUM,GOODS_COUNT,REMARK,VERSION,PRICE,UNIT,SUMPRICE)");
|
|
strSql.Append(" values (");
|
|
strSql.Append(":PROREP_ID,:GOODS_ID,:SHEVL_NUM,:GOODS_COUNT,:REMARK,:VERSION,:PRICE,:UNIT,:SUMPRICE)");
|
|
OracleParameter[] parametersinfo = {
|
|
new OracleParameter(":PROREP_ID",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":GOODS_ID",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":SHEVL_NUM",OracleDbType.Decimal,4),
|
|
new OracleParameter(":GOODS_COUNT", OracleDbType.Decimal,4),
|
|
new OracleParameter(":REMARK",OracleDbType.Varchar2,200),
|
|
new OracleParameter(":VERSION",OracleDbType.Varchar2,10),
|
|
new OracleParameter(":PRICE",OracleDbType.Decimal,4),
|
|
new OracleParameter(":UNIT",OracleDbType.Varchar2,10),
|
|
new OracleParameter(":SUMPRICE",OracleDbType.Decimal,4)};
|
|
parametersinfo[0].Value = modelinfo.PROREP_ID;
|
|
parametersinfo[1].Value = modelinfo.GOODS_ID;
|
|
parametersinfo[2].Value = modelinfo.SHEVL_NUM;
|
|
parametersinfo[3].Value = modelinfo.GOODS_COUNT;
|
|
parametersinfo[4].Value = modelinfo.REMARK;
|
|
parametersinfo[5].Value = modelinfo.VERSION;
|
|
parametersinfo[6].Value = modelinfo.PRICE;
|
|
parametersinfo[7].Value = modelinfo.UNIT;
|
|
parametersinfo[8].Value = modelinfo.SUMPRICE;
|
|
addsqlstrlist.Add(strSql.ToString());
|
|
addsqlpara.Add(parametersinfo);
|
|
strSql.Clear();
|
|
}
|
|
SystemDataObject.Instance.ExecuteList(addsqlstrlist, addsqlpara);
|
|
}
|
|
#endregion
|
|
|
|
#region 同时更新主表和明细表数据
|
|
/// <summary>
|
|
/// 更新供应商补货数据(明细只有更改时 调用此方法)
|
|
/// </summary>
|
|
/// <param name="model">主表model</param>
|
|
/// <param name="listmodel">明细表Model</param>
|
|
public void UpdateProvideRepData(ProvideRepModel model, List<ProvideRepInfoModel> listmodel)
|
|
{
|
|
List<string> updatesqlstrlist = new List<string>();
|
|
List<OracleParameter[]> updatesqlpara = new List<OracleParameter[]>();
|
|
StringBuilder strSql = new StringBuilder();
|
|
|
|
strSql.Append("update T_STOCK_PROREP set ");
|
|
strSql.Append("PRO_ID=:PRO_ID,");
|
|
strSql.Append("PRO_TYPE=:PRO_TYPE,");
|
|
strSql.Append("TOTAL_NUM=:TOTAL_NUM,");
|
|
strSql.Append("CREATE_MAN=:CREATE_MAN,");
|
|
strSql.Append("CONFIRM_MAN=:CONFIRM_MAN,");
|
|
//strSql.Append("REVIEW_MAN=:REVIEW_MAN,");
|
|
strSql.Append("CREATE_DATE=:CREATE_DATE,");
|
|
strSql.Append("CONFIRM_DATE=:CONFIRM_DATE,");
|
|
//strSql.Append("REVIEW_DATE=:REVIEW_DATE,");
|
|
strSql.Append("EXPECT_DATE=:EXPECT_DATE,");
|
|
strSql.Append("PROREP_STATUS=:PROREP_STATUS,");
|
|
strSql.Append("REMARK=:REMARK,");
|
|
strSql.Append("VERSION=:VERSION,");
|
|
strSql.Append("RESION=:RESION,");
|
|
strSql.Append("STORAGE_ID=:STORAGE_ID,");
|
|
strSql.Append("STORAGE_AREA_ID=:STORAGE_AREA_ID,");
|
|
strSql.Append("PRINT_COUNT=:PRINT_COUNT,");
|
|
strSql.Append("SHIPPERS=:SHIPPERS,");
|
|
strSql.Append("OPERATORID=:OPERATORID,");
|
|
strSql.Append("OPERATEDATE=:OPERATEDATE,");
|
|
strSql.Append("ORI_BILL=:ORI_BILL");
|
|
strSql.Append(" where PROREP_ID=:PROREP_ID ");
|
|
OracleParameter[] parameters = {
|
|
new OracleParameter(":PRO_ID",OracleDbType.Varchar2,20),
|
|
new OracleParameter(":PRO_TYPE",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":TOTAL_NUM", OracleDbType.Decimal,4),
|
|
new OracleParameter(":CREATE_MAN",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":CONFIRM_MAN",OracleDbType.Varchar2,30),
|
|
//new OracleParameter(":REVIEW_MAN",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":CREATE_DATE", OracleDbType.Date),
|
|
new OracleParameter(":CONFIRM_DATE", OracleDbType.Date),
|
|
//new OracleParameter(":REVIEW_DATE", OracleDbType.Date),
|
|
new OracleParameter(":EXPECT_DATE", OracleDbType.Date),
|
|
new OracleParameter(":PROREP_STATUS",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":REMARK",OracleDbType.Varchar2,200),
|
|
new OracleParameter(":VERSION",OracleDbType.Varchar2,10),
|
|
new OracleParameter(":RESION",OracleDbType.Varchar2,200),
|
|
new OracleParameter(":STORAGE_ID",OracleDbType.Varchar2,50),
|
|
new OracleParameter(":STORAGE_AREA_ID",OracleDbType.Varchar2,50),
|
|
new OracleParameter(":PRINT_COUNT",OracleDbType.Decimal),
|
|
new OracleParameter(":SHIPPERS",OracleDbType.Varchar2,50),
|
|
new OracleParameter(":OPERATORID",OracleDbType.Varchar2,50),
|
|
new OracleParameter(":OPERATEDATE", OracleDbType.Date),
|
|
new OracleParameter(":ORI_BILL",OracleDbType.Varchar2,50),
|
|
new OracleParameter(":PROREP_ID",OracleDbType.Varchar2,30)
|
|
};
|
|
|
|
parameters[0].Value = model.PRO_ID;
|
|
parameters[1].Value = model.PRO_TYPE;
|
|
parameters[2].Value = model.TOTAL_NUM;
|
|
parameters[3].Value = model.CREATE_MAN;
|
|
parameters[4].Value = model.CONFIRM_MAN;
|
|
//parameters[5].Value = model.REVIEW_MAN;
|
|
parameters[5].Value = model.CREATE_DATE;
|
|
parameters[6].Value = model.CONFIRM_DATE;
|
|
// parameters[8].Value = model.REVIEW_DATE;
|
|
parameters[7].Value = model.EXPECT_DATE;
|
|
parameters[8].Value = model.PROREP_STATUS;
|
|
parameters[9].Value = model.REMARK;
|
|
parameters[10].Value = model.VERSION;
|
|
parameters[11].Value = model.RESION;
|
|
parameters[12].Value = model.STORAGE_ID;
|
|
parameters[13].Value = model.STORAGE_AREA_ID;
|
|
parameters[14].Value = model.PRINT_COUNT;
|
|
parameters[15].Value = model.SHIPPERS;
|
|
parameters[16].Value = model.OPERATORID;
|
|
parameters[17].Value = model.OPERATEDATE;
|
|
parameters[18].Value = model.ORI_BILL;
|
|
parameters[19].Value = model.PROREP_ID;
|
|
updatesqlpara.Add(parameters);
|
|
updatesqlstrlist.Add(strSql.ToString());
|
|
|
|
|
|
foreach (ProvideRepInfoModel modelinfo in listmodel)
|
|
{
|
|
strSql = new StringBuilder();
|
|
strSql.Append("update T_STOCK_PROREP_INFO set ");
|
|
strSql.Append("PRO_ID=:PRO_ID,");
|
|
strSql.Append("GOODS_COUNT=:GOODS_COUNT,");
|
|
strSql.Append("REMARK=:REMARK,");
|
|
strSql.Append("PRICE=:PRICE,");
|
|
strSql.Append("UNIT=:UNIT,");
|
|
strSql.Append("SUMPRICE=:SUMPRICE,");
|
|
strSql.Append("VERSION=:VERSION");
|
|
strSql.Append(" where PROREP_ID=:PROREP_ID and GOODS_ID=:GOODS_ID ");
|
|
OracleParameter[] parameter = {
|
|
new OracleParameter(":PRO_ID",OracleDbType.Varchar2,20),
|
|
new OracleParameter(":GOODS_COUNT", OracleDbType.Decimal,4),
|
|
new OracleParameter(":REMARK",OracleDbType.Varchar2,200),
|
|
new OracleParameter(":PRICE", OracleDbType.Decimal,4),
|
|
new OracleParameter(":UNIT",OracleDbType.Varchar2,10),
|
|
new OracleParameter(":SUMPRICE",OracleDbType.Varchar2,10),
|
|
new OracleParameter(":VERSION",OracleDbType.Varchar2,10),
|
|
new OracleParameter(":PROREP_ID",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":GOODS_ID",OracleDbType.Varchar2,30)};
|
|
parameter[0].Value = modelinfo.PRO_ID;
|
|
parameter[1].Value = modelinfo.GOODS_COUNT;
|
|
parameter[2].Value = modelinfo.REMARK;
|
|
parameter[3].Value = modelinfo.PRICE;
|
|
parameter[4].Value = modelinfo.UNIT;
|
|
parameter[5].Value = modelinfo.SUMPRICE;
|
|
parameter[6].Value = modelinfo.VERSION;
|
|
parameter[7].Value = modelinfo.PROREP_ID;
|
|
parameter[8].Value = modelinfo.GOODS_ID;
|
|
updatesqlstrlist.Add(strSql.ToString());
|
|
updatesqlpara.Add(parameter);
|
|
strSql.Clear();
|
|
}
|
|
SystemDataObject.Instance.ExecuteList(updatesqlstrlist, updatesqlpara);
|
|
}
|
|
#endregion
|
|
|
|
#region 同时删除主表和明细表数据
|
|
/// <summary>
|
|
/// 同时删除主表和明细表数据
|
|
/// </summary>
|
|
/// <param name="listmodel">供应商补货编号List集合</param>
|
|
public void DeleteProvideRepData(List<string> listmodel)
|
|
{
|
|
StringBuilder strSql = new StringBuilder();
|
|
List<string> delsqlstrlist = new List<string>();
|
|
List<OracleParameter[]> delsqlpara = new List<OracleParameter[]>();
|
|
|
|
foreach (string stDel in listmodel)
|
|
{
|
|
strSql.Append("delete from T_STOCK_PROREP ");
|
|
strSql.Append(" where PROREP_ID =:PROREP_ID");
|
|
OracleParameter[] parameters = {
|
|
new OracleParameter("PROREP_ID",OracleDbType.Varchar2,30) };
|
|
parameters[0].Value = stDel;
|
|
delsqlstrlist.Add(strSql.ToString());
|
|
delsqlpara.Add(parameters);
|
|
strSql.Clear();
|
|
}
|
|
|
|
foreach (string str in listmodel)
|
|
{
|
|
strSql.Append("delete from T_STOCK_PROREP_INFO ");
|
|
strSql.Append(" where PROREP_ID=:PROREP_ID ");
|
|
OracleParameter[] parameters = {
|
|
new OracleParameter(":PROREP_ID",OracleDbType.Varchar2,30),
|
|
};
|
|
parameters[0].Value = str;
|
|
delsqlstrlist.Add(strSql.ToString());
|
|
delsqlpara.Add(parameters);
|
|
strSql.Clear();
|
|
}
|
|
SystemDataObject.Instance.ExecuteList(delsqlstrlist, delsqlpara);
|
|
}
|
|
#endregion
|
|
|
|
|
|
#region 根据主键 单独增明细
|
|
/// <summary>
|
|
/// 增明细
|
|
/// </summary>
|
|
/// <param name="list">明细List</param>
|
|
public void Add(List<ProvideRepInfoModel> list)
|
|
{
|
|
List<string> addsqlstrlist = new List<string>();
|
|
List<OracleParameter[]> addsqlpara = new List<OracleParameter[]>();
|
|
StringBuilder strSql = new StringBuilder();
|
|
foreach (ProvideRepInfoModel model in list)
|
|
{
|
|
strSql = new StringBuilder();
|
|
strSql.Append("insert into T_STOCK_PROREP_INFO(");
|
|
strSql.Append("PROREP_ID,GOODS_ID,PRO_ID,GOODS_COUNT,REMARK,VERSION,SHEVL_NUM,PRICE,UNIT,SUMPRICE)");
|
|
strSql.Append(" values (");
|
|
strSql.Append(":PROREP_ID,:GOODS_ID,:PRO_ID,:GOODS_COUNT,:REMARK,:VERSION,:SHEVL_NUM,:PRICE,:UNIT,:SUMPRICE)");
|
|
OracleParameter[] parameters = {
|
|
new OracleParameter(":PROREP_ID",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":GOODS_ID",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":PRO_ID",OracleDbType.Varchar2,20),
|
|
new OracleParameter(":GOODS_COUNT", OracleDbType.Decimal,4),
|
|
new OracleParameter(":REMARK",OracleDbType.Varchar2,200),
|
|
new OracleParameter(":VERSION",OracleDbType.Varchar2,10),
|
|
new OracleParameter(":SHEVL_NUM", OracleDbType.Decimal,4),
|
|
new OracleParameter(":PRICE", OracleDbType.Decimal,4),
|
|
new OracleParameter(":UNIT",OracleDbType.Varchar2,10),
|
|
new OracleParameter(":SUMPRICE", OracleDbType.Decimal,4)};
|
|
parameters[0].Value = model.PROREP_ID;
|
|
parameters[1].Value = model.GOODS_ID;
|
|
parameters[2].Value = model.PRO_ID;
|
|
parameters[3].Value = model.GOODS_COUNT;
|
|
parameters[4].Value = model.REMARK;
|
|
parameters[5].Value = model.VERSION;
|
|
parameters[6].Value = model.SHEVL_NUM;
|
|
parameters[7].Value = model.PRICE;
|
|
parameters[8].Value = model.UNIT;
|
|
parameters[9].Value = model.SUMPRICE;
|
|
addsqlstrlist.Add(strSql.ToString());
|
|
addsqlpara.Add(parameters);
|
|
strSql.Clear();
|
|
}
|
|
SystemDataObject.Instance.ExecuteList(addsqlstrlist, addsqlpara);
|
|
}
|
|
#endregion
|
|
|
|
#region 单独删除明细
|
|
/// <summary>
|
|
/// 删明细
|
|
/// </summary>
|
|
/// <param name="lsit">明细List</param>
|
|
public void Delete(List<ProvideRepInfoModel> lsit)
|
|
{
|
|
List<string> delsqlstrlist = new List<string>();
|
|
List<OracleParameter[]> delsqlpara = new List<OracleParameter[]>();
|
|
StringBuilder strSql = new StringBuilder();
|
|
|
|
foreach (ProvideRepInfoModel model in lsit)
|
|
{
|
|
strSql = new StringBuilder();
|
|
strSql.Append("delete from T_STOCK_PROREP_INFO ");
|
|
strSql.Append(" where PROREP_ID=:PROREP_ID and GOODS_ID=:GOODS_ID ");
|
|
OracleParameter[] parameters = {
|
|
new OracleParameter(":PROREP_ID",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":GOODS_ID",OracleDbType.Varchar2,30) };
|
|
parameters[0].Value = model.PROREP_ID;
|
|
parameters[1].Value = model.GOODS_ID;
|
|
delsqlstrlist.Add(strSql.ToString());
|
|
delsqlpara.Add(parameters);
|
|
strSql.Clear();
|
|
}
|
|
SystemDataObject.Instance.ExecuteList(delsqlstrlist, delsqlpara);
|
|
}
|
|
#endregion
|
|
|
|
|
|
#region 更新供应商补货数据
|
|
/// <summary>
|
|
/// 更新供应商补货数据(明细有新增 或 删除 时 调用此方法)
|
|
/// </summary>
|
|
/// <param name="upFuc">更新</param>
|
|
/// <param name="insertFuc">新增</param>
|
|
/// <param name="delFuc">删除</param>
|
|
public void NewProvideRepInfoFuc(ProvideRepModel model, List<ProvideRepInfoModel> upFuc, List<ProvideRepInfoModel> insertFuc, List<ProvideRepInfoModel> delFuc)
|
|
{
|
|
|
|
List<string> sqlList = new List<string>();
|
|
List<OracleParameter[]> paraList = new List<OracleParameter[]>();
|
|
StringBuilder strSql = new StringBuilder();
|
|
#region 主表
|
|
strSql.Append("update T_STOCK_PROREP set ");
|
|
strSql.Append("PRO_ID=:PRO_ID,");
|
|
strSql.Append("PRO_TYPE=:PRO_TYPE,");
|
|
strSql.Append("TOTAL_NUM=:TOTAL_NUM,");
|
|
strSql.Append("CREATE_MAN=:CREATE_MAN,");
|
|
strSql.Append("CONFIRM_MAN=:CONFIRM_MAN,");
|
|
// strSql.Append("REVIEW_MAN=:REVIEW_MAN,");
|
|
strSql.Append("CREATE_DATE=:CREATE_DATE,");
|
|
strSql.Append("CONFIRM_DATE=:CONFIRM_DATE,");
|
|
//strSql.Append("REVIEW_DATE=:REVIEW_DATE,");
|
|
strSql.Append("EXPECT_DATE=:EXPECT_DATE,");
|
|
strSql.Append("PROREP_STATUS=:PROREP_STATUS,");
|
|
strSql.Append("REMARK=:REMARK,");
|
|
strSql.Append("VERSION=:VERSION,");
|
|
strSql.Append("RESION=:RESION,");
|
|
strSql.Append("STORAGE_ID=:STORAGE_ID,");
|
|
strSql.Append("STORAGE_AREA_ID=:STORAGE_AREA_ID,");
|
|
strSql.Append("PRINT_COUNT=:PRINT_COUNT,");
|
|
strSql.Append("SHIPPERS=:SHIPPERS,");
|
|
strSql.Append("OPERATORID=:OPERATORID,");
|
|
strSql.Append("OPERATEDATE=:OPERATEDATE,");
|
|
strSql.Append("ORI_BILL=:ORI_BILL");
|
|
strSql.Append(" where PROREP_ID=:PROREP_ID ");
|
|
OracleParameter[] param = new OracleParameter[]{
|
|
new OracleParameter(":PRO_ID",OracleDbType.Varchar2,20),
|
|
new OracleParameter(":PRO_TYPE",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":TOTAL_NUM", OracleDbType.Decimal,4),
|
|
new OracleParameter(":CREATE_MAN",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":CONFIRM_MAN",OracleDbType.Varchar2,30),
|
|
//new OracleParameter(":REVIEW_MAN",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":CREATE_DATE", OracleDbType.Date),
|
|
new OracleParameter(":CONFIRM_DATE", OracleDbType.Date),
|
|
//new OracleParameter(":REVIEW_DATE", OracleDbType.Date),
|
|
new OracleParameter(":EXPECT_DATE", OracleDbType.Date),
|
|
new OracleParameter(":PROREP_STATUS",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":REMARK",OracleDbType.Varchar2,200),
|
|
new OracleParameter(":VERSION",OracleDbType.Varchar2,10),
|
|
new OracleParameter(":RESION",OracleDbType.Varchar2,200),
|
|
new OracleParameter(":STORAGE_ID",OracleDbType.Varchar2,50),
|
|
new OracleParameter(":STORAGE_AREA_ID",OracleDbType.Varchar2,50),
|
|
new OracleParameter(":PRINT_COUNT",OracleDbType.Decimal),
|
|
new OracleParameter(":SHIPPERS",OracleDbType.Varchar2,50),
|
|
new OracleParameter(":OPERATORID",OracleDbType.Varchar2,50),
|
|
new OracleParameter(":OPERATEDATE", OracleDbType.Date),
|
|
new OracleParameter(":ORI_BILL",OracleDbType.Varchar2,50),
|
|
new OracleParameter(":PROREP_ID",OracleDbType.Varchar2,30)
|
|
};
|
|
|
|
param[0].Value = model.PRO_ID;
|
|
param[1].Value = model.PRO_TYPE;
|
|
param[2].Value = model.TOTAL_NUM;
|
|
param[3].Value = model.CREATE_MAN;
|
|
param[4].Value = model.CONFIRM_MAN;
|
|
//param[5].Value = model.REVIEW_MAN;
|
|
param[5].Value = model.CREATE_DATE;
|
|
param[6].Value = model.CONFIRM_DATE;
|
|
//param[8].Value = model.REVIEW_DATE;
|
|
param[7].Value = model.EXPECT_DATE;
|
|
param[8].Value = model.PROREP_STATUS;
|
|
param[9].Value = model.REMARK;
|
|
param[10].Value = model.VERSION;
|
|
param[11].Value = model.RESION;
|
|
param[12].Value = model.STORAGE_ID;
|
|
param[13].Value = model.STORAGE_AREA_ID;
|
|
param[14].Value = model.PRINT_COUNT;
|
|
param[15].Value = model.SHIPPERS;
|
|
param[16].Value = model.OPERATORID;
|
|
param[17].Value = model.OPERATEDATE;
|
|
param[18].Value = model.ORI_BILL;
|
|
param[19].Value = model.PROREP_ID;
|
|
sqlList.Add(strSql.ToString());
|
|
paraList.Add(param);
|
|
strSql.Clear();
|
|
#endregion
|
|
|
|
#region 明细表
|
|
|
|
#region 删
|
|
//明细删除
|
|
if (delFuc.Count > 0)
|
|
{
|
|
foreach (ProvideRepInfoModel infomodel in delFuc)
|
|
{
|
|
strSql.Append("delete from T_STOCK_PROREP_INFO ");
|
|
strSql.Append(" where PROREP_ID=:PROREP_ID and GOODS_ID=:GOODS_ID");
|
|
OracleParameter[] parameters = {
|
|
new OracleParameter(":PROREP_ID",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":GOODS_ID",OracleDbType.Varchar2,30)
|
|
};
|
|
parameters[0].Value = infomodel.PROREP_ID;
|
|
parameters[1].Value = infomodel.GOODS_ID;
|
|
sqlList.Add(strSql.ToString());
|
|
paraList.Add(parameters);
|
|
strSql.Clear();
|
|
}
|
|
}
|
|
#endregion
|
|
#region 更
|
|
//更新明细数据
|
|
if (upFuc.Count > 0)
|
|
{
|
|
foreach (ProvideRepInfoModel modelinfo in upFuc)
|
|
{
|
|
strSql = new StringBuilder();
|
|
strSql.Append("update T_STOCK_PROREP_INFO set ");
|
|
strSql.Append("PRO_ID=:PRO_ID,");
|
|
strSql.Append("GOODS_COUNT=:GOODS_COUNT,");
|
|
strSql.Append("REMARK=:REMARK,");
|
|
strSql.Append("PRICE=:PRICE,");
|
|
strSql.Append("UNIT=:UNIT,");
|
|
strSql.Append("SUMPRICE=:SUMPRICE,");
|
|
strSql.Append("VERSION=:VERSION");
|
|
strSql.Append(" where PROREP_ID=:PROREP_ID and GOODS_ID=:GOODS_ID ");
|
|
OracleParameter[] parameter = {
|
|
new OracleParameter(":PRO_ID",OracleDbType.Varchar2,20),
|
|
new OracleParameter(":GOODS_COUNT", OracleDbType.Decimal,4),
|
|
new OracleParameter(":REMARK",OracleDbType.Varchar2,200),
|
|
new OracleParameter(":PRICE", OracleDbType.Decimal,4),
|
|
new OracleParameter(":UNIT",OracleDbType.Varchar2,10),
|
|
new OracleParameter(":SUMPRICE", OracleDbType.Decimal,4),
|
|
new OracleParameter(":VERSION",OracleDbType.Varchar2,10),
|
|
new OracleParameter(":PROREP_ID",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":GOODS_ID",OracleDbType.Varchar2,30)};
|
|
parameter[0].Value = modelinfo.PRO_ID;
|
|
parameter[1].Value = modelinfo.GOODS_COUNT;
|
|
parameter[2].Value = modelinfo.REMARK;
|
|
parameter[3].Value = modelinfo.PRICE;
|
|
parameter[4].Value = modelinfo.UNIT;
|
|
parameter[5].Value = modelinfo.SUMPRICE;
|
|
parameter[6].Value = modelinfo.VERSION;
|
|
parameter[7].Value = modelinfo.PROREP_ID;
|
|
parameter[8].Value = modelinfo.GOODS_ID;
|
|
sqlList.Add(strSql.ToString());
|
|
paraList.Add(parameter);
|
|
strSql.Clear();
|
|
}
|
|
}
|
|
#endregion
|
|
#region 增
|
|
//菜单功能添加
|
|
if (insertFuc.Count > 0)
|
|
{
|
|
foreach (ProvideRepInfoModel modelinfo in insertFuc)
|
|
{
|
|
strSql = new StringBuilder();
|
|
strSql.Append("insert into T_STOCK_PROREP_INFO(");
|
|
strSql.Append("PROREP_ID,GOODS_ID,PRO_ID,SHEVL_NUM,GOODS_COUNT,REMARK,VERSION,PRICE,UNIT,SUMPRICE)");
|
|
strSql.Append(" values (");
|
|
strSql.Append(":PROREP_ID,:GOODS_ID,:PRO_ID,:SHEVL_NUM,:GOODS_COUNT,:REMARK,:VERSION,:PRICE,:UNIT,:SUMPRICE)");
|
|
OracleParameter[] parametersinfo = {
|
|
new OracleParameter(":PROREP_ID",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":GOODS_ID",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":PRO_ID",OracleDbType.Varchar2,20),
|
|
new OracleParameter(":SHEVL_NUM",OracleDbType.Decimal,4),
|
|
new OracleParameter(":GOODS_COUNT", OracleDbType.Decimal,4),
|
|
new OracleParameter(":REMARK",OracleDbType.Varchar2,200),
|
|
new OracleParameter(":VERSION",OracleDbType.Varchar2,10),
|
|
new OracleParameter(":PRICE", OracleDbType.Decimal,4),
|
|
new OracleParameter(":UNIT",OracleDbType.Varchar2,10),
|
|
new OracleParameter(":SUMPRICE", OracleDbType.Decimal,4) };
|
|
parametersinfo[0].Value = modelinfo.PROREP_ID;
|
|
parametersinfo[1].Value = modelinfo.GOODS_ID;
|
|
parametersinfo[2].Value = modelinfo.PRO_ID;
|
|
parametersinfo[3].Value = modelinfo.SHEVL_NUM;
|
|
parametersinfo[4].Value = modelinfo.GOODS_COUNT;
|
|
parametersinfo[5].Value = modelinfo.REMARK;
|
|
parametersinfo[6].Value = modelinfo.VERSION;
|
|
parametersinfo[7].Value = modelinfo.PRICE;
|
|
parametersinfo[8].Value = modelinfo.UNIT;
|
|
parametersinfo[9].Value = modelinfo.SUMPRICE;
|
|
sqlList.Add(strSql.ToString());
|
|
paraList.Add(parametersinfo);
|
|
strSql.Clear();
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#endregion
|
|
|
|
SystemDataObject.Instance.ExecuteList(sqlList, paraList);
|
|
}
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
#region 已废 删主表
|
|
/// <summary>
|
|
/// 删除主表多条数据
|
|
/// </summary>
|
|
public void DeleteProvideRep(List<ProvideRepModel> listmodel)
|
|
{
|
|
|
|
StringBuilder strSql = new StringBuilder();
|
|
List<string> delsqlstrlist = new List<string>();
|
|
List<OracleParameter[]> delsqlpara = new List<OracleParameter[]>();
|
|
|
|
foreach (ProvideRepModel model in listmodel)
|
|
{
|
|
strSql.Append("delete from T_STOCK_PROREP ");
|
|
strSql.Append(" where PROREP_ID =:PROREP_ID");
|
|
OracleParameter[] parameters = {
|
|
new OracleParameter("PROREP_ID",OracleDbType.Varchar2,30) };
|
|
parameters[0].Value = model.PROREP_ID;
|
|
delsqlstrlist.Add(strSql.ToString());
|
|
delsqlpara.Add(parameters);
|
|
strSql.Clear();
|
|
}
|
|
SystemDataObject.Instance.ExecuteList(delsqlstrlist, delsqlpara);
|
|
}
|
|
#endregion
|
|
#region 已废 删
|
|
/// <summary>
|
|
/// 删除一条数据
|
|
/// </summary>
|
|
public void DeleteProvideRepInfo(List<ProvideRepInfoModel> listmodel)
|
|
{
|
|
|
|
StringBuilder strSql = new StringBuilder();
|
|
List<string> delsqlstrlist = new List<string>();
|
|
List<OracleParameter[]> delsqlpara = new List<OracleParameter[]>();
|
|
|
|
foreach (ProvideRepInfoModel model in listmodel)
|
|
{
|
|
strSql.Append("delete from T_STOCK_PROREP_INFO ");
|
|
strSql.Append(" where PROREP_ID=:PROREP_ID ");
|
|
OracleParameter[] parameters = {
|
|
new OracleParameter(":PROREP_ID",OracleDbType.Varchar2,30),
|
|
//new OracleParameter(":GOODS_ID",OracleDbType.Varchar2,30)
|
|
};
|
|
parameters[0].Value = model.PROREP_ID;
|
|
// parameters[1].Value = model.GOODS_ID;
|
|
delsqlstrlist.Add(strSql.ToString());
|
|
delsqlpara.Add(parameters);
|
|
strSql.Clear();
|
|
|
|
}
|
|
SystemDataObject.Instance.ExecuteList(delsqlstrlist, delsqlpara);
|
|
}
|
|
#endregion
|
|
#region 已废 查询补货来源数据信息(查询条件未确定)
|
|
// public DataTable GetStockData()
|
|
// {
|
|
// StringBuilder strSql = new StringBuilder();
|
|
// strSql.Append(@"select
|
|
// t.stock_id,
|
|
// t.putin_id,
|
|
// t.out_id,
|
|
// t.storage_id,
|
|
// t.area_id,
|
|
// t.location_id,
|
|
// t.goods_typeid,
|
|
// t.goods_id,
|
|
// g.goods_name,
|
|
// t.goods_num,
|
|
// t.operator_man,
|
|
// t.operator_date,
|
|
// t.operator_type,
|
|
// t.remark,
|
|
// t.version
|
|
// from T_MI_STOCK_BACK t
|
|
// left outer join T_BASE_GOODS g
|
|
// on t.goods_id = g.goods_id
|
|
// where 1 = 1");
|
|
// #region 查询条件
|
|
// strSql.Append("");
|
|
// #endregion
|
|
// return SystemDataObject.Instance.GetDataTable(strSql.ToString());
|
|
// }
|
|
#endregion
|
|
|
|
|
|
|
|
#region 增加供应商补货主表数据
|
|
/// <summary>
|
|
/// 增加供应商补货一条数据
|
|
/// </summary>
|
|
/// <param name="model">供应商补货Model</param>
|
|
public void InsertProvideRep(ProvideRepModel model)
|
|
{
|
|
StringBuilder strSql = new StringBuilder();
|
|
|
|
strSql.Append("insert into T_STOCK_PROREP(");
|
|
strSql.Append("PROREP_ID,PRO_ID,PRO_TYPE,TOTAL_NUM,CREATE_MAN,CONFIRM_MAN,REVIEW_MAN,CREATE_DATE,CONFIRM_DATE,REVIEW_DATE,EXPECT_DATE,PROREP_STATUS,REMARK,VERSION,RESION,STORAGE_ID,STORAGE_AREA_ID,PRINT_COUNT,SHIPPERS,ORI_BILL,OPERATORID,OPERATEDATE)");
|
|
strSql.Append(" values (");
|
|
strSql.Append(":PROREP_ID,:PRO_ID,:PRO_TYPE,:TOTAL_NUM,:CREATE_MAN,:CONFIRM_MAN,:REVIEW_MAN,:CREATE_DATE,:CONFIRM_DATE,:REVIEW_DATE,:EXPECT_DATE,:PROREP_STATUS,:REMARK,:VERSION,:RESION,:STORAGE_ID,:STORAGE_AREA_ID,:PRINT_COUNT,:SHIPPERS,:ORI_BILL,:OPERATORID,:OPERATEDATE)");
|
|
OracleParameter[] parameters = {
|
|
new OracleParameter(":PROREP_ID",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":PRO_ID",OracleDbType.Varchar2,20),
|
|
new OracleParameter(":PRO_TYPE",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":TOTAL_NUM", OracleDbType.Decimal,4),
|
|
new OracleParameter(":CREATE_MAN",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":CONFIRM_MAN",OracleDbType.Varchar2,30),
|
|
//new OracleParameter(":REVIEW_MAN",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":CREATE_DATE", OracleDbType.Date),
|
|
new OracleParameter(":CONFIRM_DATE", OracleDbType.Date),
|
|
//new OracleParameter(":REVIEW_DATE", OracleDbType.Date),
|
|
new OracleParameter(":EXPECT_DATE", OracleDbType.Date),
|
|
new OracleParameter(":PROREP_STATUS",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":REMARK",OracleDbType.Varchar2,200),
|
|
new OracleParameter(":VERSION",OracleDbType.Varchar2,10),
|
|
new OracleParameter(":RESION",OracleDbType.Varchar2,200),
|
|
new OracleParameter(":STORAGE_ID",OracleDbType.Varchar2,50),
|
|
new OracleParameter(":STORAGE_AREA_ID",OracleDbType.Varchar2,50),
|
|
new OracleParameter(":PRINT_COUNT",OracleDbType.Decimal),
|
|
new OracleParameter(":SHIPPERS",OracleDbType.Varchar2,50),
|
|
new OracleParameter(":ORI_BILL",OracleDbType.Varchar2,50),
|
|
|
|
new OracleParameter(":OPERATORID",OracleDbType.Varchar2,50),
|
|
new OracleParameter(":OPERATEDATE",OracleDbType.Date) };
|
|
parameters[0].Value = model.PROREP_ID;
|
|
parameters[1].Value = model.PRO_ID;
|
|
parameters[2].Value = model.PRO_TYPE;
|
|
parameters[3].Value = model.TOTAL_NUM;
|
|
parameters[4].Value = model.CREATE_MAN;
|
|
parameters[5].Value = model.CONFIRM_MAN;
|
|
//parameters[6].Value = model.REVIEW_MAN;
|
|
parameters[6].Value = model.CREATE_DATE;
|
|
parameters[7].Value = model.CONFIRM_DATE;
|
|
// parameters[9].Value = model.REVIEW_DATE;
|
|
parameters[8].Value = model.EXPECT_DATE;
|
|
parameters[9].Value = model.PROREP_STATUS;
|
|
parameters[10].Value = model.REMARK;
|
|
parameters[11].Value = model.VERSION;
|
|
parameters[12].Value = model.RESION;
|
|
parameters[13].Value = model.STORAGE_ID;
|
|
parameters[14].Value = model.STORAGE_AREA_ID;
|
|
parameters[15].Value = model.PRINT_COUNT;
|
|
parameters[16].Value = model.SHIPPERS;
|
|
parameters[17].Value = model.ORI_BILL;
|
|
parameters[18].Value = model.OPERATORID;
|
|
parameters[19].Value = model.OPERATEDATE;
|
|
SystemDataObject.Instance.ExecuteSqlCommit(strSql.ToString(), parameters);
|
|
}
|
|
#endregion
|
|
#region 增加供应商补货明细表数据
|
|
/// <summary>
|
|
/// 增加供应商明细多条数据
|
|
/// </summary>
|
|
/// <param name="listmodel">供应商补货明细表Model集合</param>
|
|
public void InsertProvideRepInfo(List<ProvideRepInfoModel> listmodel)
|
|
{
|
|
StringBuilder strSql = new StringBuilder();
|
|
|
|
|
|
List<string> addsqlstrlist = new List<string>();
|
|
List<OracleParameter[]> addsqlpara = new List<OracleParameter[]>();
|
|
|
|
foreach (ProvideRepInfoModel modelinfo in listmodel)
|
|
{
|
|
strSql = new StringBuilder();
|
|
strSql.Append("insert into T_STOCK_PROREP_INFO(");
|
|
strSql.Append("PROREP_ID,GOODS_ID,PRO_ID,SHEVL_NUM,GOODS_COUNT,REMARK,VERSION,PRICE,UNIT,SUMPRICE)");
|
|
strSql.Append(" values (");
|
|
strSql.Append(":PROREP_ID,:GOODS_ID,:PRO_ID,:SHEVL_NUM,:GOODS_COUNT,:REMARK,:VERSION,:PRICE,:UNIT,:SUMPRICE)");
|
|
OracleParameter[] parametersinfo = {
|
|
new OracleParameter(":PROREP_ID",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":GOODS_ID",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":PRO_ID",OracleDbType.Varchar2,20),
|
|
new OracleParameter(":SHEVL_NUM",OracleDbType.Decimal,4),
|
|
new OracleParameter(":GOODS_COUNT", OracleDbType.Decimal,4),
|
|
new OracleParameter(":REMARK",OracleDbType.Varchar2,200),
|
|
new OracleParameter(":VERSION",OracleDbType.Varchar2,10),
|
|
new OracleParameter(":PRICE", OracleDbType.Decimal,4),
|
|
new OracleParameter(":UNIT",OracleDbType.Varchar2,10),
|
|
new OracleParameter(":SUMPRICE", OracleDbType.Decimal,4) };
|
|
parametersinfo[0].Value = modelinfo.PROREP_ID;
|
|
parametersinfo[1].Value = modelinfo.GOODS_ID;
|
|
parametersinfo[2].Value = modelinfo.PRO_ID;
|
|
parametersinfo[3].Value = modelinfo.SHEVL_NUM;
|
|
parametersinfo[4].Value = modelinfo.GOODS_COUNT;
|
|
parametersinfo[5].Value = modelinfo.REMARK;
|
|
parametersinfo[6].Value = modelinfo.VERSION;
|
|
parametersinfo[7].Value = modelinfo.PRICE;
|
|
parametersinfo[8].Value = modelinfo.UNIT;
|
|
parametersinfo[9].Value = modelinfo.SUMPRICE;
|
|
addsqlstrlist.Add(strSql.ToString());
|
|
addsqlpara.Add(parametersinfo);
|
|
strSql.Clear();
|
|
|
|
}
|
|
SystemDataObject.Instance.ExecuteList(addsqlstrlist, addsqlpara);
|
|
}
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
#region 更主表单据
|
|
/// <summary>
|
|
/// 更新供应商补货主表数据
|
|
/// </summary>
|
|
/// <param name="model">供应商补货Model</param>
|
|
public void UpdateProvideRep(ProvideRepModel model)
|
|
{
|
|
StringBuilder strSql = new StringBuilder();
|
|
|
|
strSql.Append("update T_STOCK_PROREP set ");
|
|
strSql.Append("PRO_ID=:PRO_ID,");
|
|
strSql.Append("PRO_TYPE=:PRO_TYPE,");
|
|
strSql.Append("TOTAL_NUM=:TOTAL_NUM,");
|
|
strSql.Append("CREATE_MAN=:CREATE_MAN,");
|
|
strSql.Append("CONFIRM_MAN=:CONFIRM_MAN,");
|
|
//strSql.Append("REVIEW_MAN=:REVIEW_MAN,");
|
|
strSql.Append("CREATE_DATE=:CREATE_DATE,");
|
|
strSql.Append("CONFIRM_DATE=:CONFIRM_DATE,");
|
|
//strSql.Append("REVIEW_DATE=:REVIEW_DATE,");
|
|
strSql.Append("EXPECT_DATE=:EXPECT_DATE,");
|
|
strSql.Append("PROREP_STATUS=:PROREP_STATUS,");
|
|
strSql.Append("REMARK=:REMARK,");
|
|
strSql.Append("VERSION=:VERSION,");
|
|
strSql.Append("RESION=:RESION,");
|
|
strSql.Append("STORAGE_ID=:STORAGE_ID,");
|
|
strSql.Append("STORAGE_AREA_ID=:STORAGE_AREA_ID,");
|
|
strSql.Append("PRINT_COUNT=:PRINT_COUNT,");
|
|
strSql.Append("SHIPPERS=:SHIPPERS,");
|
|
strSql.Append("OPERATORID=:OPERATORID,");
|
|
strSql.Append("OPERATEDATE=:OPERATEDATE,");
|
|
strSql.Append("ORI_BILL=:ORI_BILL ");
|
|
strSql.Append(" where PROREP_ID=:PROREP_ID ");
|
|
OracleParameter[] parameters = {
|
|
new OracleParameter(":PRO_ID",OracleDbType.Varchar2,20),
|
|
new OracleParameter(":PRO_TYPE",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":TOTAL_NUM", OracleDbType.Decimal,4),
|
|
new OracleParameter(":CREATE_MAN",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":CONFIRM_MAN",OracleDbType.Varchar2,30),
|
|
//new OracleParameter(":REVIEW_MAN",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":CREATE_DATE", OracleDbType.Date),
|
|
new OracleParameter(":CONFIRM_DATE", OracleDbType.Date),
|
|
//new OracleParameter(":REVIEW_DATE", OracleDbType.Date),
|
|
new OracleParameter(":EXPECT_DATE", OracleDbType.Date),
|
|
new OracleParameter(":PROREP_STATUS",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":REMARK",OracleDbType.Varchar2,200),
|
|
new OracleParameter(":VERSION",OracleDbType.Varchar2,10),
|
|
new OracleParameter(":RESION",OracleDbType.Varchar2,200),
|
|
new OracleParameter(":STORAGE_ID",OracleDbType.Varchar2,50),
|
|
new OracleParameter(":STORAGE_AREA_ID",OracleDbType.Varchar2,50),
|
|
new OracleParameter(":PRINT_COUNT",OracleDbType.Decimal),
|
|
new OracleParameter(":SHIPPERS",OracleDbType.Varchar2,50),
|
|
new OracleParameter(":OPERATORID",OracleDbType.Varchar2,50),
|
|
new OracleParameter(":OPERATEDATE",OracleDbType.Date),
|
|
new OracleParameter(":ORI_BILL",OracleDbType.Varchar2,50),
|
|
new OracleParameter(":PROREP_ID",OracleDbType.Varchar2,30)};
|
|
|
|
parameters[0].Value = model.PRO_ID;
|
|
parameters[1].Value = model.PRO_TYPE;
|
|
parameters[2].Value = model.TOTAL_NUM;
|
|
parameters[3].Value = model.CREATE_MAN;
|
|
parameters[4].Value = model.CONFIRM_MAN;
|
|
// parameters[5].Value = model.REVIEW_MAN;
|
|
parameters[5].Value = model.CREATE_DATE;
|
|
parameters[6].Value = model.CONFIRM_DATE;
|
|
//parameters[8].Value = model.REVIEW_DATE;
|
|
parameters[7].Value = model.EXPECT_DATE;
|
|
parameters[8].Value = model.PROREP_STATUS;
|
|
parameters[9].Value = model.REMARK;
|
|
parameters[10].Value = model.VERSION;
|
|
parameters[11].Value = model.RESION;
|
|
parameters[12].Value = model.STORAGE_ID;
|
|
parameters[13].Value = model.STORAGE_AREA_ID;
|
|
parameters[14].Value = model.PRINT_COUNT;
|
|
parameters[15].Value = model.SHIPPERS;
|
|
parameters[16].Value = model.OPERATORID;
|
|
parameters[17].Value = model.OPERATEDATE;
|
|
parameters[18].Value = model.ORI_BILL;
|
|
parameters[19].Value = model.PROREP_ID;
|
|
|
|
SystemDataObject.Instance.ExecuteSqlCommit(strSql.ToString(), parameters);
|
|
}
|
|
|
|
#endregion
|
|
#region 更明细单据
|
|
/// <summary>
|
|
/// 更新供应商补货明细表数据
|
|
/// </summary>
|
|
/// <param name="listmodel">供应商补货明细Model集合</param>
|
|
public void UpdateProvideRepInfo(List<ProvideRepInfoModel> listmodel)
|
|
{
|
|
StringBuilder strSql = new StringBuilder();
|
|
|
|
List<string> updatesqlstrlist = new List<string>();
|
|
List<OracleParameter[]> updatesqlpara = new List<OracleParameter[]>();
|
|
|
|
foreach (ProvideRepInfoModel modelinfo in listmodel)
|
|
{
|
|
strSql = new StringBuilder();
|
|
strSql.Append("update T_STOCK_PROREP_INFO set ");
|
|
strSql.Append("PRO_ID=:PRO_ID,");
|
|
strSql.Append("GOODS_COUNT=:GOODS_COUNT,");
|
|
strSql.Append("REMARK=:REMARK,");
|
|
strSql.Append("PRICE=:PRICE,");
|
|
strSql.Append("UNIT=:UNIT,");
|
|
strSql.Append("SUMPRICE=:SUMPRICE,");
|
|
strSql.Append("VERSION=:VERSION");
|
|
strSql.Append(" where PROREP_ID=:PROREP_ID and GOODS_ID=:GOODS_ID ");
|
|
OracleParameter[] parameter = {
|
|
new OracleParameter(":PRO_ID",OracleDbType.Varchar2,20),
|
|
new OracleParameter(":GOODS_COUNT", OracleDbType.Decimal,4),
|
|
new OracleParameter(":REMARK",OracleDbType.Varchar2,200),
|
|
new OracleParameter(":PRICE", OracleDbType.Decimal,4),
|
|
new OracleParameter(":UNIT",OracleDbType.Varchar2,10),
|
|
new OracleParameter(":SUMPRICE", OracleDbType.Decimal,4),
|
|
new OracleParameter(":VERSION",OracleDbType.Varchar2,10),
|
|
new OracleParameter(":PROREP_ID",OracleDbType.Varchar2,30),
|
|
new OracleParameter(":GOODS_ID",OracleDbType.Varchar2,30)};
|
|
parameter[0].Value = modelinfo.PRO_ID;
|
|
parameter[1].Value = modelinfo.GOODS_COUNT;
|
|
parameter[2].Value = modelinfo.REMARK;
|
|
parameter[3].Value = modelinfo.PRICE;
|
|
parameter[4].Value = modelinfo.UNIT;
|
|
parameter[5].Value = modelinfo.SUMPRICE;
|
|
parameter[6].Value = modelinfo.VERSION;
|
|
parameter[7].Value = modelinfo.PROREP_ID;
|
|
parameter[8].Value = modelinfo.GOODS_ID;
|
|
updatesqlstrlist.Add(strSql.ToString());
|
|
updatesqlpara.Add(parameter);
|
|
strSql.Clear();
|
|
}
|
|
SystemDataObject.Instance.ExecuteList(updatesqlstrlist, updatesqlpara);
|
|
}
|
|
#endregion
|
|
|
|
|
|
|
|
#region 删除主表数据
|
|
/// <summary>
|
|
/// 删除供应商补货主表数据
|
|
/// </summary>
|
|
/// <param name="listmodel">供应商补货ID集合</param>
|
|
public void DeleteProvideRep(List<string> listmodel)
|
|
{
|
|
|
|
StringBuilder strSql = new StringBuilder();
|
|
List<string> delsqlstrlist = new List<string>();
|
|
List<OracleParameter[]> delsqlpara = new List<OracleParameter[]>();
|
|
|
|
foreach (string stDel in listmodel)
|
|
{
|
|
strSql.Append("delete from T_STOCK_PROREP ");
|
|
strSql.Append(" where PROREP_ID =:PROREP_ID");
|
|
OracleParameter[] parameters = {
|
|
new OracleParameter("PROREP_ID",OracleDbType.Varchar2,30) };
|
|
parameters[0].Value = stDel;
|
|
delsqlstrlist.Add(strSql.ToString());
|
|
delsqlpara.Add(parameters);
|
|
strSql.Clear();
|
|
}
|
|
SystemDataObject.Instance.ExecuteList(delsqlstrlist, delsqlpara);
|
|
}
|
|
#endregion
|
|
#region 删除明细表数据
|
|
/// <summary>
|
|
/// 删除明细表数据
|
|
/// </summary>
|
|
/// <param name="listmodel">供应商补货ID集合</param>
|
|
public void DeleteProvideRepInfo(List<string> listmodel)
|
|
{
|
|
|
|
StringBuilder strSql = new StringBuilder();
|
|
List<string> delsqlstrlist = new List<string>();
|
|
List<OracleParameter[]> delsqlpara = new List<OracleParameter[]>();
|
|
|
|
foreach (string str in listmodel)
|
|
{
|
|
strSql.Append("delete from T_STOCK_PROREP_INFO ");
|
|
strSql.Append(" where PROREP_ID=:PROREP_ID ");
|
|
OracleParameter[] parameters = {
|
|
new OracleParameter(":PROREP_ID",OracleDbType.Varchar2,30),
|
|
};
|
|
parameters[0].Value = str;
|
|
delsqlstrlist.Add(strSql.ToString());
|
|
delsqlpara.Add(parameters);
|
|
strSql.Clear();
|
|
}
|
|
SystemDataObject.Instance.ExecuteList(delsqlstrlist, delsqlpara);
|
|
}
|
|
#endregion
|
|
|
|
}
|
|
}
|