<%@ CodeTemplate Language="C#" TargetLanguage="Text" Description="This template demonstrates using properties defined in external assemblies." %> <%@ Property Name="SourceDatabase" Type="SchemaExplorer.DatabaseSchema" Category="Context" Description="Database that the documentation should be based on." %> <%@ Property Name="SourceTable" Type="SchemaExplorer.TableSchema" Category="Context" Description="The table to use for this sample." %> <%@ Assembly Name="SchemaExplorer" %> <%@ Import Namespace="SchemaExplorer" %> /// ///Data Implemention Object ///BASIC CRUD CLASS FOR TABLE <%=this.SourceTable.Name%> ///By wm ///on <%= DateTime.Now.ToString("MM/dd/yyyy")%> /// using System; using DeiNiu.Utils; using System.Data.SqlClient; using DeiNiu.Data.BaseObject; using System.Data; namespace DeiNiu.wms.Data.Model { #region <%= getObjClassName() %>_Imp [Serializable] class <%= getObjClassName() %>_Imp: BaseModel_Imp{ protected override void datarowToModel(DataRow dr, BaseModel obj) { if (dr != null ) { <%= getObjClassName() %> tmpObj = (<%= getObjClassName() %>)obj; <% foreach (ColumnSchema column in this.SourceTable.Columns) { %> if (dr.Table.Columns.Contains("<%= column.Name.ToString() %>") && !(dr["<%= column.Name.ToString() %>"] is DBNull)) { tmpObj.<%= column.Name.ToString().ToUpper().Equals("ID") ? column.Name.ToString().ToUpper() : "_"+ column.Name %> = <% if(column.DataType.ToString().Equals("String") || column.DataType.ToString().Equals("AnsiString") || column.DataType.ToString().Equals("DateTime") || column.DataType.ToString().Equals("Date") ) {%> dr["<%= column.Name.ToString() %>"].ToString() <% } else {%> Convert.To<%= column.DataType %>(dr["<%= column.Name.ToString() %>"].ToString()); <% } %>; } <% } %> } } protected override void CmdPrepare(SqlCommand oraCmd) { <%= getObjClassName() %> tmpObj = (<%= getObjClassName() %>)modelObj; switch (this._op_flag) { case (int)op_flag.add: _strSql = "INSERT INTO dbo. <%= getTableName() %>(<%=getColums4Insert("")%>) VALUES(<%=getColums4Insert("@")%>)"; break; case (int)op_flag.update: _strSql = "UPDATE dbo.<%= getTableName() %> SET <%= getColums4update()%> WHERE ID = @ID"; break; case (int)op_flag.delete: // _strSql = "UPDATE dbo.<%= getTableName() %> SET DR =0 WHERE ID = @ID"; _strSql = "delete from dbo.<%= getTableName() %> WHERE ID = @ID"; break; case (int)op_flag.getObj: _strSql = "SELECT * FROM dbo.<%= getTableName() %> WHERE ID = @ID"; break; case (int)op_flag.queryAll: _strSql = "SELECT * FROM dbo.<%= getTableName() %> WHERE DR =1 "; if (this.rownumEnd >0 ) { _strSql = "SELECT * FROM (SELECT *, ROW_NUMBER() OVER (ORDER BY ID DESC) as sortNo FROM dbo.<%= getTableName()%> WHERE DR =1 )AS SORTEDTB WHERE DR =1 AND sortNo BETWEEN @START AND @END"; } _strSql += ";SELECT COUNT(*) FROM <%= getTableName() %> WHERE DR =1"; break; case (int)op_flag.queryActived: _strSql = "SELECT * FROM dbo.<%= getTableName() %> WHERE DR =1"; _strSql += ";SELECT COUNT(*) FROM <%= getTableName() %> WHERE DR =1"; break; case (int)op_flag.getPk: _strSql = "SELECT MAX(ID) FROM dbo.<%= getTableName() %> WHERE DR =1"; break; case (int) op_flag.getCount: _strSql = "SELECT COUNT(*) FROM <%= getTableName() %> WHERE DR =1"; break; } oraCmd.CommandText = _strSql; fillParameters(oraCmd,tmpObj); } private void fillParameters(SqlCommand oraCmd, <%= getObjClassName() %> 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); break; } if ((_op_flag !=(int)op_flag.update) &&( _op_flag !=(int)op_flag.add)) return; <% foreach (ColumnSchema column in this.SourceTable.Columns) { if(!isIgnored(column)){ if(column.Name.ToString().ToUpper().Equals("LASTMODIFIED")){ %> oraCmd.Parameters.AddWithValue("@<%=column.Name.ToUpper()%>", "getdate()") ; <% } else {%> oraCmd.Parameters.AddWithValue("@<%=column.Name.ToUpper()%>", VerifyDbnull(tmpObj.<%="_"+ column.Name %>)) ; <% }} } %> } protected override enumDbInstance instance { get { return <%=getDbInstance()%>; } } } #endregion }