ldj/Model/wms/data/basic/Node_base_Imp.cs

287 lines
14 KiB
C#
Raw Normal View History

2023-05-23 16:13:17 +08:00
/// <summary>
///Data Implemention Object
///BASIC CRUD CLASS FOR TABLE t_node
///By wm
2023-09-04 22:41:19 +08:00
///on 08/04/2023
2023-05-23 16:13:17 +08:00
/// </summary>
using System;
using DeiNiu.Utils;
using System.Data.SqlClient;
using DeiNiu.Data.BaseObject;
using System.Data;
namespace DeiNiu.wms.Data.Model
{
#region Node_base_Imp
[Serializable] class Node_base_Imp: BaseModel_Imp{
protected override void datarowToModel(DataRow dr, BaseModel obj)
{
if (dr != null )
{
Node_base tmpObj = (Node_base)obj;
if (dr.Table.Columns.Contains("id") && !(dr["id"] is DBNull))
{
tmpObj.ID = Convert.ToInt32(dr["id"].ToString()); ;
}
if (dr.Table.Columns.Contains("name") && !(dr["name"] is DBNull))
{
tmpObj._name = dr["name"].ToString() ;
2023-09-04 22:41:19 +08:00
tmpObj._Oname = dr["name"].ToString() ;
2023-05-23 16:13:17 +08:00
}
if (dr.Table.Columns.Contains("value") && !(dr["value"] is DBNull))
{
tmpObj._value = dr["value"].ToString() ;
2023-09-04 22:41:19 +08:00
tmpObj._Ovalue = dr["value"].ToString() ;
2023-05-23 16:13:17 +08:00
}
if (dr.Table.Columns.Contains("valueType") && !(dr["valueType"] is DBNull))
{
tmpObj._valueType = Convert.ToInt32(dr["valueType"].ToString()); ;
2023-09-04 22:41:19 +08:00
tmpObj._OvalueType = Convert.ToInt32(dr["valueType"].ToString()); ;
2023-05-23 16:13:17 +08:00
}
if (dr.Table.Columns.Contains("isOn") && !(dr["isOn"] is DBNull))
{
tmpObj._isOn = Convert.ToBoolean(dr["isOn"].ToString()); ;
2023-09-04 22:41:19 +08:00
tmpObj._OisOn = Convert.ToBoolean(dr["isOn"].ToString()); ;
// LogHelper.debug(this.GetType(), String.Format("1 tmpObj._isOn :{0}, tmpObj._OisOn :{1}", tmpObj._isOn,tmpObj._OisOn));
2023-05-23 16:13:17 +08:00
}
if (dr.Table.Columns.Contains("description") && !(dr["description"] is DBNull))
{
tmpObj._description = dr["description"].ToString() ;
2023-09-04 22:41:19 +08:00
tmpObj._Odescription = dr["description"].ToString() ;
2023-05-23 16:13:17 +08:00
}
if (dr.Table.Columns.Contains("parentid") && !(dr["parentid"] is DBNull))
{
tmpObj._parentid = Convert.ToInt32(dr["parentid"].ToString()); ;
2023-09-04 22:41:19 +08:00
tmpObj._Oparentid = Convert.ToInt32(dr["parentid"].ToString()); ;
2023-05-23 16:13:17 +08:00
}
if (dr.Table.Columns.Contains("flag") && !(dr["flag"] is DBNull))
{
tmpObj._flag = Convert.ToInt32(dr["flag"].ToString()); ;
2023-09-04 22:41:19 +08:00
tmpObj._Oflag = Convert.ToInt32(dr["flag"].ToString()); ;
2023-05-23 16:13:17 +08:00
}
if (dr.Table.Columns.Contains("isSystem") && !(dr["isSystem"] is DBNull))
{
tmpObj._isSystem = Convert.ToBoolean(dr["isSystem"].ToString()); ;
2023-09-04 22:41:19 +08:00
tmpObj._OisSystem = Convert.ToBoolean(dr["isSystem"].ToString()); ;
2023-05-23 16:13:17 +08:00
}
if (dr.Table.Columns.Contains("operater") && !(dr["operater"] is DBNull))
{
tmpObj._operater = Convert.ToInt32(dr["operater"].ToString()); ;
2023-09-04 22:41:19 +08:00
tmpObj._Ooperater = Convert.ToInt32(dr["operater"].ToString()); ;
2023-05-23 16:13:17 +08:00
}
if (dr.Table.Columns.Contains("lastmodified") && !(dr["lastmodified"] is DBNull))
{
tmpObj._lastmodified = dr["lastmodified"].ToString() ;
}
if (dr.Table.Columns.Contains("createtime") && !(dr["createtime"] is DBNull))
{
tmpObj._createtime = dr["createtime"].ToString() ;
}
if (dr.Table.Columns.Contains("dr") && !(dr["dr"] is DBNull))
{
tmpObj._dr = Convert.ToBoolean(dr["dr"].ToString()); ;
}
}
2023-09-04 22:41:19 +08:00
}
2023-05-23 16:13:17 +08:00
protected override void CmdPrepare(SqlCommand oraCmd) {
Node_base tmpObj = (Node_base)modelObj;
switch (this._op_flag) {
case (int)op_flag.add:
2023-09-04 22:41:19 +08:00
_strSql = "INSERT INTO dbo.T_NODE({0}) VALUES({1} )";
_strSql = String.Format(_strSql, getFields(tmpObj), getValues(tmpObj));
2023-05-23 16:13:17 +08:00
break;
case (int)op_flag.update:
2023-09-04 22:41:19 +08:00
// _strSql = "UPDATE dbo.T_NODE SET NAME = @NAME,VALUE = @VALUE,VALUETYPE = @VALUETYPE,ISON = @ISON,DESCRIPTION = @DESCRIPTION,PARENTID = @PARENTID,FLAG = @FLAG,ISSYSTEM = @ISSYSTEM,OPERATER = @OPERATER,LASTMODIFIED = getdate() WHERE ID = @ID";
_strSql = "UPDATE dbo.T_NODE {0} WHERE ID = @ID";
_strSql = String.Format(_strSql, getChangedFields(tmpObj) );
LogHelper.debug(this.GetType(), _strSql);
2023-05-23 16:13:17 +08:00
break;
case (int)op_flag.delete:
// _strSql = "UPDATE dbo.T_NODE SET DR =0 WHERE ID = @ID";
_strSql = "delete from dbo.T_NODE WHERE ID = @ID";
break;
case (int)op_flag.getObj:
_strSql = "SELECT * FROM dbo.T_NODE WHERE ID = @ID";
break;
case (int)op_flag.queryAll:
_strSql = "SELECT * FROM dbo.T_NODE WHERE DR =1 ";
2023-09-04 22:41:19 +08:00
// if (this.rownumEnd >0 )
2023-05-23 16:13:17 +08:00
{
2023-09-04 22:41:19 +08:00
// _strSql = "SELECT * FROM (SELECT *, ROW_NUMBER() OVER (ORDER BY ID DESC) as sortNo FROM dbo.T_NODE WHERE DR =1 )AS SORTEDTB WHERE DR =1 AND sortNo BETWEEN @START AND @END";
2023-05-23 16:13:17 +08:00
}
2023-09-04 22:41:19 +08:00
// _strSql += ";SELECT COUNT(*) FROM T_NODE WHERE DR =1";
2023-05-23 16:13:17 +08:00
break;
case (int)op_flag.queryActived:
_strSql = "SELECT * FROM dbo.T_NODE WHERE DR =1";
_strSql += ";SELECT COUNT(*) FROM T_NODE WHERE DR =1";
break;
case (int)op_flag.getPk:
_strSql = "SELECT MAX(ID) FROM dbo.T_NODE WHERE DR =1";
break;
case (int) op_flag.getCount:
_strSql = "SELECT COUNT(*) FROM T_NODE WHERE DR =1";
break;
}
oraCmd.CommandText = _strSql;
fillParameters(oraCmd,tmpObj);
}
2023-09-04 22:41:19 +08:00
private string getFields(Node_base tmpObj)
{
String colums ="";
colums+= tmpObj._name == null ? "" : "NAME" + ",";
colums+= tmpObj._value == null ? "" : "VALUE" + ",";
colums+= tmpObj._valueType == null ? "" : "VALUETYPE" + ",";
colums+= tmpObj._isOn == null ? "" : "ISON" + ",";
colums+= tmpObj._description == null ? "" : "DESCRIPTION" + ",";
colums+= tmpObj._parentid == null ? "" : "PARENTID" + ",";
colums+= tmpObj._flag == null ? "" : "FLAG" + ",";
colums+= tmpObj._isSystem == null ? "" : "ISSYSTEM" + ",";
colums+= tmpObj._operater == null ? "" : "OPERATER" + ",";
return colums.Substring(0,colums.Length -1) ;
}
2023-05-23 16:13:17 +08:00
2023-09-04 22:41:19 +08:00
private string getValues(Node_base tmpObj)
{
String values ="";
values+= tmpObj._name == null ? "" : "@NAME" + ",";
values+= tmpObj._value == null ? "" : "@VALUE" + ",";
values+= tmpObj._valueType == null ? "" : "@VALUETYPE" + ",";
values+= tmpObj._isOn == null ? "" : "@ISON" + ",";
values+= tmpObj._description == null ? "" : "@DESCRIPTION" + ",";
values+= tmpObj._parentid == null ? "" : "@PARENTID" + ",";
values+= tmpObj._flag == null ? "" : "@FLAG" + ",";
values+= tmpObj._isSystem == null ? "" : "@ISSYSTEM" + ",";
values+= tmpObj._operater == null ? "" : "@OPERATER" + ",";
return values.Substring(0,values.Length -1) ;
}
private string getChangedFields(Node_base tmpObj)
{
string updateFields = " set ";
LogHelper.debug(this.GetType(), String.Format("getChangedFields... tmpObj._name :{0},tmpObj._Oname :{1}, is changed? : {2}", tmpObj._name, tmpObj._Oname, tmpObj._name != null && tmpObj._name != tmpObj._Oname));
if (tmpObj._name !=null && tmpObj._name != tmpObj._Oname)
{
updateFields +="NAME = @NAME," ;
}
if (tmpObj._value !=null && tmpObj._value != tmpObj._Ovalue)
{
updateFields +="VALUE = @VALUE," ;
}
if (tmpObj._valueType !=null && tmpObj._valueType != tmpObj._OvalueType)
{
updateFields +="VALUETYPE = @VALUETYPE," ;
}
LogHelper.debug(this.GetType(), String.Format("getChangedFields... tmpObj._isOn :{0}, tmpObj._OisOn :{1}, is changed? : {2}", tmpObj._isOn, tmpObj._OisOn, tmpObj._isOn != null && tmpObj._isOn != tmpObj._OisOn));
if (tmpObj._isOn !=null && tmpObj._isOn != tmpObj._OisOn)
{
LogHelper.debug(this.GetType(),"更新 isOn");
updateFields +="ISON = @ISON," ;
}
else
{
LogHelper.debug(this.GetType(), "更新 isOn");
}
if (tmpObj._description !=null && tmpObj._description != tmpObj._Odescription)
{
updateFields +="DESCRIPTION = @DESCRIPTION," ;
}
if (tmpObj._parentid !=null && tmpObj._parentid != tmpObj._Oparentid)
{
updateFields +="PARENTID = @PARENTID," ;
}
if (tmpObj._flag !=null && tmpObj._flag != tmpObj._Oflag)
{
updateFields +="FLAG = @FLAG," ;
}
if (tmpObj._isSystem !=null && tmpObj._isSystem != tmpObj._OisSystem)
{
updateFields +="ISSYSTEM = @ISSYSTEM," ;
}
if (tmpObj._operater !=null && tmpObj._operater != tmpObj._Ooperater)
{
updateFields +="OPERATER = @OPERATER," ;
}
updateFields +="LASTMODIFIED = getdate()" ;
return updateFields ;
}
2023-05-23 16:13:17 +08:00
private void fillParameters(SqlCommand oraCmd, Node_base tmpObj) {
switch (this._op_flag) {
case (int)op_flag.getObj:
case (int)op_flag.delete:
oraCmd.Parameters.AddWithValue("@ID", tmpObj.ID);
return;
case (int)op_flag.getPk:
oraCmd.Parameters.AddWithValue("@ID", tmpObj.ID);
return;
case (int)op_flag.queryAll:
if (this.rownumEnd > 0)
{
oraCmd.Parameters.AddWithValue("@START", this._rownumStart);
oraCmd.Parameters.AddWithValue("@END", this._rownumEnd);
}
return;
case 0:
case (int)op_flag.queryActived:
return;
case (int)op_flag.update:
2023-09-04 22:41:19 +08:00
oraCmd.Parameters.AddWithValue("@ID", tmpObj.ID);
oraCmd.Parameters.AddWithValue("@NAME", VerifyDbnull(tmpObj._name)) ;
oraCmd.Parameters.AddWithValue("@VALUE", VerifyDbnull(tmpObj._value)) ;
oraCmd.Parameters.AddWithValue("@VALUETYPE", VerifyDbnull(tmpObj._valueType)) ;
oraCmd.Parameters.AddWithValue("@ISON", VerifyDbnull(tmpObj._isOn)) ;
oraCmd.Parameters.AddWithValue("@DESCRIPTION", VerifyDbnull(tmpObj._description)) ;
oraCmd.Parameters.AddWithValue("@PARENTID", VerifyDbnull(tmpObj._parentid)) ;
oraCmd.Parameters.AddWithValue("@FLAG", VerifyDbnull(tmpObj._flag)) ;
oraCmd.Parameters.AddWithValue("@ISSYSTEM", VerifyDbnull(tmpObj._isSystem)) ;
oraCmd.Parameters.AddWithValue("@OPERATER", VerifyDbnull(tmpObj._operater)) ;
// oraCmd.Parameters.AddWithValue("@LASTMODIFIED", "getdate()") ;
return;
case (int)op_flag.add:
if(tmpObj._name!=null)
oraCmd.Parameters.AddWithValue("@NAME", VerifyDbnull(tmpObj._name)) ;
if(tmpObj._value!=null)
oraCmd.Parameters.AddWithValue("@VALUE", VerifyDbnull(tmpObj._value)) ;
if(tmpObj._valueType!=null)
oraCmd.Parameters.AddWithValue("@VALUETYPE", VerifyDbnull(tmpObj._valueType)) ;
if(tmpObj._isOn!=null)
oraCmd.Parameters.AddWithValue("@ISON", VerifyDbnull(tmpObj._isOn)) ;
if(tmpObj._description!=null)
oraCmd.Parameters.AddWithValue("@DESCRIPTION", VerifyDbnull(tmpObj._description)) ;
if(tmpObj._parentid!=null)
oraCmd.Parameters.AddWithValue("@PARENTID", VerifyDbnull(tmpObj._parentid)) ;
if(tmpObj._flag!=null)
oraCmd.Parameters.AddWithValue("@FLAG", VerifyDbnull(tmpObj._flag)) ;
if(tmpObj._isSystem!=null)
oraCmd.Parameters.AddWithValue("@ISSYSTEM", VerifyDbnull(tmpObj._isSystem)) ;
if(tmpObj._operater!=null)
oraCmd.Parameters.AddWithValue("@OPERATER", VerifyDbnull(tmpObj._operater)) ;
return;
2023-05-23 16:13:17 +08:00
}
2023-09-04 22:41:19 +08:00
2023-05-23 16:13:17 +08:00
}
protected override enumDbInstance instance
{
get
{
return enumDbInstance.wms;
}
}
}
#endregion
}