using System; using System.Collections.Generic; using System.Data; using SuperMap.RealEstate.ServiceModel; using Business = SuperMap.RealEstate.Contract.Running.Business; using HZQR.Common; namespace EShang.Common.GeneralMethod { /// /// 附件表相关方法 /// 2023/10/12 11:42:45自动生成 /// public class ATTACHMENTHelper { #region 获取附件表列表 /// /// 获取附件表列表 /// /// 事务管理器 /// 查询结果总数 /// 查询条件对象 public static List GetATTACHMENTList(Transaction transaction, ref int TotalCount, Model.SearchModel searchModel) { List ATTACHMENTList = new List(); string WhereSQL = "", RowFilterSQL = ""; if (searchModel.SearchParameter != null) { WhereSQL = OperationDataHelper.GetWhereSQL(searchModel.SearchParameter, searchModel.QueryType); if (WhereSQL != "") { WhereSQL = "WHERE " + WhereSQL; } } DataTable dtATTACHMENT = new Business.ATTACHMENT(transaction).FillDataTable(WhereSQL); //增加组合查询条件 if (searchModel.keyWord != null && !string.IsNullOrWhiteSpace(searchModel.keyWord.Key)) { foreach (string KeyName in searchModel.keyWord.Key.Split(',')) { RowFilterSQL += (RowFilterSQL == "" ? "" : " or ") + KeyName + " like '%" + searchModel.keyWord.Value + "%'"; } } if (RowFilterSQL != "") { dtATTACHMENT.DefaultView.RowFilter = RowFilterSQL; } //排序: dtATTACHMENT.DefaultView.Sort = searchModel.SortStr; dtATTACHMENT = dtATTACHMENT.DefaultView.ToTable(); //获取查询结果总记录条数 TotalCount = dtATTACHMENT.Rows.Count; //根据传入的页码和每页显示条数返回结果 dtATTACHMENT = CommonHelper.GetDataTableWithPageSize(dtATTACHMENT, searchModel.PageSize, searchModel.PageIndex); foreach (DataRow drATTACHMENT in dtATTACHMENT.Rows) { Model.ATTACHMENTModel attachmentModel = new Model.ATTACHMENTModel(); //绑定用户表数据对象 BindDataRowToModel(drATTACHMENT, attachmentModel); ATTACHMENTList.Add(attachmentModel); } return ATTACHMENTList; } #region 绑定model /// /// 绑定model /// /// datarow数据源 /// model对象 public static void BindDataRowToModel(DataRow drATTACHMENT, Model.ATTACHMENTModel attachmentModel) { if (drATTACHMENT["ATTACHMENT_ID"].ToString() != "") { attachmentModel.ATTACHMENT_ID = drATTACHMENT["ATTACHMENT_ID"].TryParseToInt(); //附件内码 } attachmentModel.ATTACHMENT_NAME = drATTACHMENT["ATTACHMENT_NAME"].ToString(); //附件名称 attachmentModel.ATTACHMENT_URL = drATTACHMENT["ATTACHMENT_URL"].ToString(); //附件地址 attachmentModel.ATTACHMENT_PATH = drATTACHMENT["ATTACHMENT_PATH"].ToString(); //附件相对路径 if (drATTACHMENT["TABLE_ID"].ToString() != "") { attachmentModel.TABLE_ID = drATTACHMENT["TABLE_ID"].TryParseToInt(); //数据表主键值 } attachmentModel.TABLE_NAME = drATTACHMENT["TABLE_NAME"].ToString(); //数据表名称 if (drATTACHMENT["STAFF_ID"].ToString() != "") { attachmentModel.STAFF_ID = drATTACHMENT["STAFF_ID"].TryParseToInt(); //操作人内码 } attachmentModel.STAFF_NAME = drATTACHMENT["STAFF_NAME"].ToString(); //操作人员 if (drATTACHMENT["OPERATE_DATE"].ToString() != "") { attachmentModel.OPERATE_DATE = drATTACHMENT["OPERATE_DATE"].TryParseToLong(); //操作时间 } } #endregion #endregion #region 获取附件表明细 /// /// 获取附件表明细 /// /// 事务管理器 /// 附件表内码 public static Model.ATTACHMENTModel GetATTACHMENTDetail(Transaction transaction, int ATTACHMENTId) { Model.ATTACHMENTModel attachmentModel = new Model.ATTACHMENTModel(); Business.ATTACHMENT _ATTACHMENT = new Business.ATTACHMENT(transaction); _ATTACHMENT.ATTACHMENT_ID = ATTACHMENTId; if (_ATTACHMENT.Select()) { attachmentModel.ATTACHMENT_ID = _ATTACHMENT.ATTACHMENT_ID; //附件内码 attachmentModel.ATTACHMENT_NAME = _ATTACHMENT.ATTACHMENT_NAME; //附件名称 attachmentModel.ATTACHMENT_URL = _ATTACHMENT.ATTACHMENT_URL; //附件地址 attachmentModel.ATTACHMENT_PATH = _ATTACHMENT.ATTACHMENT_PATH; //附件相对路径 attachmentModel.TABLE_ID = _ATTACHMENT.TABLE_ID; //数据表主键值 attachmentModel.TABLE_NAME = _ATTACHMENT.TABLE_NAME; //数据表名称 attachmentModel.STAFF_ID = _ATTACHMENT.STAFF_ID; //操作人内码 attachmentModel.STAFF_NAME = _ATTACHMENT.STAFF_NAME; //操作人员 attachmentModel.OPERATE_DATE = _ATTACHMENT.OPERATE_DATE; //操作时间 } return attachmentModel; } #endregion #region 同步附件表 /// /// 赋值附件表数据对象 /// /// 事务管理器 /// 附件表数据对象 public static bool SynchroATTACHMENT(Transaction transaction, Model.ATTACHMENTModel attachmentModel) { bool SynchroFlag = true; Business.ATTACHMENT _ATTACHMENT = new Business.ATTACHMENT(transaction); if (attachmentModel.ATTACHMENT_ID != null) { _ATTACHMENT.ATTACHMENT_ID = attachmentModel.ATTACHMENT_ID; if (_ATTACHMENT.Select()) { SynchroModelToObject(_ATTACHMENT, attachmentModel); _ATTACHMENT.Update(); } else { SynchroFlag = false; } } else { SynchroModelToObject(_ATTACHMENT, attachmentModel); _ATTACHMENT.Insert(); } return SynchroFlag; } #region 赋值附件表数据对象 /// /// 赋值附件表数据对象 /// /// /// public static void SynchroModelToObject(Business.ATTACHMENT _ATTACHMENT, Model.ATTACHMENTModel attachmentModel) { _ATTACHMENT.ATTACHMENT_NAME = attachmentModel.ATTACHMENT_NAME; //附件名称 _ATTACHMENT.ATTACHMENT_URL = attachmentModel.ATTACHMENT_URL; //附件地址 _ATTACHMENT.ATTACHMENT_PATH = attachmentModel.ATTACHMENT_PATH; //附件相对路径 _ATTACHMENT.TABLE_ID = attachmentModel.TABLE_ID; //数据表主键值 _ATTACHMENT.TABLE_NAME = attachmentModel.TABLE_NAME; //数据表名称 _ATTACHMENT.STAFF_ID = attachmentModel.STAFF_ID; //操作人内码 _ATTACHMENT.STAFF_NAME = attachmentModel.STAFF_NAME; //操作人员 _ATTACHMENT.OPERATE_DATE = attachmentModel.OPERATE_DATE; //操作时间 } #endregion #endregion #region 删除附件表 /// /// 删除附件表 /// /// 事务管理器 /// 附件表内码 public static bool DeleteATTACHMENT(Transaction transaction, int? ATTACHMENTId) { bool DeleteFlag = false; if (ATTACHMENTId != null) { Business.ATTACHMENT _ATTACHMENT = new Business.ATTACHMENT(transaction); _ATTACHMENT.ATTACHMENT_ID = ATTACHMENTId; if (_ATTACHMENT.Select()) { _ATTACHMENT.ATTACHMENT_STATE = 0; DeleteFlag = _ATTACHMENT.Update(); } } return DeleteFlag; } #endregion } }