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_SCXCBFZ_Model> getListModel(PEST_REPORT_SCXCBFZ_SW sw)
        {
            var       result = new List <PEST_REPORT_SCXCBFZ_Model>();
            DataTable dt     = BaseDT.PEST_REPORT_SCXCBFZ.getDT(sw);

            for (int i = 0; i < dt.Rows.Count; i++)
            {
                PEST_REPORT_SCXCBFZ_Model m = new PEST_REPORT_SCXCBFZ_Model();
                m.PEST_REPORT_SCXCBFZID = dt.Rows[i]["PEST_REPORT_SCXCBFZID"].ToString();
                m.BYORGNO           = dt.Rows[i]["BYORGNO"].ToString();
                m.SCXCBFZYEAR       = dt.Rows[i]["SCXCBFZYEAR"].ToString();
                m.SCXCBFZAREA       = dt.Rows[i]["SCXCBFZAREA"].ToString();
                m.SCXCBFZPLANAREA   = dt.Rows[i]["SCXCBFZPLANAREA"].ToString();
                m.SCXCBFZFINISHAREA = dt.Rows[i]["SCXCBFZFINISHAREA"].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_SCXCBFZ_Model getModel(PEST_REPORT_SCXCBFZ_SW sw)
        {
            DataTable dt = BaseDT.PEST_REPORT_SCXCBFZ.getDT(sw);
            PEST_REPORT_SCXCBFZ_Model m = new PEST_REPORT_SCXCBFZ_Model();

            if (dt.Rows.Count > 0)
            {
                int i = 0;
                //数据库表字段
                m.PEST_REPORT_SCXCBFZID = dt.Rows[i]["PEST_REPORT_SCXCBFZID"].ToString();
                m.BYORGNO           = dt.Rows[i]["BYORGNO"].ToString();
                m.SCXCBFZYEAR       = dt.Rows[i]["SCXCBFZYEAR"].ToString();
                m.SCXCBFZAREA       = dt.Rows[i]["SCXCBFZAREA"].ToString();
                m.SCXCBFZPLANAREA   = dt.Rows[i]["SCXCBFZPLANAREA"].ToString();
                m.SCXCBFZFINISHAREA = dt.Rows[i]["SCXCBFZFINISHAREA"].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_SCXCBFZ_Model m)
        {
            List <string> sqllist = new List <string>();

            string[] arrBYORGNO           = m.BYORGNO.Split(',');
            string[] arrSCXCBFZAREA       = m.SCXCBFZAREA.Split(',');
            string[] arrSCXCBFZPLANAREA   = m.SCXCBFZPLANAREA.Split(',');
            string[] arrSCXCBFZFINISHAREA = m.SCXCBFZFINISHAREA.Split(',');
            if (arrBYORGNO.Length - 1 > 0)
            {
                #region 先删除
                List <string> sqldeletelist = new List <string>();

                #region 先删除防治明显表
                StringBuilder sbDeleteFZMX = new StringBuilder();
                sbDeleteFZMX.AppendFormat("Delete From PEST_REPORT_SCXCBFZMX where  1=1 ");
                sbDeleteFZMX.AppendFormat(" AND PEST_REPORT_SCXCBFZID IN (");
                sbDeleteFZMX.AppendFormat(" Select PEST_REPORT_SCXCBFZID From PEST_REPORT_SCXCBFZ WHERE 1=1 ");
                sbDeleteFZMX.AppendFormat(" AND SCXCBFZYEAR='{0}' ", ClsSql.EncodeSql(m.SCXCBFZYEAR));
                if (m.TopORGNO.Substring(4, 11) == "00000000000") //所有市
                {
                    sbDeleteFZMX.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") //所有县
                {
                    sbDeleteFZMX.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") //所有乡镇
                {
                    sbDeleteFZMX.AppendFormat(" and SUBSTRING(BYORGNO,1,9)='{0}'", m.TopORGNO.Substring(0, 9));
                }
                else if (m.TopORGNO.Substring(9, 6) != "000000") //所有村
                {
                    sbDeleteFZMX.AppendFormat(" and SUBSTRING(BYORGNO,1,12)='{0}'", m.TopORGNO.Substring(0, 12));
                }
                else
                {
                    sbDeleteFZMX.AppendFormat(" and BYORGNO='{0}'", m.TopORGNO);
                }
                sbDeleteFZMX.AppendFormat(")");
                sqldeletelist.Add(sbDeleteFZMX.ToString());
                #endregion

                #region 再删除防治表
                StringBuilder sbDeleteFZ = new StringBuilder();
                sbDeleteFZ.AppendFormat("Delete From PEST_REPORT_SCXCBFZ where 1=1");
                sbDeleteFZ.AppendFormat(" AND SCXCBFZYEAR='{0}'", m.SCXCBFZYEAR);
                if (m.TopORGNO.Substring(4, 11) == "00000000000") //所有市
                {
                    sbDeleteFZMX.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") //所有县
                {
                    sbDeleteFZMX.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") //所有乡镇
                {
                    sbDeleteFZMX.AppendFormat(" AND SUBSTRING(BYORGNO,1,9)='{0}'", m.TopORGNO.Substring(0, 9));
                }
                else if (m.TopORGNO.Substring(9, 6) != "000000") //所有村
                {
                    sbDeleteFZMX.AppendFormat(" AND SUBSTRING(BYORGNO,1,12)='{0}'", m.TopORGNO.Substring(0, 12));
                }
                else
                {
                    sbDeleteFZMX.AppendFormat(" AND BYORGNO='{0}'", m.TopORGNO);
                }
                sqldeletelist.Add(sbDeleteFZ.ToString());
                #endregion

                DataBaseClass.ExecuteSqlTran(sqldeletelist);
                #endregion

                #region 再更新
                StringBuilder sbInsert = new StringBuilder();
                sbInsert.AppendFormat("INSERT INTO PEST_REPORT_SCXCBFZ(BYORGNO, SCXCBFZYEAR, SCXCBFZAREA, SCXCBFZPLANAREA, SCXCBFZFINISHAREA)");
                for (int i = 0; i < arrBYORGNO.Length - 1; i++)
                {
                    #region 更新
                    if (isExists(new PEST_REPORT_SCXCBFZ_SW {
                        BYORGNO = arrBYORGNO[i], SCXCBFZYEAR = m.SCXCBFZYEAR
                    }))
                    {
                        StringBuilder sbUpdate = new StringBuilder();
                        sbUpdate.AppendFormat("UPDATE PEST_REPORT_SCXCBFZ SET ");
                        sbUpdate.AppendFormat(" SCXCBFZAREA={0},", ClsSql.saveNullField(arrSCXCBFZAREA[i]));
                        sbUpdate.AppendFormat(" SCXCBFZPLANAREA={0},", ClsSql.saveNullField(arrSCXCBFZPLANAREA[i]));
                        sbUpdate.AppendFormat(" SCXCBFZFINISHAREA={0}", ClsSql.saveNullField(arrSCXCBFZFINISHAREA[i]));
                        sbUpdate.AppendFormat(" where BYORGNO= '{0}'", ClsSql.EncodeSql(arrBYORGNO[i]));
                        sbUpdate.AppendFormat(" and SCXCBFZYEAR= '{0}'", ClsSql.EncodeSql(m.SCXCBFZYEAR));
                        sqllist.Add(sbUpdate.ToString());
                    }
                    #endregion

                    #region 添加
                    else
                    {
                        sbInsert.AppendFormat(" select '{0}'", ClsSql.EncodeSql(arrBYORGNO[i]));
                        sbInsert.AppendFormat(",'{0}'", ClsSql.EncodeSql(m.SCXCBFZYEAR));
                        sbInsert.AppendFormat(",{0}", ClsSql.saveNullField(arrSCXCBFZAREA[i]));;
                        sbInsert.AppendFormat(",{0}", ClsSql.saveNullField(arrSCXCBFZPLANAREA[i]));
                        sbInsert.AppendFormat(",{0}", ClsSql.saveNullField(arrSCXCBFZFINISHAREA[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_SCXCBFZ_Model m)
 {
     return(BaseDT.PEST_REPORT_SCXCBFZ.Save(m));
 }