/// <summary> /// 获取数据列表 /// </summary> /// <param name="sw">参见模型T_SYS_PEST_OBSERVEAREA_SW</param> /// <returns>参见模型T_SYS_PEST_OBSERVEAREA_Model</returns> public static IEnumerable <PEST_OBSERVEAREA_Model> getListModel(PEST_OBSERVEAREA_SW sw) { var result = new List <PEST_OBSERVEAREA_Model>(); DataTable dt = BaseDT.PEST_OBSERVEAREA.getDT(sw); for (int i = 0; i < dt.Rows.Count; i++) { PEST_OBSERVEAREA_Model m = new PEST_OBSERVEAREA_Model(); m.PEST_OBSERVEAREAID = dt.Rows[i]["PEST_OBSERVEAREAID"].ToString(); m.BYORGNO = dt.Rows[i]["BYORGNO"].ToString(); m.OBSERVEAREA = dt.Rows[i]["OBSERVEAREA"].ToString(); m.OBSERVEYEAR = dt.Rows[i]["OBSERVEYEAR"].ToString(); result.Add(m); } dt.Clear(); dt.Dispose(); return(result); }
/// <summary> /// 获取单条记录 /// </summary> /// <param name="sw">参见模型</param> /// <returns>参见模型</returns> public static PEST_OBSERVEAREA_Model getModel(PEST_OBSERVEAREA_SW sw) { DataTable dt = BaseDT.PEST_OBSERVEAREA.getDT(sw); PEST_OBSERVEAREA_Model m = new PEST_OBSERVEAREA_Model(); if (dt.Rows.Count > 0) { int i = 0; //数据库表字段 m.PEST_OBSERVEAREAID = dt.Rows[i]["PEST_OBSERVEAREAID"].ToString(); m.BYORGNO = dt.Rows[i]["BYORGNO"].ToString(); m.OBSERVEAREA = dt.Rows[i]["OBSERVEAREA"].ToString(); m.OBSERVEYEAR = dt.Rows[i]["OBSERVEYEAR"].ToString(); //扩充字段 } dt.Clear(); dt.Dispose(); return(m); }
/// <summary> /// 保存 /// </summary> /// <param name="m">参见模型</param> /// <returns>参见模型</returns> public static Message Save(PEST_OBSERVEAREA_Model m) { List <string> sqllist = new List <string>(); string[] arrBYORGNO = m.BYORGNO.Split(','); string[] arrOBSERVEAREA = m.OBSERVEAREA.Split(','); #region 先删除 StringBuilder sbDelete = new StringBuilder(); sbDelete.AppendFormat(" Delete From PEST_OBSERVEAREA WHERE 1=1"); sbDelete.AppendFormat(" AND OBSERVEYEAR='{0}'", ClsSql.EncodeSql(m.OBSERVEYEAR)); if (m.TopORGNO.Substring(4, 11) == "00000000000") //所有市 { sbDelete.AppendFormat(" and SUBSTRING(BYORGNO,1,4)='{0}'", m.TopORGNO.Substring(0, 4)); } else if (m.TopORGNO.Substring(6, 9) == "000000000" && m.TopORGNO.Substring(4, 11) != "00000000000") //所有县 { sbDelete.AppendFormat(" and SUBSTRING(BYORGNO,1,6)='{0}'", m.TopORGNO.Substring(0, 6)); } else if (m.TopORGNO.Substring(9, 6) == "000000" && m.TopORGNO.Substring(6, 9) != "000000000") //所有乡镇 { sbDelete.AppendFormat(" and SUBSTRING(BYORGNO,1,9)='{0}'", m.TopORGNO.Substring(0, 9)); } else if (m.TopORGNO.Substring(9, 6) != "000000") //所有村 { sbDelete.AppendFormat(" and SUBSTRING(BYORGNO,1,12)='{0}'", m.TopORGNO.Substring(0, 12)); } else { sbDelete.AppendFormat(" and BYORGNO='{0}'", m.TopORGNO); } DataBaseClass.ExeSql(sbDelete.ToString()); #endregion #region 再更新 if (arrBYORGNO.Length - 1 > 0) { StringBuilder sbInsert = new StringBuilder(); sbInsert.AppendFormat("INSERT INTO PEST_OBSERVEAREA(BYORGNO,OBSERVEYEAR, OBSERVEAREA)"); for (int i = 0; i < arrBYORGNO.Length - 1; i++) { if (!string.IsNullOrEmpty(arrOBSERVEAREA[i])) { #region 更新 if (isExists(new PEST_OBSERVEAREA_SW { BYORGNO = arrBYORGNO[i], OBSERVEYEAR = m.OBSERVEYEAR })) { StringBuilder sbUpdate = new StringBuilder(); sbUpdate.AppendFormat("UPDATE PEST_OBSERVEAREA SET "); sbUpdate.AppendFormat(" OBSERVEAREA='{0}'", ClsSql.EncodeSql(arrOBSERVEAREA[i])); sbUpdate.AppendFormat(" where BYORGNO= '{0}'", ClsSql.EncodeSql(arrBYORGNO[i])); sbUpdate.AppendFormat(" and OBSERVEYEAR= '{0}'", ClsSql.EncodeSql(m.OBSERVEYEAR)); sqllist.Add(sbUpdate.ToString()); } #endregion #region 添加 else { sbInsert.AppendFormat(" select '{0}'", ClsSql.EncodeSql(arrBYORGNO[i])); sbInsert.AppendFormat(",'{0}'", ClsSql.EncodeSql(m.OBSERVEYEAR)); sbInsert.AppendFormat(",'{0}'", ClsSql.EncodeSql(arrOBSERVEAREA[i])); sbInsert.AppendFormat(" UNION ALL "); } #endregion } } string insertStr = sbInsert.ToString(); if (insertStr.Contains(" UNION ALL ")) { insertStr = insertStr.Substring(0, insertStr.Length - 10); sqllist.Add(insertStr); } } #endregion var y = DataBaseClass.ExecuteSqlTran(sqllist); if (y >= 0) { return(new Message(true, "保存成功!", "")); } else { return(new Message(false, "保存失败,事物回滚机制!", "")); } }
/// <summary> /// 保存 /// </summary> /// <param name="m">参见模型</param> /// <returns>参见模型</returns> public static Message Manager(PEST_OBSERVEAREA_Model m) { return(BaseDT.PEST_OBSERVEAREA.Save(m)); }