BaoKai_202508-Wms-Jingwang..../WMS.SqlServerData/BaseData/StorageInfoData.cs
2025-08-24 09:35:55 +08:00

415 lines
25 KiB
C#
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WMS.IData;using Oracle.ManagedDataAccess.Client;
using System.Data;
using WMS.DBUtility;
using WMS.Model.Base;
using WMS.IData.IBase;
namespace WMS.SqlServerData.BaseData
{
public class StorageInfoData : IStorageInfo
{
public void UpCompanyStorageInfo(StorageInfoModel storageInfoModel)
{
string sqlstr =@"update T_BASE_STORAGEINFO set
STORAGE_NAME =:STORAGE_NAME,
STORAGE_SHORT_NAME =:STORAGE_SHORT_NAME,
PY_NAME=:PY_NAME,
STORAGE_TYPE_ID=:STORAGE_TYPE_ID,
LINKMAN=:LINKMAN,
PHONE=:PHONE,
FAX=:FAX,
ADDRESS=:ADDRESS,
POSTCODE=:POSTCODE,
RFMODEL=:RFMODEL,
GOODSFLAG=:GOODSFLAG,
BATCHFLAG=:BATCHFLAG,
STATUS=:STATUS,
REMARK=:REMARK,
VERSION=:VERSION,
SORT=:SORT,
PROVINCE_ID=:PROVINCE_ID,
CITY_ID=:CITY_ID,
TOWN_ID=:TOWN_ID,
operatorid=:operatorid,
operatedate=getdate(),
AUTOSTS =:AUTOSTS , STORAGE_ID=:STORAGE_ID
where ID=:ID";
OracleParameter[] parameter = new OracleParameter[]
{
new OracleParameter(":STORAGE_NAME",OracleDbType.Varchar2),
new OracleParameter(":STORAGE_SHORT_NAME",OracleDbType.Varchar2),
new OracleParameter(":PY_NAME",OracleDbType.Varchar2),
new OracleParameter(":STORAGE_TYPE_ID",OracleDbType.Varchar2),
new OracleParameter(":LINKMAN",OracleDbType.Varchar2),
new OracleParameter(":PHONE",OracleDbType.Varchar2),
new OracleParameter(":FAX",OracleDbType.Varchar2),
new OracleParameter(":ADDRESS",OracleDbType.Varchar2),
new OracleParameter(":POSTCODE",OracleDbType.Varchar2),
new OracleParameter(":RFMODEL",OracleDbType.Char),
new OracleParameter(":GOODSFLAG",OracleDbType.Char),
new OracleParameter(":BATCHFLAG",OracleDbType.Char),
new OracleParameter(":STATUS",OracleDbType.Char),
new OracleParameter(":REMARK",OracleDbType.Varchar2),
new OracleParameter(":VERSION",OracleDbType.Varchar2),
new OracleParameter(":SORT",OracleDbType.Decimal),
new OracleParameter(":PROVINCE_ID",OracleDbType.Varchar2),
new OracleParameter(":CITY_ID",OracleDbType.Varchar2),
new OracleParameter(":TOWN_ID",OracleDbType.Varchar2),
new OracleParameter(":operatorid",OracleDbType.Varchar2),
new OracleParameter(":STORAGE_ID",OracleDbType.Varchar2),
new OracleParameter(":AUTOSTS",OracleDbType.Int16),
new OracleParameter(":ID",OracleDbType.Int16)
};
parameter[0].Value = storageInfoModel.STORAGE_NAME;
parameter[1].Value = storageInfoModel.STORAGE_SHORT_NAME;
parameter[2].Value = storageInfoModel.PY_NAME;
parameter[3].Value = storageInfoModel.STORAGE_TYPE_ID;
parameter[4].Value = storageInfoModel.LINKMAN;
parameter[5].Value = storageInfoModel.PHONE;
parameter[6].Value = storageInfoModel.FAX;
parameter[7].Value = storageInfoModel.ADDRESS;
parameter[8].Value = storageInfoModel.POSTCODE;
parameter[9].Value = storageInfoModel.RFMODEL;
parameter[10].Value = storageInfoModel.GOODSFLAG;
parameter[11].Value = storageInfoModel.BATCHFLAG;
parameter[12].Value = storageInfoModel.STATUS;
parameter[13].Value = storageInfoModel.REMARK;
parameter[14].Value = storageInfoModel.VERSION;
parameter[15].Value = storageInfoModel.SORT;
parameter[16].Value = storageInfoModel.PROVINCE_ID;
parameter[17].Value = storageInfoModel.CITY_ID;
parameter[18].Value = storageInfoModel.TOWN_ID;
parameter[19].Value = storageInfoModel.OPERATORID;
parameter[20].Value = storageInfoModel.STORAGE_ID;
parameter[21].Value = storageInfoModel.AUTOSTS.ToString();
parameter[22].Value = storageInfoModel.ID;
SystemDataObject.Instance.ExecuteSql(sqlstr, parameter);
}
/// <summary>
/// 获取仓库信息结果集
/// </summary>
/// <returns></returns>
public DataTable GetStorageInfoDS(StorageInfoModel storageInfoModel)
{
//select STORAGE_ID, STORAGE_NAME, t1.STORAGE_SHORT_NAME,t1.PY_NAME,t1.STORAGE_TYPE_ID,t2.STORAGE_TYPE_NAME,
//LINKMAN,PHONE,FAX,ADDRESS,POSTCODE,decode(RFMODEL,'1','是','0','否','其他') RFMODEL,decode(GOODSFLAG,'1','是','0','否','其他') GOODSFLAG,
//decode(BATCHFLAG,'1','是','0','否','其他') BATCHFLAG,decode(t1.STATUS,'1','停用','0','正常','其他') STATUS,t1.REMARK,t1.VERSION
//from T_BASE_STORAGEINFO t1,T_BASE_STORAGE_TYPE t2 where t1.STORAGE_TYPE_ID=t2.STORAGE_TYPE_ID
StringBuilder sqlBuilder = new StringBuilder();
sqlBuilder.AppendLine("select ");
sqlBuilder.AppendLine(" a.STORAGE_ID, --仓库编号 ");
sqlBuilder.AppendLine(" a.STORAGE_NAME, --仓库名称 ");
sqlBuilder.AppendLine(" a.STORAGE_SHORT_NAME, --仓库简称 ");
sqlBuilder.AppendLine(" a.PY_NAME, --拼音简称 ");
//sqlBuilder.AppendLine(" a.STORAGE_TYPE_ID, --所属仓库分类 ");
sqlBuilder.AppendLine(" a.LINKMAN, --联系人 ");
sqlBuilder.AppendLine(" a.PHONE, --联系电话 ");
sqlBuilder.AppendLine(" a.FAX, --联系传真 ");
sqlBuilder.AppendLine(" a.ADDRESS, --地址 ");
sqlBuilder.AppendLine(" a.POSTCODE, --邮编 ");
sqlBuilder.AppendLine(" (case a.RFMODEL when '1' then '是' when '0' then '否' else '其他' end ) RFMODEL, --RF使用模式是否支持RF手持设备0否 1是");
sqlBuilder.AppendLine(" (case a.GOODSFLAG when '1' then '是' when '0' then '否' else '其他' end) GOODSFLAG, --物料混放 0否 1是 ");
sqlBuilder.AppendLine(" (case a.BATCHFLAG when '1' then '是' when '0' then '否' else '其他' end) BATCHFLAG, --批次混放 0否 1是 ");
sqlBuilder.AppendLine(" (case a.STATUS when '1' then '有货' when '0' then '正常' else '其他' end) STATUS, --Status 0正常 1停用 ");
sqlBuilder.AppendLine(" a.REMARK, --备注 ");
sqlBuilder.AppendLine(" a.VERSION, --版本号 ");
sqlBuilder.AppendLine(" a.SORT, --排序 ");
//sqlBuilder.AppendLine(" b.STORAGE_TYPE_NAME, --所属仓库分类 ");
sqlBuilder.AppendLine(" a.province_id, --省 ");
sqlBuilder.AppendLine(" a.city_id, --市 ");
sqlBuilder.AppendLine(" a.town_id, --县/市/区 ");
sqlBuilder.AppendLine(" f.province_name, --省 ");
sqlBuilder.AppendLine(" f.city_name, --市 ");
sqlBuilder.AppendLine(" f.town_name, --县/市/区 ");
sqlBuilder.AppendLine(" a.operatorid, --操作人 ");
sqlBuilder.AppendLine(" a.operatedate ,a.AUTOSTS --操作日期 ");
sqlBuilder.AppendLine("from ");
sqlBuilder.AppendLine(" T_BASE_STORAGEINFO a");
//sqlBuilder.AppendLine(" left join t_base_storage_type b ");
//sqlBuilder.AppendLine(" on a.storage_type_id = b.storage_type_id ");
sqlBuilder.AppendLine(" left join ");
sqlBuilder.AppendLine("(select--根据区ID得到该区属于哪个省市 ");
sqlBuilder.AppendLine(" c.add_name province_name, ");
sqlBuilder.AppendLine(" d.add_name city_name, ");
sqlBuilder.AppendLine(" e.add_name town_name, ");
sqlBuilder.AppendLine(" e.add_id town_id ");
sqlBuilder.AppendLine(" FROM ");
sqlBuilder.AppendLine(" t_base_addressarea c left join t_base_addressarea d ");
sqlBuilder.AppendLine(" on ");
sqlBuilder.AppendLine(" c.add_id = d.add_pid ");
sqlBuilder.AppendLine(" left join t_base_addressarea e ");
sqlBuilder.AppendLine(" on ");
sqlBuilder.AppendLine(" d.add_id = e.add_pid) f ");
sqlBuilder.AppendLine(" on a.town_id = f.town_id ");
sqlBuilder.AppendLine("where 1 = 1 ");
if (storageInfoModel != null)
{
if (!string.IsNullOrEmpty(storageInfoModel.STORAGE_TYPE_ID))
{
sqlBuilder.AppendLine(" and a.STORAGE_TYPE_ID = '" + storageInfoModel.STORAGE_TYPE_ID + "'");
}
if (!string.IsNullOrEmpty(storageInfoModel.STORAGE_ID))
{
sqlBuilder.AppendLine(" and a.STORAGE_ID = '" + storageInfoModel.STORAGE_ID + "'");
}
if (!string.IsNullOrEmpty(storageInfoModel.STORAGE_NAME))
{
sqlBuilder.AppendLine(" and a.STORAGE_NAME = '" + storageInfoModel.STORAGE_NAME + "'");
}
if (!string.IsNullOrEmpty(storageInfoModel.TOWN_ID))
{
sqlBuilder.AppendLine(" and a.TOWN_ID = '" + storageInfoModel.TOWN_ID + "'");
}
}
sqlBuilder.AppendLine(" order by a.SORT");
string sql2 = " select a.STORAGE_ID,a.STORAGE_NAME from T_BASE_STORAGEINFO a";
return SystemDataObject.Instance.GetDataTable(sql2.ToString());
}
/// <summary>
/// 插入或更改仓库信息
/// </summary>
/// <param name="storageTypeModel"></param>
/// <param name="flag">flag 操作标示符 0新增 1:修改</param>
public string InsOrUpdStorageInfo(StorageInfoModel storageInfoModel, int flag)
{
//string str = "select NEXT VALUE FOR seq_BASE_STORAGEINFO ";
//DataSet ds = SystemDataObject.Instance.GetDataSet(str);
//storageInfoModel.STORAGE_ID = "CK" + ds.Tables[0].Rows[0][0].ToString();
//新增
if (0 == flag)
{
string sqlstr =@"insert into
T_BASE_STORAGEINFO
(
STORAGE_ID, --仓库编号
STORAGE_NAME, --仓库名称
STORAGE_SHORT_NAME, --仓库简称
PY_NAME, --拼音简称
STORAGE_TYPE_ID, --所属仓库分类
LINKMAN, --联系人
PHONE, --联系电话
FAX, --联系传真
ADDRESS, --地址
POSTCODE, --邮编
RFMODEL, --RF使用模式是否支持RF手持设备0否 1是
GOODSFLAG, --物料混放 0否 1
BATCHFLAG, --批次混放 0否 1
STATUS, --Status 0正常 1停用
REMARK, --备注
VERSION, --版本号
SORT, --排序
PROVINCE_ID, --省
CITY_ID, --市
TOWN_ID, --区
operatorid, --操作人
operatedate , --操作日期
AUTOSTS,
ID
)
values
(
:STORAGE_ID,
:STORAGE_NAME,
:STORAGE_SHORT_NAME,
:PY_NAME,
:STORAGE_TYPE_ID,
:LINKMAN,
:PHONE,
:FAX,
:ADDRESS,
:POSTCODE,
:RFMODEL,
:GOODSFLAG,
:BATCHFLAG,
:STATUS,
:REMARK,
:VERSION,
:SORT,
:PROVINCE_ID,
:CITY_ID,
:TOWN_ID,
:operatorid,
getdate() ,:AUTOSTS ,:ID
)";
OracleParameter[] parameter = new OracleParameter[]
{
new OracleParameter(":STORAGE_ID",OracleDbType.Varchar2),
new OracleParameter(":STORAGE_NAME",OracleDbType.Varchar2),
new OracleParameter(":STORAGE_SHORT_NAME",OracleDbType.Varchar2),
new OracleParameter(":PY_NAME",OracleDbType.Varchar2),
new OracleParameter(":STORAGE_TYPE_ID",OracleDbType.Varchar2),
new OracleParameter(":LINKMAN",OracleDbType.Varchar2),
new OracleParameter(":PHONE",OracleDbType.Varchar2),
new OracleParameter(":FAX",OracleDbType.Varchar2),
new OracleParameter(":ADDRESS",OracleDbType.Varchar2),
new OracleParameter(":POSTCODE",OracleDbType.Varchar2),
new OracleParameter(":RFMODEL",OracleDbType.Char),
new OracleParameter(":GOODSFLAG",OracleDbType.Char),
new OracleParameter(":BATCHFLAG",OracleDbType.Char),
new OracleParameter(":STATUS",OracleDbType.Char),
new OracleParameter(":REMARK",OracleDbType.Varchar2),
new OracleParameter(":VERSION",OracleDbType.Varchar2),
new OracleParameter(":SORT",OracleDbType.Decimal),
new OracleParameter(":PROVINCE_ID",OracleDbType.Varchar2),
new OracleParameter(":CITY_ID",OracleDbType.Varchar2),
new OracleParameter(":TOWN_ID",OracleDbType.Varchar2),
new OracleParameter(":operatorid",OracleDbType.Varchar2),
new OracleParameter(":AUTOSTS",OracleDbType.Int16),
new OracleParameter(":ID",OracleDbType.Int64)
};
parameter[0].Value = storageInfoModel.STORAGE_ID;
parameter[1].Value = storageInfoModel.STORAGE_NAME;
parameter[2].Value = storageInfoModel.STORAGE_SHORT_NAME;
parameter[3].Value = storageInfoModel.PY_NAME;
parameter[4].Value = storageInfoModel.STORAGE_TYPE_ID;
parameter[5].Value = storageInfoModel.LINKMAN;
parameter[6].Value = storageInfoModel.PHONE;
parameter[7].Value = storageInfoModel.FAX;
parameter[8].Value = storageInfoModel.ADDRESS;
parameter[9].Value = storageInfoModel.POSTCODE;
parameter[10].Value = storageInfoModel.RFMODEL;
parameter[11].Value = storageInfoModel.GOODSFLAG;
parameter[12].Value = storageInfoModel.BATCHFLAG;
parameter[13].Value = storageInfoModel.STATUS;
parameter[14].Value = storageInfoModel.REMARK;
parameter[15].Value = storageInfoModel.VERSION;
parameter[16].Value = storageInfoModel.SORT;
parameter[17].Value = storageInfoModel.PROVINCE_ID;
parameter[18].Value = storageInfoModel.CITY_ID;
parameter[19].Value = storageInfoModel.TOWN_ID;
parameter[20].Value = storageInfoModel.OPERATORID;
parameter[21].Value =storageInfoModel.AUTOSTS.ToString();
parameter[22].Value = storageInfoModel.ID;
SystemDataObject.Instance.ExecuteSql(sqlstr, parameter);
}
//修改
else if (1 == flag)
{
string sqlstr =@"update T_BASE_STORAGEINFO set
STORAGE_NAME =:STORAGE_NAME,
STORAGE_SHORT_NAME =:STORAGE_SHORT_NAME,
PY_NAME=:PY_NAME,
STORAGE_TYPE_ID=:STORAGE_TYPE_ID,
LINKMAN=:LINKMAN,
PHONE=:PHONE,
FAX=:FAX,
ADDRESS=:ADDRESS,
POSTCODE=:POSTCODE,
RFMODEL=:RFMODEL,
GOODSFLAG=:GOODSFLAG,
BATCHFLAG=:BATCHFLAG,
STATUS=:STATUS,
REMARK=:REMARK,
VERSION=:VERSION,
SORT=:SORT,
PROVINCE_ID=:PROVINCE_ID,
CITY_ID=:CITY_ID,
TOWN_ID=:TOWN_ID,
operatorid=:operatorid,
operatedate=getdate(),
AUTOSTS =:AUTOSTS
where STORAGE_ID=:STORAGE_ID";
OracleParameter[] parameter = new OracleParameter[]
{
new OracleParameter(":STORAGE_NAME",OracleDbType.Varchar2),
new OracleParameter(":STORAGE_SHORT_NAME",OracleDbType.Varchar2),
new OracleParameter(":PY_NAME",OracleDbType.Varchar2),
new OracleParameter(":STORAGE_TYPE_ID",OracleDbType.Varchar2),
new OracleParameter(":LINKMAN",OracleDbType.Varchar2),
new OracleParameter(":PHONE",OracleDbType.Varchar2),
new OracleParameter(":FAX",OracleDbType.Varchar2),
new OracleParameter(":ADDRESS",OracleDbType.Varchar2),
new OracleParameter(":POSTCODE",OracleDbType.Varchar2),
new OracleParameter(":RFMODEL",OracleDbType.Char),
new OracleParameter(":GOODSFLAG",OracleDbType.Char),
new OracleParameter(":BATCHFLAG",OracleDbType.Char),
new OracleParameter(":STATUS",OracleDbType.Char),
new OracleParameter(":REMARK",OracleDbType.Varchar2),
new OracleParameter(":VERSION",OracleDbType.Varchar2),
new OracleParameter(":SORT",OracleDbType.Decimal),
new OracleParameter(":PROVINCE_ID",OracleDbType.Varchar2),
new OracleParameter(":CITY_ID",OracleDbType.Varchar2),
new OracleParameter(":TOWN_ID",OracleDbType.Varchar2),
new OracleParameter(":operatorid",OracleDbType.Varchar2),
new OracleParameter(":STORAGE_ID",OracleDbType.Varchar2),
new OracleParameter(":AUTOSTS",OracleDbType.Int16)
};
parameter[0].Value = storageInfoModel.STORAGE_NAME;
parameter[1].Value = storageInfoModel.STORAGE_SHORT_NAME;
parameter[2].Value = storageInfoModel.PY_NAME;
parameter[3].Value = storageInfoModel.STORAGE_TYPE_ID;
parameter[4].Value = storageInfoModel.LINKMAN;
parameter[5].Value = storageInfoModel.PHONE;
parameter[6].Value = storageInfoModel.FAX;
parameter[7].Value = storageInfoModel.ADDRESS;
parameter[8].Value = storageInfoModel.POSTCODE;
parameter[9].Value = storageInfoModel.RFMODEL;
parameter[10].Value = storageInfoModel.GOODSFLAG;
parameter[11].Value = storageInfoModel.BATCHFLAG;
parameter[12].Value = storageInfoModel.STATUS;
parameter[13].Value = storageInfoModel.REMARK;
parameter[14].Value = storageInfoModel.VERSION;
parameter[15].Value = storageInfoModel.SORT;
parameter[16].Value = storageInfoModel.PROVINCE_ID;
parameter[17].Value = storageInfoModel.CITY_ID;
parameter[18].Value = storageInfoModel.TOWN_ID;
parameter[19].Value = storageInfoModel.OPERATORID;
parameter[20].Value = storageInfoModel.STORAGE_ID;
parameter[21].Value = storageInfoModel.AUTOSTS.ToString();
SystemDataObject.Instance.ExecuteSql(sqlstr, parameter);
}
return storageInfoModel.STORAGE_ID;
}
/// <summary>
/// 删除仓库信息
/// </summary>
/// <param name="strStorageTypeID"></param>
public void DeleteStorageInfo(string strStorageInfoID)
{
string sqlstr =@"delete from T_BASE_STORAGEINFO where STORAGE_ID =:STORAGE_ID ";
OracleParameter[] parameter = new OracleParameter[]{
new OracleParameter(":STORAGE_ID",OracleDbType.Varchar2),
};
parameter[0].Value = strStorageInfoID;
SystemDataObject.Instance.ExecuteSql(sqlstr, parameter);
}
/// <summary>
/// 删除属于某仓库分类的仓库信息
/// </summary>
/// <param name="strStorageTypeID">仓库分类编号</param>
public void DeleteStorageInfoByStorageTypeID(string strStorageTypeID)
{
string sqlstr =@"delete from T_BASE_STORAGEINFO where STORAGE_TYPE_ID =:STORAGE_TYPE_ID ";
OracleParameter[] parameter = new OracleParameter[]{
new OracleParameter(":STORAGE_TYPE_ID",OracleDbType.Varchar2),
};
parameter[0].Value = strStorageTypeID;
SystemDataObject.Instance.ExecuteSql(sqlstr, parameter);
}
}
}