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
|
|
}
|
|
|