Esempio n. 1
0
        /// <summary>
        /// 获取数据列表
        /// </summary>
        /// <param name="sw">参见模型PEST_REPORT_HAPPEN_SW</param>
        /// <returns>参见模型PEST_REPORT_HAPPEN_Model</returns>
        public static IEnumerable <PEST_REPORT_HARM_Model> getListModel(PEST_REPORT_HARM_SW sw)
        {
            var       result = new List <PEST_REPORT_HARM_Model>();
            DataTable dt     = BaseDT.PEST_REPORT_HARM.getDT(sw);

            for (int i = 0; i < dt.Rows.Count; i++)
            {
                PEST_REPORT_HARM_Model m = new PEST_REPORT_HARM_Model();
                m.PEST_REPORT_HARMID   = dt.Rows[i]["PEST_REPORT_HARMID"].ToString();
                m.BYORGNO              = dt.Rows[i]["BYORGNO"].ToString();
                m.HAPPENYEAR           = dt.Rows[i]["HAPPENYEAR"].ToString();
                m.HAPPENMONTH          = dt.Rows[i]["HAPPENMONTH"].ToString();
                m.PESTBYCODE           = dt.Rows[i]["PESTBYCODE"].ToString();
                m.DISASTERAREA         = dt.Rows[i]["DISASTERAREA"].ToString();
                m.FORECASTDISASTERAREA = dt.Rows[i]["FORECASTDISASTERAREA"].ToString();
                m.DIEPLATECOUNT        = dt.Rows[i]["DIEPLATECOUNT"].ToString();
                result.Add(m);
            }
            dt.Clear();
            dt.Dispose();
            return(result);
        }
Esempio n. 2
0
        /// <summary>
        /// 获取单条记录
        /// </summary>
        /// <param name="sw">参见模型</param>
        /// <returns>参见模型</returns>
        public static PEST_REPORT_HARM_Model getModel(PEST_REPORT_HARM_SW sw)
        {
            DataTable dt             = BaseDT.PEST_REPORT_HARM.getDT(sw);
            PEST_REPORT_HARM_Model m = new PEST_REPORT_HARM_Model();

            if (dt.Rows.Count > 0)
            {
                int i = 0;
                //数据库表字段
                m.PEST_REPORT_HARMID   = dt.Rows[i]["PEST_REPORT_HARMID"].ToString();
                m.BYORGNO              = dt.Rows[i]["BYORGNO"].ToString();
                m.HAPPENYEAR           = dt.Rows[i]["HAPPENYEAR"].ToString();
                m.HAPPENMONTH          = dt.Rows[i]["HAPPENMONTH"].ToString();
                m.PESTBYCODE           = dt.Rows[i]["PESTBYCODE"].ToString();
                m.DISASTERAREA         = dt.Rows[i]["DISASTERAREA"].ToString();
                m.FORECASTDISASTERAREA = dt.Rows[i]["FORECASTDISASTERAREA"].ToString();
                m.DIEPLATECOUNT        = dt.Rows[i]["DIEPLATECOUNT"].ToString();
                //扩充字段
            }
            dt.Clear();
            dt.Dispose();
            return(m);
        }
Esempio n. 3
0
        /// <summary>
        /// 保存
        /// </summary>
        /// <param name="m">参见模型</param>
        /// <returns>参见模型</returns>
        public static Message Save(PEST_REPORT_HARM_Model m)
        {
            List <string> sqllist = new List <string>();

            string[] arrBYORGNO              = m.BYORGNO.Split(',');
            string[] arrDISASTERAREA         = m.DISASTERAREA.Split(',');
            string[] arrFORECASTDISASTERAREA = m.FORECASTDISASTERAREA.Split(',');
            string[] arrDIEPLATECOUNT        = m.DIEPLATECOUNT.Split(',');
            if (arrBYORGNO.Length - 1 > 0)
            {
                #region 先删除
                StringBuilder sbDelete = new StringBuilder();
                sbDelete.AppendFormat("delete from PEST_REPORT_HARM where 1=1");
                sbDelete.AppendFormat(" and PESTBYCODE='{0}'", m.PESTBYCODE);
                sbDelete.AppendFormat(" and HAPPENYEAR='{0}'", m.HAPPENYEAR);
                sbDelete.AppendFormat(" and HAPPENMONTH='{0}'", m.HAPPENMONTH);
                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 再更新
                StringBuilder sbInsert = new StringBuilder();
                sbInsert.AppendFormat("INSERT INTO PEST_REPORT_HARM(BYORGNO, HAPPENYEAR, HAPPENMONTH, PESTBYCODE, DISASTERAREA, FORECASTDISASTERAREA, DIEPLATECOUNT)");
                for (int i = 0; i < arrBYORGNO.Length - 1; i++)
                {
                    #region 更新
                    if (isExists(new PEST_REPORT_HARM_SW {
                        BYORGNO = arrBYORGNO[i], HAPPENYEAR = m.HAPPENYEAR, HAPPENMONTH = m.HAPPENMONTH, PESTBYCODE = m.PESTBYCODE
                    }))
                    {
                        StringBuilder sbUpdate = new StringBuilder();
                        sbUpdate.AppendFormat("UPDATE PEST_REPORT_HARM SET ");
                        sbUpdate.AppendFormat(" DISASTERAREA={0},", ClsSql.saveNullField(arrDISASTERAREA[i]));
                        sbUpdate.AppendFormat(" FORECASTDISASTERAREA={0},", ClsSql.saveNullField(arrFORECASTDISASTERAREA[i]));
                        sbUpdate.AppendFormat(" DIEPLATECOUNT={0},", ClsSql.saveNullField(arrDIEPLATECOUNT[i]));
                        sbUpdate.AppendFormat(" where BYORGNO= '{0}'", ClsSql.EncodeSql(arrBYORGNO[i]));
                        sbUpdate.AppendFormat(" and HAPPENYEAR= '{0}'", ClsSql.EncodeSql(m.HAPPENYEAR));
                        sbUpdate.AppendFormat(" and HAPPENMONTH= '{0}'", ClsSql.EncodeSql(m.HAPPENMONTH));
                        sbUpdate.AppendFormat(" and PESTBYCODE= '{0}'", ClsSql.EncodeSql(m.PESTBYCODE));
                        sqllist.Add(sbUpdate.ToString());
                    }
                    #endregion

                    #region 添加
                    else
                    {
                        sbInsert.AppendFormat(" select '{0}'", ClsSql.EncodeSql(arrBYORGNO[i]));
                        sbInsert.AppendFormat(",'{0}'", ClsSql.EncodeSql(m.HAPPENYEAR));
                        sbInsert.AppendFormat(",'{0}'", ClsSql.EncodeSql(m.HAPPENMONTH));
                        sbInsert.AppendFormat(",'{0}'", ClsSql.EncodeSql(m.PESTBYCODE));
                        sbInsert.AppendFormat(",{0}", ClsSql.saveNullField(arrDISASTERAREA[i]));
                        sbInsert.AppendFormat(",{0}", ClsSql.saveNullField(arrFORECASTDISASTERAREA[i]));
                        sbInsert.AppendFormat(",{0}", ClsSql.saveNullField(arrDIEPLATECOUNT[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, "保存失败,事物回滚机制!", ""));
            }
        }
Esempio n. 4
0
 /// <summary>
 /// 保存
 /// </summary>
 /// <param name="m">参见模型</param>
 /// <returns>参见模型</returns>
 public static Message Manager(PEST_REPORT_HARM_Model m)
 {
     return(BaseDT.PEST_REPORT_HARM.Save(m));
 }