using System;
|
using System.Text;
|
using System.Data;
|
using System.Data.Common;
|
using CSFramework.DB;
|
using CSFrameworkV5.Models;
|
using CSFrameworkV5.Common;
|
using CSFrameworkV5.Core;
|
using CSFrameworkV5.DataAccess;
|
using CSFrameworkV5.Core.CodeGenerator;
|
using CSFrameworkV5.Interfaces;
|
|
/*===================================================================
|
* 程序说明: yhj_womcaa的数据访问层源码
|
* 作者资料: 孙中吕
|
* 创建日期: 2024/07/19 02:36:20
|
* 最后修改: 2024/07/19 02:36:20
|
*
|
* 注: 本文件由代码生成器(Code Generator)自动生成。
|
* (此源码文件请放置在 YourProject.DataAccess 模块)
|
* 版权所有 Copyright 2006~2024, C/S框架网(www.cscode.net)
|
*===================================================================*/
|
|
namespace CSFrameworkV5.DataAccess
|
{
|
/// <summary>
|
/// DAL数据层:dalyhj_womcaa
|
/// </summary>
|
public class dalyhj_womcaa : dalBaseBusiness
|
{
|
/// <summary>
|
/// 构造器
|
/// </summary>
|
/// <param name="loginer">当前登录用户</param>
|
public dalyhj_womcaa(Loginer loginer): base(loginer)
|
{
|
_SummaryKeyName = yhj_womcaa.__KeyName; //主表的主键字段
|
_SummaryTableName = yhj_womcaa.__TableName;//主表表名
|
_UpdateSummaryKeyMode = UpdateKeyMode.None;
|
_ReplaceString = false;
|
}
|
|
/// <summary>
|
/// 根据表名获取该表的SQL命令生成器
|
/// </summary>
|
/// <param name="tableName">表名</param>
|
/// <returns></returns>
|
protected override IGenerateSqlCommand CreateSqlGenerator(DataTable table)
|
{
|
Type ORM = null;
|
if (table.TableName == yhj_womcaa.__TableName) ORM = typeof(yhj_womcaa);//主表ORM对应关系
|
if (table.TableName == yhj_womcab.__TableName) ORM = typeof(yhj_womcab); //明细表ORM对应关系
|
|
if (ORM == null) throw new Exception(table.TableName + "表没有ORM模型,请生成此表的Model类!");
|
return new GenerateSqlCmdByTableFields(ORM, table, this.GeneratorFactory);
|
}
|
|
|
/// <summary>
|
/// 查询功能,获取主表数据。此方法的参数仅供参考
|
/// </summary>
|
public DataTable Query(Queryyhj_womcaa P)
|
{
|
CommandHelper sp = _Database.CreateSqlProc("usp_yhj_womcaa_Query");
|
sp.AddParam("caa001", DbType.String,P.caa001);
|
sp.AddParam("caa015", DbType.String,P.caa015);
|
sp.AddParam("ppbom", DbType.String,P.ppbom);
|
sp.AddParam("cj", DbType.String,P.cj);
|
return _Database.GetTable(sp.Command, yhj_womcaa.__TableName);
|
}
|
|
/// <summary>
|
/// 获取报表数据
|
/// </summary>
|
/// <returns></returns>
|
public DataSet QueryReportData(Queryyhj_womcaa P)
|
{
|
throw new NotImplementedException("QueryReportData");
|
}
|
|
//实现接口提供的基础查询方法
|
public DataTable Query(QueryBusinessBase P)
|
{
|
return this.Query(P as Queryyhj_womcaa);
|
}
|
|
//实现接口提供的基础查询方法
|
public DataSet QueryReportData(QueryBusinessBase P)
|
{
|
return this.QueryReportData(P as Queryyhj_womcaa);
|
}
|
|
/// <summary>
|
/// 获取一张业务单据的数据,包括一条主表记录及(多张)明细表
|
/// </summary>
|
/// <param name="docNo">单据号码</param>
|
/// <returns></returns>
|
public System.Data.DataSet GetDataByKey(string docNo)
|
{
|
CommandHelper cmd = _Database.CreateSqlProc("usp_yhj_womcaa_GetDataByKey");
|
cmd.AddParam("DocNo", DbType.String, docNo.Trim());
|
DataSet ds = _Database.GetDataSet(cmd.Command);
|
ds.Tables[0].TableName = yhj_womcaa.__TableName;
|
//明细表
|
ds.Tables[1].TableName =yhj_womcab.__TableName;
|
return ds;
|
}
|
|
/// <summary>
|
///删除一张单据,包括删除主表及明细表
|
/// </summary>
|
public bool Delete(string docNo)
|
{
|
CommandHelper cmd = _Database.CreateSqlProc("usp_yhj_womcaa_Delete");
|
cmd.AddParam("DocNo", DbType.String, docNo.Trim());
|
int i = _Database.ExecuteCommand(cmd.Command);
|
return i != 0;
|
}
|
|
/// <summary>
|
//保存数据
|
/// </summary>
|
public override SaveResult Update(DataSet data)
|
{
|
//
|
//在这里,可以在保存数据前针对参数data做处理,比如:设置默认值。
|
//在这里,可以手工启动事务关联更新其它表的数据,参考:dalPO.Update方法。
|
//
|
//调用基类的方法保存数据
|
return base.Update(data);
|
}
|
|
/// <summary>
|
//获取单据流水号码
|
/// </summary>
|
protected override string GetNumber(DbTransaction tran)
|
{
|
//1.格式:字头+年年月月+当月4位序号,如:PO15010001, 与GetDocNo方法相同
|
//string docNo = DocNoTool.GetNumber(_Database,tran, "");//注意修改流水号字头!
|
|
//2.格式:字头+年年月月+当月4位序号,如:PO15010001
|
string docNo = DocNoTool.GetDocNo(_Database,"");//注意修改流水号字头!
|
|
//3.格式:XX0000001~N
|
//string docNo = DocNoTool.GetDataSN(_Database,tran, "", true, 6);
|
|
return docNo;//业务单据号码,默认格式2
|
}
|
|
}//public class
|
}//namespace
|