using Genersoft.Fms.Center.Pub.Com;
using Genersoft.Platform.AdpBizIntegration.Entity;
using Genersoft.Platform.AppFramework.Service;
using Genersoft.Platform.Core.Common;
using Genersoft.Platform.Core.DataAccess;
using Genersoft.Platform.Core.Error;
using Genersoft.Platform.Engine.DataAccess.ClientSPI;
using Genersoft.Platform.Resource.Metadata.Common;
using Genersoft.Platform.Resource.Metadata.DataModel;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Genersoft.SZYD.SXTB
{
class SXQDTBFormDataAccess :FMSFormDataAccess
{
#region 卡片表单

#region 新增前

/// <summary>
/// 重写新增前检查
/// 注意此方法是在新增后点击保存时触发
/// </summary>
/// <param name="dataModel">数据模型</param>
/// <param name="data">表单数据</param>
protected override void BeforeAddObjectInTransaction(GspDataModel dataModel, DataSet data)
{
string errorMessage = string.Empty;
if (!CheckBeforeSave(dataModel, data, out errorMessage))
{
throw new GSPException(errorMessage, ErrorLevel.Info);
}
base.BeforeAddObjectInTransaction(dataModel, data);
}

#endregion

#region 新增后

/// <summary>
/// 重写新增后
/// 注意此方法是在新增后点击保存时触发
/// </summary>
/// <param name="dataModel">数据模型</param>
/// <param name="data">表单数据</param>
protected override void AfterAddObjectInTransaction(GspDataModel dataModel, DataSet data)
{
base.AfterAddObjectInTransaction(dataModel, data);
}

#endregion

#region 保存前

/// <summary>
/// 重写保存前
/// 注意新增后的保存不会触发,会触发BeforeAddObjectInTransaction
/// </summary>
/// <param name="dataModel">数据模型</param>
/// <param name="data">表单数据</param>
protected override void BeforeSaveObjectInTransaction(GspDataModel dataModel, DataSet data)
{
string errorMessage = string.Empty;
if (!CheckBeforeSave(dataModel, data, out errorMessage))
{
throw new GSPException(errorMessage, ErrorLevel.Info);
}
base.BeforeSaveObjectInTransaction(dataModel, data);
}

#endregion

#region 保存后

/// <summary>
/// 重写保存后
/// 注意新增后的保存不会触发,会触发AfterAddObjectInTransaction
/// </summary>
/// <param name="dataModel">数据模型</param>
/// <param name="data">表单数据</param>
protected override void AfterSaveObjectInTransaction(GspDataModel dataModel, DataSet data)
{
base.AfterSaveObjectInTransaction(dataModel, data);
}

#endregion

#region 删除前

/// <summary>
/// 重写删除前
/// </summary>
/// <param name="dataModel">数据模型</param>
/// <param name="data">模型数据</param>
/// <param name="dataID">内码</param>
protected override void BeforeRemoveObjectInTransaction(GspDataModel dataModel, DataSet data, object dataID)
{
base.BeforeRemoveObjectInTransaction(dataModel, data, dataID);
}

#endregion

#region 删除后

/// <summary>
/// 重写删除后
/// </summary>
/// <param name="dataModel">数据模型</param>
/// <param name="data">模型数据</param>
/// <param name="dataID">内码</param>
protected override void AfterRemoveObjectInTransaction(GspDataModel dataModel, DataSet data, object dataID)
{
base.AfterRemoveObjectInTransaction(dataModel, data, dataID);
}

#endregion

#region 保存前检查

/// <summary>
/// 保存前检查
/// </summary>
/// <param name="dataModel">数据模型</param>
/// <param name="data">模型数据</param>
/// <param name="errorMessage">错误信息</param>
/// <returns>检查结果</returns>
private bool CheckBeforeSave(GspDataModel dataModel, DataSet data, out string errorMessage)
{
errorMessage = string.Empty;
return true;

}

#endregion

#endregion

#region 列表表单

#region 列表取数

/// <summary>
/// 列表表单取数扩展
/// </summary>
/// <param name="dataModelID">数据模型ID</param>
/// <param name="filter">表单中加的过滤条件</param>
/// <param name="queryType">查询类型</param>
/// <param name="policy">策略</param>
/// <param name="otherParam">其他参数</param>
/// <param name="dataContext">表单传值</param>
/// <returns></returns>
public override DataSet GetObjectsXmlByOtherParam3(string dataModelID, ref GSPFilter filter, DataQueryType queryType, IQueryFilterPolicy policy, WebSolutionContext otherParam, JObject dataContext)
{
//解析出表单中加的过滤条件
List<Express> lstCondition = ExpressParser.ParserExpression(filter.FilterCondition);

return base.GetObjectsXmlByOtherParam3(dataModelID, ref filter, queryType, policy, otherParam, dataContext);
}

#endregion

#region 批量删除前

/// <summary>
/// 重写批量删除前
/// </summary>
/// <param name="dataModel">数据模型</param>
/// <param name="data">模型数据</param>
/// <param name="condition">过滤条件</param>
protected override void BeforeRemoveObjectsInTransaction(GspDataModel dataModel, DataSet data, string condition)
{
base.BeforeRemoveObjectsInTransaction(dataModel, data, condition);
}

#endregion

#region 批量删除后

/// <summary>
/// 重写批量删除后
/// </summary>
/// <param name="dataModel">数据模型</param>
/// <param name="data">模型数据</param>
/// <param name="condition">过滤条件</param>
protected override void AfterRemoveObjectsInTransaction(GspDataModel dataModel, DataSet data, string condition)
{
base.AfterRemoveObjectsInTransaction(dataModel, data, condition);
}

#endregion

#endregion
}
}

??????FormDataAccess的更多相关文章

随机推荐

  1. WPF学习笔记-数据采集与监控项目02-主界面(页面切换,抽屉侧滑栏效果)

    以下是视频学习笔记 https://www.bilibili.com/video/BV1gq4y1D76d?p=28 1,页面切换和命令绑定 效果 实现思路 2,弹出抽屉侧滑窗的效果 [2.1]效果 ...

  2. 深度剖析生产工厂用ERP系统进行管理有哪些优势

    对于生产制造企业而言,生产现场管理永远是其得以健康发展的重要环节.现场是产品开发和生产的场所,企业要降低成本.按期交付产品,以及产品质量要达到客户所期望的要求和水平,这一切都要在现场实现,企业也正是从 ...

  3. selenium+python的网站爬虫

    爬取网站听起来就是程序员的标配,之前一直没有时间学一下,最近有空学习一下顺便记录一下 爬取网站实际上就是利用计算机模拟人的操作来对网站的前端进行访问,而各大浏览器也给计算机提供了访问的接口,也就是浏览 ...

  4. ArrayList学习笔记

    目录 1.继承关系 1.1.Serializable 标记性接口 1.2.Cloneable 标记性接口 1.3.RandomAccess 标记性接口 2.属性 3.构造方法 3.1.无参构造方法-A ...

  5. 记录web面经

    1. npm版本号含义 例如: 2.3.1 (分别表示: 大版本,小版本, 补丁版本)大版本号: 大版本更新,功能添加,向下不兼容.小版本号:功能新增,向下兼容.补丁版本号: 修复bug.~符号含义: ...

  6. rt_raster_to_gdal: Could not load the output GDAL driver

    问题记录:postgis 安装后不能执行以下语句,查询入库的 tif 文件 SELECT ST_AsGDALRaster(rast, 'GTiff') As rastjpg FROM radar_da ...

  7. 力扣53. 最大子数组和(dp)

    给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和. 子数组 是数组中的一个连续部分. 示例 1: 输入:nums = [-2,1,-3,4,-1 ...

  8. 安装使用反编译工具ILSPY

    一.ILSPY简介1.1.ILSPY介绍 ILSPY是一款开源.免费的.且适用于.NET平台反编译[C#语言编写的程序和库(.dll)内容]工具:可以集成在Visual Studio 开发工具中,能够 ...

  9. notepad++设置

    1.背景颜色 [设置]-[语言格式设置] 选择主题:Solarized-light

  10. Windows下使用Fortran读取HDF5文件

    需要用Fortran读取HDF5格式的GPM IMERG卫星降水文件,在已经安装HDF5库(参见VS2019+ Intel Fortran (oneAPI)+HDF5库的安装+测试 - chinago ...