CSFrameworkV6旗舰版 - 保存单表数据字典基础资料自动生成流水号、序号


1、前端界面需要返回流水号、序号

前端需要返回流水号,调用 DAL.UpdateEx方法,在DAL层需要重写 SetDataSN :

C# 全选
 /// <summary>
 /// 生成流水号
 /// </summary>
 /// <param name="data"></param>
 /// <returns></returns>
 protected override string SetDataSN(MasterDataUpdate<sys_Reports> data)
 {
     //新增状态:生成流水号并返回给前端
     if (data.listAdded.Count > 0)
     {
         var sn = DocNoHelper.GetDataSN(_Database, "RPT", true, 6, "", _Loginer.Account);
         data.listAdded.First().ReportID = sn;//新增的记录设置序号
         return sn;
     }
     else
     {
         return data.listModified.First()?.ReportID;
     }
 }

 

 提示

开发框架默认给第一条新增的记录设置流水号。

 

dalBaseDataDic.UpdateEx方法

保存单表数据的扩展方法,该方法返回流水号或主键值。

C# 全选
  /// <summary>
  /// 提交数据扩展方法。
  /// </summary>
  /// <param name="data">更新的数据</param>
  /// <returns>返回流水号或主键值</returns>
  public virtual Models.SaveResult UpdateEx(MasterDataUpdate<T> data)
  {
      //调用模板方法设置自动序号
      var sn = this.SetDataSN(data);

      //调用默认保存方法
      bool success = this.Update(data);

      //返回操作结果
      return new Models.SaveResult
      {
          Success = success,//true:成功, false:失败
          DocNo = sn,//流水号或主键值
      };
  }

 

2、前端界面不返回流水号

DAL层重写 Update 方法:

C# 全选
/// <summary>
/// 保存数据,自动生成流水号、序号。
/// </summary>
/// <param name="data"></param>
/// <returns></returns>
public override bool Update(MasterDataUpdate<sys_Reports> data)
{
    //新增状态:生成流水号并返回给前端
    if (data.listAdded.Count > 0)
    {
        data.listAdded.ForEach(obj =>
        {
            if (obj.ReportID.IsEmpty())
            {
                var sn = DocNoHelper.GetDataSN(_Database, "RPT", true, 6, "", _Loginer.Account);
                obj.ReportID = sn;//新增的记录设置序号
            }
        });
    }

    return base.Update(data);
}

 

dalBaseDataDict.Update方法

保存单表数据标准方法,该方法返回true/false值。

C# 全选
/// <summary>
/// 保存数据
/// </summary>
/// <param name="data">数据</param>        
/// <returns></returns>
public virtual bool Update(MasterDataUpdate<T> data)
{
    return this.Update<T>(data, _Database, true);
}
版权声明:本文为开发框架文库发布内容,转载请附上原文出处连接
C/S框架网
评论列表

发表评论

评论内容
昵称:
关联文章

CSFrameworkV6旗舰 - 保存数据字典基础资料自动生成流水号序号
实例:数据字典自动生成流水号
CSFrameworkV6旗舰 - 基础资料窗体完整C#源码
数据字典基础资料窗体主键设置为自动生成流水号码解决方案
增值功能:数据字典自动生成流水号解决方案
CSFrameworkV6 - 支持基础资料表格批量编辑数据(IGridDataWatcher接口DevExpressGridViewWatcher使用)
数据字典窗体根据某个字段类型自动生成改类型的流水序号
数据字典重写SaveResultEx UpdateEx方法手动控制事务自动生成流水号
DAL - 数据字典数据访问层C#代码
代码生成器 CodeGenerator - 生成字典窗体 (数据管理界面)
BLL - 数据字典业务逻辑层C#代码
CSFrameworkV6旗舰-设计报表模板文件
CSFrameworkV6旗舰-账套数据库
C/S开发框架教程:使用基础资料(数据字典)的DAL层更新主从(或多数据
生成流水号,数字序号可以指定长度,SP下载
C/S Winform开发框架 - 基础资料窗体实现主从资料管理
一.数据字典窗体-基础资料窗体-C/S快速开发框架-标准V2.3
ERP系统 - 公共数据字典基础资料管理
CSFrameworkV6旗舰源码展示(C#,LINQ+EF)
C/S快速开发框架旗舰V5.1 - 数据字典窗体bllBaseDataDict类详解