Пример #1
0
        /// <summary>
        /// 得到一个对象实体
        /// </summary>
        public Model.department GetModel(int id)
        {
            StringBuilder strSql = new StringBuilder();
            StringBuilder str1   = new StringBuilder();

            Model.department model = new Model.department();
            //利用反射获得属性的所有公共属性
            PropertyInfo[] pros = model.GetType().GetProperties();
            foreach (PropertyInfo p in pros)
            {
                str1.Append(p.Name + ",");//拼接字段
            }
            strSql.Append("select top 1 " + str1.ToString().Trim(','));
            strSql.Append(" from MS_department");
            strSql.Append(" where de_id=@id");
            SqlParameter[] parameters =
            {
                new SqlParameter("@id", SqlDbType.Int, 4)
            };
            parameters[0].Value = id;
            DataTable dt = DbHelperSQL.Query(strSql.ToString(), parameters).Tables[0];

            if (dt.Rows.Count > 0)
            {
                return(DataRowToModel(dt.Rows[0]));
            }
            else
            {
                return(null);
            }
        }
Пример #2
0
        private void ShowInfo(int _id)
        {
            BLL.department   bll   = new BLL.department();
            Model.department model = bll.GetModel(_id);

            ddlParentId.SelectedValue = model.parent_id.ToString();
            txtSortId.Text            = model.sort_id.ToString();
            if (model.is_lock == 1)
            {
                cbIsLock.Checked = true;
            }

            txtTitle.Text = model.department_name;
            txtTitle.Attributes.Add("ajaxurl", "../../tools/admin_ajax.ashx?action=department_validate&old_name=" + Utils.UrlEncode(model.department_name));
            txtTitle.Focus(); //设置焦点,防止JS无法提交
            if (model.is_sys == 1)
            {
                ddlParentId.Enabled = false;
                txtTitle.ReadOnly   = true;
            }
            txtRemark.Text = model.remark;

            this.page = DTRequest.GetQueryInt("page", 1);
            //txtKeywords.Text = this.keywords;
            BLL.manager bllManager = new BLL.manager();
            this.rptList.DataSource = bllManager.GetList(this.pageSize, this.page, "department_id=" + _id + "", "add_time asc,id desc", out this.totalCount);
            this.rptList.DataBind();

            //绑定页码
            txtPageNum.Text = this.pageSize.ToString();
            string pageUrl = Utils.CombUrlTxt("department_edit.aspx", "page={0}&action={1}&id={2}", "__id__", "pagedepartment", _id.ToString());

            PageContent.InnerHtml = Utils.OutPageList(this.pageSize, this.page, this.totalCount, pageUrl, 8);
        }
Пример #3
0
        private bool DoAdd()
        {
            try
            {
                Model.department model = new Model.department();
                BLL.department   bll   = new BLL.department();

                model.department_name = txtTitle.Text.Trim();
                model.sort_id         = int.Parse(txtSortId.Text.Trim());
                model.is_lock         = 0;
                if (cbIsLock.Checked == true)
                {
                    model.is_lock = 1;
                }
                model.remark    = txtRemark.Text.Trim();
                model.parent_id = int.Parse(ddlParentId.SelectedValue);

                if (bll.Add(model) > 0)
                {
                    AddAdminLog(DTEnums.ActionEnum.Add.ToString(), "添加部门信息:" + model.department_name); //记录日志
                    return(true);
                }
            }
            catch
            {
                return(false);
            }
            return(false);
        }
Пример #4
0
        /// <summary>
        /// 更新一条数据
        /// </summary>
        public bool Update(Model.department model)
        {
            StringBuilder strSql = new StringBuilder();
            StringBuilder str1   = new StringBuilder();

            //利用反射获得属性的所有公共属性
            PropertyInfo[]      pros  = model.GetType().GetProperties();
            List <SqlParameter> paras = new List <SqlParameter>();

            strSql.Append("update MS_department set ");
            foreach (PropertyInfo pi in pros)
            {
                //如果不是主键则追加sql字符串
                if (!pi.Name.Equals("de_id"))
                {
                    //判断属性值是否为空
                    if (pi.GetValue(model, null) != null)
                    {
                        str1.Append(pi.Name + "=@" + pi.Name + ",");                          //声明参数
                        paras.Add(new SqlParameter("@" + pi.Name, pi.GetValue(model, null))); //对参数赋值
                    }
                }
            }
            strSql.Append(str1.ToString().Trim(','));
            strSql.Append(" where de_id=@id ");
            paras.Add(new SqlParameter("@id", model.de_id));
            return(DbHelperSQL.ExecuteSql(strSql.ToString(), paras.ToArray()) > 0);
        }
Пример #5
0
        /// <summary>
        /// 增加一条数据
        /// </summary>
        public bool Add(Model.department model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("insert into department(");
            strSql.Append("dep_id,dep_name,dep_principal_name,dep_principal_id)");
            strSql.Append(" values (");
            strSql.Append("@dep_id,@dep_name,@dep_principal_name,@dep_principal_id)");
            MySqlParameter[] parameters =
            {
                new MySqlParameter("@dep_id",             MySqlDbType.Int32,   32),
                new MySqlParameter("@dep_name",           MySqlDbType.VarChar, 64),
                new MySqlParameter("@dep_principal_name", MySqlDbType.VarChar, 64),
                new MySqlParameter("@dep_principal_id",   MySqlDbType.Int32, 32)
            };
            parameters[0].Value = model.dep_id;
            parameters[1].Value = model.dep_name;
            parameters[2].Value = model.dep_principal_name;
            parameters[3].Value = model.dep_principal_id;

            int rows = DbHelperMySQL.ExecuteSql(strSql.ToString(), parameters);

            if (rows > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
Пример #6
0
 private string DoEdit(int _id)
 {
     try
     {
         BLL.department   bll   = new BLL.department();
         Model.department model = bll.GetModel(_id);
         manager = GetAdminInfo();
         string content = string.Empty;
         model.de_type     = string.IsNullOrEmpty(ddltype.SelectedValue) ? (byte)0 : Utils.ObjToByte(ddltype.SelectedValue);
         model.de_parentid = int.Parse(ddlParentId.SelectedValue);
         if (model.de_name != txtTitle.Text.Trim())
         {
             content += "机构名称:" + model.de_name + "→<font color='red'>" + txtTitle.Text.Trim() + "</font><br/>";
         }
         model.de_name = txtTitle.Text.Trim();
         if (model.de_isUse != cbIsUse.Checked)
         {
             content += "状态:" + Common.BusinessDict.isUseStatus(1)[model.de_isUse] + "→<font color='red'>" + Common.BusinessDict.isUseStatus(1)[cbIsUse.Checked] + "</font>";
         }
         model.de_isUse = cbIsUse.Checked;
         model.de_sort  = Convert.ToInt32(txtSortId.Text.Trim());
         return(bll.Update(model, content, manager.user_name, manager.real_name));
     }
     catch (Exception e)
     {
         return(e.Message);
     }
 }
Пример #7
0
        /// <summary>
        /// 更新一条数据
        /// </summary>
        public bool Update(Model.department model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("update department set ");
            strSql.Append("dep_name=@dep_name,");
            strSql.Append("dep_principal_name=@dep_principal_name,");
            strSql.Append("dep_principal_id=@dep_principal_id");
            strSql.Append(" where dep_id=@dep_id ");
            MySqlParameter[] parameters =
            {
                new MySqlParameter("@dep_name",           MySqlDbType.VarChar, 64),
                new MySqlParameter("@dep_principal_name", MySqlDbType.VarChar, 64),
                new MySqlParameter("@dep_principal_id",   MySqlDbType.Int32,   32),
                new MySqlParameter("@dep_id",             MySqlDbType.Int32, 32)
            };
            parameters[0].Value = model.dep_name;
            parameters[1].Value = model.dep_principal_name;
            parameters[2].Value = model.dep_principal_id;
            parameters[3].Value = model.dep_id;

            int rows = DbHelperMySQL.ExecuteSql(strSql.ToString(), parameters);

            if (rows > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
Пример #8
0
        public bool Update(Model.department departmentmodel)
        {
            string tableName = typeof(department).Name;
            string contion   = string.Format("guid='{0}'", departmentmodel.guid);
            string sql       = string.Format("departmentName='{0}',parentDepartment='{1}',comment='{2}',delDepartment={3}", departmentmodel.departmentName, departmentmodel.parentDepartment, departmentmodel.comment, departmentmodel.delDepartment);

            return(ServerHelp.updateByWhere(tableName, _webIp, contion, sql));
        }
Пример #9
0
        /// <summary>
        /// 得到一个对象实体(重载,带事务)
        /// </summary>
        public Model.department GetModel(SqlConnection conn, SqlTransaction trans, int id)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("select  top 1 id,department_name,sort_id,is_lock,remark,parent_id,class_list,class_layer,is_sys,is_default");
            strSql.Append(" from li_departments");
            strSql.Append(" where id=@id");
            SqlParameter[] parameters =
            {
                new SqlParameter("@id", SqlDbType.Int, 4)
            };
            parameters[0].Value = id;

            Model.department model = new Model.department();
            DataSet          ds    = DbHelperSQL.Query(conn, trans, strSql.ToString(), parameters);

            if (ds.Tables[0].Rows.Count > 0)
            {
                if (ds.Tables[0].Rows[0]["id"].ToString() != "")
                {
                    model.id = int.Parse(ds.Tables[0].Rows[0]["id"].ToString());
                }
                model.department_name = ds.Tables[0].Rows[0]["department_name"].ToString();
                if (ds.Tables[0].Rows[0]["sort_id"].ToString() != "")
                {
                    model.sort_id = int.Parse(ds.Tables[0].Rows[0]["sort_id"].ToString());
                }
                if (ds.Tables[0].Rows[0]["is_lock"].ToString() != "")
                {
                    model.is_lock = int.Parse(ds.Tables[0].Rows[0]["is_lock"].ToString());
                }
                model.remark = ds.Tables[0].Rows[0]["remark"].ToString();
                if (ds.Tables[0].Rows[0]["parent_id"].ToString() != "")
                {
                    model.parent_id = int.Parse(ds.Tables[0].Rows[0]["parent_id"].ToString());
                }
                model.class_list = ds.Tables[0].Rows[0]["class_list"].ToString();
                if (ds.Tables[0].Rows[0]["class_layer"].ToString() != "")
                {
                    model.class_layer = int.Parse(ds.Tables[0].Rows[0]["class_layer"].ToString());
                }
                if (ds.Tables[0].Rows[0]["is_sys"].ToString() != "")
                {
                    model.is_sys = int.Parse(ds.Tables[0].Rows[0]["is_sys"].ToString());
                }
                if (ds.Tables[0].Rows[0]["is_default"].ToString() != "")
                {
                    model.is_default = int.Parse(ds.Tables[0].Rows[0]["is_default"].ToString());
                }
                return(model);
            }
            else
            {
                return(null);
            }
        }
Пример #10
0
        private void ShowInfo(int _id)
        {
            BLL.department   bll   = new BLL.department();
            Model.department model = bll.GetModel(_id);

            TreeBind();
            ddlParentId.SelectedValue = model.de_parentid.ToString();
            string _treeText = string.Empty, _treeid = string.Empty;

            bll.getDepartText(_id, out _treeText, out _treeid, out string area);
            labDepartText.Text = _treeText;
            initData();
            ddltype.SelectedValue = model.de_type.ToString();
            txtSortId.Text        = model.de_sort.ToString();
            txtTitle.Text         = model.de_name;
            txtSubTitle.Text      = model.de_subname;
            txtArea.Text          = model.de_area;
            isgroupDiv.Visible    = false;
            if (model.de_isGroup.Value)
            {
                labIsGroup.Text   = "是";
                cbIsGroup.Checked = true;
            }
            else
            {
                labIsGroup.Text   = "否";
                cbIsGroup.Checked = false;
            }
            if (model.de_isUse.Value)
            {
                cbIsUse.Checked = true;
            }
            else
            {
                cbIsUse.Checked = false;
            }
            if (model.de_type == 2 || model.de_type == 3)
            {
                dlsubtitle.Visible = false;
                dlarea.Visible     = false;
                dlgroup.Visible    = false;
            }
            txtSubTitle.Enabled = false;
            txtArea.Enabled     = false;
            ddlParentId.Enabled = false;
            ddltype.Enabled     = false;
        }
Пример #11
0
        /// <summary>
        /// 删除一条数据
        /// </summary>
        public string Delete(int id, Model.manager manager)
        {
            Model.department model = GetModel(id);
            if (model == null)
            {
                return("数据不存在");
            }
            if (hasEmployee(id))
            {
                return("该机构下存在员工,不能删除");
            }
            DataTable dt    = GetList(id, "");
            string    idstr = id.ToString() + ",";

            foreach (DataRow dr in dt.Rows)
            {
                idstr += dr["de_id"] + ",";
            }
            idstr = idstr.TrimEnd(',');
            if (dal.Delete(idstr))
            {
                if (model.de_type == 1)
                {
                    Dictionary <string, string> dic = new Dictionary <string, string>();
                    DataTable dtt = dal.GetList(0, "de_type=1", "de_sort asc,de_id asc").Tables[0];
                    if (dtt.Rows.Count > 0)
                    {
                        foreach (DataRow dr in dtt.Rows)
                        {
                            dic.Add(dr["de_area"].ToString(), dr["de_subname"].ToString());
                        }
                        CacheHelper.Remove(DTKeys.COMPANY_AREA);
                        CacheHelper.Insert(DTKeys.COMPANY_AREA, dic, 10);//重新写入缓存
                    }
                }
                Model.business_log logmodel = new Model.business_log();
                logmodel.ol_relateID    = id;
                logmodel.ol_title       = "删除部门岗位";
                logmodel.ol_content     = "机构ID:" + id + "<br/>机构名称:" + model.de_name;
                logmodel.ol_operateDate = DateTime.Now;
                new business_log().Add(DTEnums.ActionEnum.Delete.ToString(), logmodel, manager.user_name, manager.real_name);
                return("");
            }
            return("删除失败");
        }
Пример #12
0
 public bool Update(Model.department department)
 {
     try
     {
         string contion = string.Format(" where guid='{0}'", department.guid);
         string strsql  = string.Format("departmentName='{0}',parentDepartment='{1}',comment='{2}',delDepartment={3}", department.departmentName, department.parentDepartment, department.comment, department.delDepartment == true?1:0);
         string sql     = "update department set " + strsql + contion;
         var    ds      = SqliteHelper.ExecuteNonQuery(con, sql, CommandType.Text);
         if (Convert.ToInt32(ds) > 0)
         {
             return(true);
         }
         return(false);
     }
     catch
     {
         return(false);
     }
 }
Пример #13
0
 /// <summary>
 /// 将对象转换实体
 /// </summary>
 public Model.department DataRowToModel(DataRow row)
 {
     Model.department model = new Model.department();
     if (row != null)
     {
         //利用反射获得属性的所有公共属性
         Type modelType = model.GetType();
         for (int i = 0; i < row.Table.Columns.Count; i++)
         {
             //查找实体是否存在列表相同的公共属性
             PropertyInfo proInfo = modelType.GetProperty(row.Table.Columns[i].ColumnName);
             if (proInfo != null && row[i] != DBNull.Value)
             {
                 proInfo.SetValue(model, row[i], null);//用索引值设置属性值
             }
         }
     }
     return(model);
 }
Пример #14
0
        /// <summary>
        /// 增加一条数据
        /// </summary>
        public int Add(Model.department model)
        {
            StringBuilder strSql = new StringBuilder();
            StringBuilder str1   = new StringBuilder(); //数据字段
            StringBuilder str2   = new StringBuilder(); //数据参数

            //利用反射获得属性的所有公共属性
            PropertyInfo[]      pros  = model.GetType().GetProperties();
            List <SqlParameter> paras = new List <SqlParameter>();

            strSql.Append("insert into MS_department(");
            foreach (PropertyInfo pi in pros)
            {
                //如果不是主键则追加sql字符串
                if (!pi.Name.Equals("de_id"))
                {
                    //判断属性值是否为空
                    if (pi.GetValue(model, null) != null)
                    {
                        str1.Append(pi.Name + ",");                                           //拼接字段
                        str2.Append("@" + pi.Name + ",");                                     //声明参数
                        paras.Add(new SqlParameter("@" + pi.Name, pi.GetValue(model, null))); //对参数赋值
                    }
                }
            }
            strSql.Append(str1.ToString().Trim(','));
            strSql.Append(") values (");
            strSql.Append(str2.ToString().Trim(','));
            strSql.Append(") ");
            strSql.Append(";select @@IDENTITY;");
            object obj = DbHelperSQL.GetSingle(strSql.ToString(), paras.ToArray());

            if (obj == null)
            {
                return(0);
            }
            else
            {
                return(Convert.ToInt32(obj));
            }
        }
Пример #15
0
        /// <summary>
        /// 修改子节点的ID列表及深度(自身迭代)
        /// </summary>
        /// <param name="parent_id"></param>
        private void UpdateChilds(SqlConnection conn, SqlTransaction trans, int parent_id)
        {
            //查找父节点信息
            Model.department model = GetModel(conn, trans, parent_id);
            if (model != null)
            {
                //查找子节点
                string  strSql = "select id from li_departments where parent_id=" + parent_id;
                DataSet ds     = DbHelperSQL.Query(conn, trans, strSql); //带事务
                foreach (DataRow dr in ds.Tables[0].Rows)
                {
                    //修改子节点的ID列表及深度
                    int    id          = int.Parse(dr["id"].ToString());
                    string class_list  = model.class_list + id + ",";
                    int    class_layer = model.class_layer + 1;
                    DbHelperSQL.ExecuteSql(conn, trans, "update li_departments set class_list='" + class_list + "', class_layer=" + class_layer + " where id=" + id); //带事务

                    //调用自身迭代
                    this.UpdateChilds(conn, trans, id); //带事务
                }
            }
        }
Пример #16
0
 private string DoAdd()
 {
     try
     {
         Model.department model = new Model.department();
         BLL.department   bll   = new BLL.department();
         manager           = GetAdminInfo();
         model.de_type     = string.IsNullOrEmpty(ddltype.SelectedValue) ? (byte)0 : Utils.ObjToByte(ddltype.SelectedValue);
         model.de_parentid = int.Parse(ddlParentId.SelectedValue);
         model.de_isGroup  = cbIsGroup.Checked;
         model.de_name     = txtTitle.Text.Trim();
         model.de_subname  = txtSubTitle.Text.Trim();
         model.de_area     = txtArea.Text.Trim().ToUpper();
         model.de_sort     = Utils.ObjToInt(txtSortId.Text.Trim(), 0);
         model.de_isUse    = cbIsUse.Checked;
         return(bll.Add(model, manager.user_name, manager.real_name));
     }
     catch (Exception e)
     {
         return(e.Message);
     }
 }
Пример #17
0
 public bool Add(Model.department department)
 {
     try
     {
         string sql =
             string.Format
             (
                 "INSERT INTO department(departmentName,parentDepartment,delDepartment,comment,guid) VALUES('{0}','{1}','{2}','{3}','{4}') ;select last_insert_rowid()",
                 department.departmentName, department.parentDepartment, department.delDepartment == true?1:0, department.comment, department.guid
             );
         var ds = SqliteHelper.ExecuteScalar(con, sql, CommandType.Text);
         if (Convert.ToInt32(ds) > 0)
         {
             return(true);
         }
         return(false);
     }
     catch
     {
         return(false);
     }
 }
Пример #18
0
 /// <summary>
 /// 更新一条数据
 /// </summary>
 public string Update(Model.department model, string content, string username, string realname)
 {
     if (string.IsNullOrEmpty(model.de_name))
     {
         return("请填写机构全称");
     }
     if (Exists(model.de_name, model.de_parentid.Value, model.de_id.Value))
     {
         return("同一个上级机构下不能存在相同的机构");
     }
     if (dal.Update(model))
     {
         Model.business_log logmodel = new Model.business_log();
         logmodel.ol_relateID    = model.de_id.Value;
         logmodel.ol_title       = "编辑部门岗位";
         logmodel.ol_content     = content;
         logmodel.ol_operateDate = DateTime.Now;
         new business_log().Add(DTEnums.ActionEnum.Edit.ToString(), logmodel, username, realname);
         return("");
     }
     return("编辑失败");
 }
Пример #19
0
        private bool DoEdit(int _id)
        {
            try
            {
                BLL.department   bll   = new BLL.department();
                Model.department model = bll.GetModel(_id);

                model.department_name = txtTitle.Text.Trim();
                model.sort_id         = int.Parse(txtSortId.Text.Trim());
                model.is_lock         = 0;
                if (cbIsLock.Checked == true)
                {
                    model.is_lock = 1;
                }
                model.remark = txtRemark.Text.Trim();
                if (model.is_sys == 0)
                {
                    int parentId = int.Parse(ddlParentId.SelectedValue);
                    //如果选择的父ID不是自己,则更改
                    if (parentId != model.id)
                    {
                        model.parent_id = parentId;
                    }
                }

                if (bll.Update(model))
                {
                    AddAdminLog(DTEnums.ActionEnum.Add.ToString(), "修改部门信息:" + model.department_name); //记录日志
                    return(true);
                }
            }
            catch
            {
                return(false);
            }
            return(false);
        }
Пример #20
0
 /// <summary>
 /// 得到一个对象实体
 /// </summary>
 public Model.department DataRowToModel(DataRow row)
 {
     Model.department model = new Model.department();
     if (row != null)
     {
         if (row["dep_id"] != null && row["dep_id"].ToString() != "")
         {
             model.dep_id = int.Parse(row["dep_id"].ToString());
         }
         if (row["dep_name"] != null)
         {
             model.dep_name = row["dep_name"].ToString();
         }
         if (row["dep_principal_name"] != null)
         {
             model.dep_principal_name = row["dep_principal_name"].ToString();
         }
         if (row["dep_principal_id"] != null && row["dep_principal_id"].ToString() != "")
         {
             model.dep_principal_id = int.Parse(row["dep_principal_id"].ToString());
         }
     }
     return(model);
 }
Пример #21
0
        /// <summary>
        /// 得到一个对象实体
        /// </summary>
        public Model.department GetModel(int dep_id)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("select dep_id,dep_name,dep_principal_name,dep_principal_id from department ");
            strSql.Append(" where dep_id=@dep_id ");
            MySqlParameter[] parameters =
            {
                new MySqlParameter("@dep_id", MySqlDbType.Int32, 32)
            };
            parameters[0].Value = dep_id;

            Model.department model = new Model.department();
            DataSet          ds    = DbHelperMySQL.Query(strSql.ToString(), parameters);

            if (ds.Tables[0].Rows.Count > 0)
            {
                return(DataRowToModel(ds.Tables[0].Rows[0]));
            }
            else
            {
                return(null);
            }
        }
Пример #22
0
        /// <summary>
        /// 增加一条数据
        /// </summary>
        public int Add(Model.department model)
        {
            using (SqlConnection conn = new SqlConnection(DbHelperSQL.connectionString))
            {
                conn.Open();
                using (SqlTransaction trans = conn.BeginTransaction())
                {
                    try
                    {
                        StringBuilder strSql = new StringBuilder();
                        strSql.Append("insert into li_departments(");
                        strSql.Append("department_name,sort_id,is_lock,remark,parent_id,class_list,class_layer,is_sys,is_default)");
                        strSql.Append(" values (");
                        strSql.Append("@department_name,@sort_id,@is_lock,@remark,@parent_id,@class_list,@class_layer,@is_sys,@is_default)");
                        strSql.Append(";select @@IDENTITY");
                        SqlParameter[] parameters =
                        {
                            new SqlParameter("@department_name", SqlDbType.NVarChar, 100),
                            new SqlParameter("@sort_id",         SqlDbType.Int,        4),
                            new SqlParameter("@is_lock",         SqlDbType.TinyInt,    1),
                            new SqlParameter("@remark",          SqlDbType.NVarChar, 500),
                            new SqlParameter("@parent_id",       SqlDbType.Int,        4),
                            new SqlParameter("@class_list",      SqlDbType.NVarChar, 500),
                            new SqlParameter("@class_layer",     SqlDbType.Int,        4),
                            new SqlParameter("@is_sys",          SqlDbType.TinyInt,    1),
                            new SqlParameter("@is_default",      SqlDbType.Int, 4)
                        };
                        parameters[0].Value = model.department_name;
                        parameters[1].Value = model.sort_id;
                        parameters[2].Value = model.is_lock;
                        parameters[3].Value = model.remark;
                        parameters[4].Value = model.parent_id;
                        parameters[5].Value = model.class_list;
                        parameters[6].Value = model.class_layer;
                        parameters[7].Value = model.is_sys;
                        parameters[8].Value = model.is_default;
                        object obj = DbHelperSQL.GetSingle(conn, trans, strSql.ToString(), parameters); //带事务

                        model.id = Convert.ToInt32(obj);                                                //得到刚插入的新ID
                        if (model.parent_id > 0)
                        {
                            Model.department model2 = GetModel(conn, trans, model.parent_id); //带事务
                            model.class_list  = model2.class_list + model.id + ",";
                            model.class_layer = model2.class_layer + 1;
                        }
                        else
                        {
                            model.class_list  = "," + model.id + ",";
                            model.class_layer = 1;
                        }
                        //修改节点列表和深度
                        DbHelperSQL.ExecuteSql(conn, trans, "update li_departments set class_list='" + model.class_list + "', class_layer=" + model.class_layer + " where id=" + model.id); //带事务
                        //如无异常则提交事务
                        trans.Commit();
                    }
                    catch
                    {
                        trans.Rollback();
                        return(0);
                    }
                }
            }
            return(model.id);
        }
Пример #23
0
 /// <summary>
 /// 增加一条数据
 /// </summary>
 public int Add(Model.department model)
 {
     return(dal.Add(model));
 }
Пример #24
0
 /// <summary>
 /// 更新一条数据
 /// </summary>
 public bool Update(Model.department model)
 {
     return(dal.Update(model));
 }
Пример #25
0
        /// <summary>
        /// 增加一条数据
        /// </summary>
        public string Add(Model.department model, string username, string realname)
        {
            if (model.de_type == 0)
            {
                return("请选择机构类别");
            }
            if (string.IsNullOrEmpty(model.de_name))
            {
                return("请填写机构全称");
            }
            if (Exists(model.de_name, model.de_parentid.Value))
            {
                return("同一个上级机构下不能存在相同的机构");
            }
            if (model.de_isGroup.Value && ExistsGroup())
            {
                return("已经存在总部的机构,不能再添加总部机构");
            }
            if (model.de_type == 1)
            {
                if (string.IsNullOrEmpty(model.de_subname))
                {
                    return("请填写公司简称");
                }
                if (string.IsNullOrEmpty(model.de_area))
                {
                    return("请填写公司简码");
                }
            }
            else
            {
                model.de_subname = "";
                model.de_area    = "";
            }
            Model.department depart = GetModel(model.de_parentid.Value);
            if (depart != null)
            {
                if (model.de_type == 1)//机构类别为公司时
                {
                    if (!depart.de_isGroup.Value)
                    {
                        return("上级机构为总公司时才能添加公司");
                    }
                }
                else
                {
                    if (model.de_parentid == 0)
                    {
                        return("机构类别为部门或岗位时,上级机构必填");
                    }
                    else
                    {
                        model.de_area = depart.de_area;
                    }
                }
            }
            int id = dal.Add(model);

            if (id > 0)
            {
                if (model.de_type == 1)
                {
                    Dictionary <string, string> dic = new Dictionary <string, string>();
                    DataTable dt = dal.GetList(0, "de_type=1", "de_sort asc,de_id asc").Tables[0];
                    if (dt.Rows.Count > 0)
                    {
                        foreach (DataRow dr in dt.Rows)
                        {
                            dic.Add(dr["de_area"].ToString(), dr["de_subname"].ToString());
                        }
                        CacheHelper.Remove(DTKeys.COMPANY_AREA);
                        CacheHelper.Insert(DTKeys.COMPANY_AREA, dic, 10);//重新写入缓存
                    }
                }

                Model.business_log logmodel = new Model.business_log();
                logmodel.ol_relateID    = id;
                logmodel.ol_title       = "添加部门岗位";
                logmodel.ol_content     = "机构类别:" + Common.BusinessDict.departType()[model.de_type.Value] + "<br/>上级机构ID:" + model.de_parentid + "<br/>机构全称:" + model.de_name + "<br/>机构简称:" + model.de_subname + "<br/>名称简码:" + model.de_area + "<br/>是否总部:" + (model.de_isGroup.Value ? "是" : "否") + "";
                logmodel.ol_operateDate = DateTime.Now;
                new business_log().Add(DTEnums.ActionEnum.Add.ToString(), logmodel, username, realname);
                return("");
            }
            return("添加失败");
        }
Пример #26
0
 public bool Add(Model.department department)
 {
     return(ServerHelp.addSingleInfoNotReturnID <Model.department>(department, _webIp));
 }
Пример #27
0
 /// <summary>
 /// 更新一条数据
 /// </summary>
 public bool Update(Model.department model)
 {
     Model.department oldModel = GetModel(model.id); //旧的数据
     using (SqlConnection conn = new SqlConnection(DbHelperSQL.connectionString))
     {
         conn.Open();
         using (SqlTransaction trans = conn.BeginTransaction())
         {
             try
             {
                 //先判断选中的父节点是否被包含
                 if (IsContainNode(model.id, model.parent_id))
                 {
                     //查找旧父节点数据
                     string class_list  = "," + model.parent_id + ",";
                     int    class_layer = 1;
                     if (oldModel.parent_id > 0)
                     {
                         Model.department oldParentModel = GetModel(conn, trans, oldModel.parent_id); //带事务
                         class_list  = oldParentModel.class_list + model.parent_id + ",";
                         class_layer = oldParentModel.class_layer + 1;
                     }
                     //先提升选中的父节点
                     DbHelperSQL.ExecuteSql(conn, trans, "update li_departments set parent_id=" + oldModel.parent_id + ",class_list='" + class_list + "', class_layer=" + class_layer + " where id=" + model.parent_id); //带事务
                     UpdateChilds(conn, trans, model.parent_id);                                                                                                                                                         //带事务
                 }
                 //更新子节点
                 if (model.parent_id > 0)
                 {
                     Model.department model2 = GetModel(conn, trans, model.parent_id); //带事务
                     model.class_list  = model2.class_list + model.id + ",";
                     model.class_layer = model2.class_layer + 1;
                 }
                 else
                 {
                     model.class_list  = "," + model.id + ",";
                     model.class_layer = 1;
                 }
                 StringBuilder strSql = new StringBuilder();
                 strSql.Append("update li_departments set ");
                 strSql.Append("department_name=@department_name,");
                 strSql.Append("sort_id=@sort_id,");
                 strSql.Append("is_lock=@is_lock,");
                 strSql.Append("remark=@remark,");
                 strSql.Append("parent_id=@parent_id,");
                 strSql.Append("class_list=@class_list,");
                 strSql.Append("class_layer=@class_layer,");
                 strSql.Append("is_sys=@is_sys,");
                 strSql.Append("is_default=@is_default");
                 strSql.Append(" where id=@id");
                 SqlParameter[] parameters =
                 {
                     new SqlParameter("@department_name", SqlDbType.NVarChar, 100),
                     new SqlParameter("@sort_id",         SqlDbType.Int,        4),
                     new SqlParameter("@is_lock",         SqlDbType.TinyInt,    1),
                     new SqlParameter("@remark",          SqlDbType.NVarChar, 500),
                     new SqlParameter("@parent_id",       SqlDbType.Int,        4),
                     new SqlParameter("@class_list",      SqlDbType.NVarChar, 500),
                     new SqlParameter("@class_layer",     SqlDbType.Int,        4),
                     new SqlParameter("@is_sys",          SqlDbType.TinyInt,    1),
                     new SqlParameter("@is_default",      SqlDbType.Int,        4),
                     new SqlParameter("@id",              SqlDbType.Int, 4)
                 };
                 parameters[0].Value = model.department_name;
                 parameters[1].Value = model.sort_id;
                 parameters[2].Value = model.is_lock;
                 parameters[3].Value = model.remark;
                 parameters[4].Value = model.parent_id;
                 parameters[5].Value = model.class_list;
                 parameters[6].Value = model.class_layer;
                 parameters[7].Value = model.is_sys;
                 parameters[8].Value = model.is_default;
                 parameters[9].Value = model.id;
                 DbHelperSQL.ExecuteSql(conn, trans, strSql.ToString(), parameters);
                 //更新子节点
                 UpdateChilds(conn, trans, model.id);
                 //如无发生错误则提交事务
                 trans.Commit();
             }
             catch
             {
                 trans.Rollback();
                 return(false);
             }
         }
     }
     return(true);
 }