ldj/Model/platform/data/basic/Workplan_base_Imp.cs

192 lines
8.2 KiB
C#

/// <summary>
///Data Implemention Object
///BASIC CRUD CLASS FOR TABLE t_workplan
///By wm
///on 08/04/2023
/// </summary>
using System;
using DeiNiu.Utils;
using System.Data.SqlClient;
using DeiNiu.Data.BaseObject;
using System.Data;
namespace DeiNiu.wms.Data.Model
{
#region Workplan_base_Imp
[Serializable] class Workplan_base_Imp: BaseModel_Imp{
protected override void datarowToModel(DataRow dr, BaseModel obj)
{
if (dr != null )
{
Workplan_base tmpObj = (Workplan_base)obj;
if (dr.Table.Columns.Contains("id") && !(dr["id"] is DBNull))
{
tmpObj.ID = Convert.ToInt32(dr["id"].ToString()); ;
}
if (dr.Table.Columns.Contains("wp_date") && !(dr["wp_date"] is DBNull))
{
tmpObj._wp_date = dr["wp_date"].ToString() ;
tmpObj._Owp_date = dr["wp_date"].ToString() ;
}
if (dr.Table.Columns.Contains("wp_emp") && !(dr["wp_emp"] is DBNull))
{
tmpObj._wp_emp = Convert.ToInt32(dr["wp_emp"].ToString()); ;
tmpObj._Owp_emp = Convert.ToInt32(dr["wp_emp"].ToString()); ;
}
if (dr.Table.Columns.Contains("dr") && !(dr["dr"] is DBNull))
{
tmpObj._dr = Convert.ToBoolean(dr["dr"].ToString()); ;
}
if (dr.Table.Columns.Contains("operater") && !(dr["operater"] is DBNull))
{
tmpObj._operater = Convert.ToInt32(dr["operater"].ToString()); ;
tmpObj._Ooperater = Convert.ToInt32(dr["operater"].ToString()); ;
}
if (dr.Table.Columns.Contains("create_time") && !(dr["create_time"] is DBNull))
{
tmpObj._create_time = dr["create_time"].ToString() ;
}
if (dr.Table.Columns.Contains("lastmodified") && !(dr["lastmodified"] is DBNull))
{
tmpObj._lastmodified = dr["lastmodified"].ToString() ;
}
}
}
protected override void CmdPrepare(SqlCommand oraCmd) {
Workplan_base tmpObj = (Workplan_base)modelObj;
switch (this._op_flag) {
case (int)op_flag.add:
_strSql = "INSERT INTO dbo.T_WORKPLAN({0}) VALUES({1} )";
_strSql = String.Format(_strSql, getFields(tmpObj), getValues(tmpObj));
break;
case (int)op_flag.update:
// _strSql = "UPDATE dbo.T_WORKPLAN SET WP_DATE = @WP_DATE,WP_EMP = @WP_EMP,OPERATER = @OPERATER,LASTMODIFIED = getdate() WHERE ID = @ID";
_strSql = "UPDATE dbo.T_WORKPLAN {0} WHERE ID = @ID";
_strSql = String.Format(_strSql, getChangedFields(tmpObj) );
break;
case (int)op_flag.delete:
// _strSql = "UPDATE dbo.T_WORKPLAN SET DR =0 WHERE ID = @ID";
_strSql = "delete from dbo.T_WORKPLAN WHERE ID = @ID";
break;
case (int)op_flag.getObj:
_strSql = "SELECT * FROM dbo.T_WORKPLAN WHERE ID = @ID";
break;
case (int)op_flag.queryAll:
_strSql = "SELECT * FROM dbo.T_WORKPLAN WHERE DR =1 ";
// if (this.rownumEnd >0 )
{
// _strSql = "SELECT * FROM (SELECT *, ROW_NUMBER() OVER (ORDER BY ID DESC) as sortNo FROM dbo.T_WORKPLAN WHERE DR =1 )AS SORTEDTB WHERE DR =1 AND sortNo BETWEEN @START AND @END";
}
// _strSql += ";SELECT COUNT(*) FROM T_WORKPLAN WHERE DR =1";
break;
case (int)op_flag.queryActived:
_strSql = "SELECT * FROM dbo.T_WORKPLAN WHERE DR =1";
_strSql += ";SELECT COUNT(*) FROM T_WORKPLAN WHERE DR =1";
break;
case (int)op_flag.getPk:
_strSql = "SELECT MAX(ID) FROM dbo.T_WORKPLAN WHERE DR =1";
break;
case (int) op_flag.getCount:
_strSql = "SELECT COUNT(*) FROM T_WORKPLAN WHERE DR =1";
break;
}
oraCmd.CommandText = _strSql;
fillParameters(oraCmd,tmpObj);
}
private string getFields(Workplan_base tmpObj)
{
String colums ="";
colums+= tmpObj._wp_date == null ? "" : "WP_DATE" + ",";
colums+= tmpObj._wp_emp == null ? "" : "WP_EMP" + ",";
colums+= tmpObj._operater == null ? "" : "OPERATER" + ",";
return colums.Substring(0,colums.Length -1) ;
}
private string getValues(Workplan_base tmpObj)
{
String values ="";
values+= tmpObj._wp_date == null ? "" : "@WP_DATE" + ",";
values+= tmpObj._wp_emp == null ? "" : "@WP_EMP" + ",";
values+= tmpObj._operater == null ? "" : "@OPERATER" + ",";
return values.Substring(0,values.Length -1) ;
}
private string getChangedFields(Workplan_base tmpObj)
{
string updateFields = " set ";
if (tmpObj._wp_date !=null && tmpObj._wp_date != tmpObj._Owp_date)
{
updateFields +="WP_DATE = @WP_DATE," ;
}
if (tmpObj._wp_emp !=null && tmpObj._wp_emp != tmpObj._Owp_emp)
{
updateFields +="WP_EMP = @WP_EMP," ;
}
if (tmpObj._operater !=null && tmpObj._operater != tmpObj._Ooperater)
{
updateFields +="OPERATER = @OPERATER," ;
}
updateFields +="LASTMODIFIED = getdate()" ;
return updateFields ;
}
private void fillParameters(SqlCommand oraCmd, Workplan_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:
oraCmd.Parameters.AddWithValue("@ID", tmpObj.ID);
oraCmd.Parameters.AddWithValue("@WP_DATE", VerifyDbnull(tmpObj._wp_date)) ;
oraCmd.Parameters.AddWithValue("@WP_EMP", VerifyDbnull(tmpObj._wp_emp)) ;
oraCmd.Parameters.AddWithValue("@OPERATER", VerifyDbnull(tmpObj._operater)) ;
// oraCmd.Parameters.AddWithValue("@LASTMODIFIED", "getdate()") ;
return;
case (int)op_flag.add:
if(tmpObj._wp_date!=null)
oraCmd.Parameters.AddWithValue("@WP_DATE", VerifyDbnull(tmpObj._wp_date)) ;
if(tmpObj._wp_emp!=null)
oraCmd.Parameters.AddWithValue("@WP_EMP", VerifyDbnull(tmpObj._wp_emp)) ;
if(tmpObj._operater!=null)
oraCmd.Parameters.AddWithValue("@OPERATER", VerifyDbnull(tmpObj._operater)) ;
return;
}
}
protected override enumDbInstance instance
{
get
{
return enumDbInstance.platForm;
}
}
}
#endregion
}