133 lines
		
	
	
		
			4.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
		
		
			
		
	
	
			133 lines
		
	
	
		
			4.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
|  | <%@ CodeTemplate Language="C#" TargetLanguage="Text" Description="This template demonstrates using properties defined in external assemblies." %> | ||
|  | <%@ Property Name="SourceTable" Type="SchemaExplorer.TableSchema" Category="Context" Description="The table to use for this sample." %> | ||
|  | <%@ Assembly Name="SchemaExplorer" %> | ||
|  | <%@ Import Namespace="SchemaExplorer" %>  | ||
|  | 
 | ||
|  | <script runat="template"> | ||
|  | public string getTableName() | ||
|  | { | ||
|  | 	return this.SourceTable.Name ; | ||
|  | } | ||
|  | 
 | ||
|  | public string getObjClassName() | ||
|  | {  | ||
|  | 	 return  this.SourceTable.Name.Substring(2); | ||
|  | } | ||
|  | public string getColums4Insert(string prefix) | ||
|  | {  | ||
|  |     String colums =""; | ||
|  |        foreach (ColumnSchema column in this.SourceTable.Columns) {   | ||
|  |            colums+= prefix + column.Name + ","; | ||
|  |        }           | ||
|  |                    | ||
|  | 	 return colums.Substring(0,colums.Length -1) ; | ||
|  | } | ||
|  | public string getColums4update() | ||
|  | {  | ||
|  |     String colums =""; | ||
|  |        foreach (ColumnSchema column in this.SourceTable.Columns) {   | ||
|  |            colums+=  column.Name + " = @" +column.Name +", " ; | ||
|  |        }           | ||
|  |                    | ||
|  | 	 return colums.Substring(0,colums.Length -1) ; | ||
|  | } | ||
|  | </script> | ||
|  | /// <summary> | ||
|  | ///Data  Implemention Object  | ||
|  | ///BASIC CRUD CLASS FOR TABLE <%=this.SourceTable.Name%> | ||
|  | ///By wm with codesmith.  | ||
|  | ///on <%= DateTime.Now.ToString("MM/dd/yyyy")%> | ||
|  | /// </summary> | ||
|  |   | ||
|  | 
 | ||
|  | using System; | ||
|  | using Tracen.Data.BaseObject; | ||
|  | using Tracen.Utils; | ||
|  | using System.Data.SqlClient; | ||
|  | 
 | ||
|  | namespace Deiniu.Wms.Data.Model | ||
|  | { | ||
|  | 
 | ||
|  | 	#region <%= getObjClassName() %>_Imp | ||
|  | 	 | ||
|  | 	[Serializable]  class  <%= getObjClassName() %>_Imp : BaseModel_Imp{ | ||
|  | 	 | ||
|  | 
 | ||
|  | 
 | ||
|  |      protected override void Assem_Model(SqlDataReader reader, BaseModel obj) { | ||
|  | 			 | ||
|  | 			if (reader != null && !reader.IsClosed) { | ||
|  | 			   <%= getObjClassName() %>  tmpObj = (<%= getObjClassName() %>)obj; | ||
|  | 				if (reader.Read()) { | ||
|  |                 <%  | ||
|  |                 int i = 0; | ||
|  |                 foreach (ColumnSchema column in this.SourceTable.Columns) { %>	               | ||
|  |                     if (!reader.IsDBNull(<%=i%>)) tmpObj._<%=column.Name %> = reader.Get<%= column.DataType %>(<%=i%>)<% if(column.DataType.ToString().Equals("DateTime")) {%>.ToString() <% } %>;                     | ||
|  |                 <% i++; | ||
|  |                     }  | ||
|  |                 %> | ||
|  |                 reader.Close();  | ||
|  | 				} | ||
|  | 			} | ||
|  | 			 | ||
|  | 			 | ||
|  |         } | ||
|  | 
 | ||
|  |         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";  | ||
|  | 					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() %>  "; | ||
|  | 					break; | ||
|  |                 case (int)op_flag.queryActived: | ||
|  |                     _strSql = "SELECT * FROM dbo.<%= getTableName() %>   WHERE DR =1"; | ||
|  | 					break; | ||
|  | 				 case (int)op_flag.getPk: | ||
|  |                     _strSql = "SELECT MAX(ID)  FROM dbo.<%= getTableName() %>   WHERE DR =1"; | ||
|  | 					break; | ||
|  |             }           | ||
|  |             oraCmd.CommandText = _strSql; | ||
|  |             fillParameters(oraCmd,tmpObj); | ||
|  |         } | ||
|  |           | ||
|  | 
 | ||
|  |         private void fillParameters(SqlCommand oraCmd,  Department tmpObj) { | ||
|  | 			switch (this._op_flag) { | ||
|  | 				case (int)op_flag.getObj: | ||
|  | 				case (int)op_flag.delete: | ||
|  | 				case (int)op_flag.getPk: | ||
|  |                     oraCmd.Parameters.AddWithValue("@ID", tmpObj.ID); | ||
|  | 					break; | ||
|  | 				case (int)op_flag.queryAll: | ||
|  | 				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) { %>	     | ||
|  |                  oraCmd.Parameters.AddWithValue("@<%=column.Name %>",  VerifyDbnull(tmpObj._<%=column.Name %>))  ;  | ||
|  |                 <%   | ||
|  |                     }  | ||
|  |                 %>   | ||
|  | 			}  | ||
|  | 	} | ||
|  | 	#endregion | ||
|  | } | ||
|  |    |