Exemple #1
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            TrasenClasses.DatabaseAccess.RelationalDatabase database = FrmMdiMain.Database;
            try
            {
                database.BeginTransaction();

                foreach (DataRow dr in datatableReleasor.Rows)
                {
                    if (dr.RowState == DataRowState.Unchanged)
                    {
                        continue;
                    }
                    int employeeId         = Convert.ToInt32(dr["EMPLOYEE_ID"]);
                    int allow_delete_all   = Convert.IsDBNull(dr["ALLOW_DELETE_ALL"])? 0 : Convert.ToInt32(dr["ALLOW_DELETE_ALL"]);
                    int allow_edit_all     = Convert.IsDBNull(dr["ALLOW_EDIT_ALL"]) ? 0: Convert.ToInt32(dr["ALLOW_EDIT_ALL"]);
                    int releasor_allserver = Convert.IsDBNull(dr["RELEASE_ALLSERVER"]) ? 0: Convert.ToInt32(dr["RELEASE_ALLSERVER"]);

                    DataRow r   = database.GetDataRow("select * from pub_message_releasor where employee_id=" + employeeId);
                    string  sql = "";
                    if (r != null)
                    {
                        sql = "update pub_message_releasor set allow_delete_all = " + allow_delete_all + " ,allow_edit_all = " + allow_edit_all + " ,release_allserver = " + releasor_allserver + " where employee_id=" + employeeId;
                        database.DoCommand(sql);

                        Guid djid;
                        ts_HospData_Share.ts_update_log log = new ts_HospData_Share.ts_update_log();
                        log.Save_log(ts_HospData_Share.czlx.jc_基础数据单表修改, "更改消息管理人员权限", "pub_message_releasor", "employee_id", employeeId.ToString(),
                                     FrmMdiMain.Jgbm, -999, "", out djid, database);
                    }
                    else
                    {
                        sql = "insert into pub_message_releasor(employee_id,allow_delete_all,allow_edit_all,release_allserver) values(" + employeeId + "," + allow_delete_all + "," + allow_edit_all + "," + releasor_allserver + ")";
                        database.DoCommand(sql);

                        Guid djid;
                        ts_HospData_Share.ts_update_log log = new ts_HospData_Share.ts_update_log();
                        log.Save_log(ts_HospData_Share.czlx.jc_基础数据单表修改, "增加消息管理人员", "pub_message_releasor", "employee_id", employeeId.ToString(),
                                     FrmMdiMain.Jgbm, -999, "", out djid, database);
                    }
                }

                database.CommitTransaction();

                MessageBox.Show("保存成功", "", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            catch (Exception err)
            {
                database.RollbackTransaction();
                MessageBox.Show(err.Message, "", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Exemple #2
0
        private bool SaveMessage()
        {
            try
            {
                string sql = "insert into pub_message(title,content,releasedate,invalidday,releaseor) values (@title,@content,getdate(),@invalidday,@releaseor);";
                sql += "set @msgId = scope_identity()";

                IDbCommand cmd = dataBase.GetCommand();
                cmd.CommandText = sql;
                cmd.CommandType = CommandType.Text;

                IDataParameter parameter;
                #region 保存消息内容
                parameter = cmd.CreateParameter();
                parameter.ParameterName = "@title";
                parameter.Value         = this.txtMsgTitle.Text;
                cmd.Parameters.Add(parameter);

                parameter = cmd.CreateParameter();
                parameter.ParameterName = "@content";
                parameter.Value         = GetRTF();
                cmd.Parameters.Add(parameter);

                parameter = cmd.CreateParameter();
                parameter.ParameterName = "@invalidday";
                parameter.Value         = Convert.ToInt32(txtDay.Text);
                cmd.Parameters.Add(parameter);

                parameter = cmd.CreateParameter();
                parameter.ParameterName = "@releaseor";
                parameter.Value         = currentUserId;
                cmd.Parameters.Add(parameter);

                parameter = cmd.CreateParameter();
                parameter.ParameterName = "@msgId";
                parameter.Value         = 0;
                parameter.Direction     = ParameterDirection.Output;
                cmd.Parameters.Add(parameter);
                #endregion
                int ret = cmd.ExecuteNonQuery();
                if (ret == 0)
                {
                    MessageBox.Show("保存通知内容失败!", "", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return(false);
                }
                else
                {
                    int newMsgId = Convert.ToInt32(((IDataParameter)cmd.Parameters["@msgId"]).Value);
                    //保存发布对象
                    int releaseType = 0;
                    if (rdDept.Checked)
                    {
                        releaseType = 1;
                    }
                    else if (rdEmployee.Checked)
                    {
                        releaseType = 2;
                    }
                    try
                    {
                        dataBase.BeginTransaction();

                        foreach (ListViewItem item in lvwReciveList.Items)
                        {
                            int reciver_id = Convert.ToInt32(item.Tag);
                            sql = "insert into pub_message_recivelist(msgid,reciver_type,reciver_id) values (" + newMsgId + "," + releaseType + "," + reciver_id + ")";
                            dataBase.DoCommand(sql);
                        }
                        dataBase.CommitTransaction();
                        return(true);
                    }
                    catch
                    {
                        dataBase.RollbackTransaction();
                        MessageBox.Show("消息通知保存完成但发布不成功!", "", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        return(false);
                    }
                }
            }
            catch (Exception err)
            {
                MessageBox.Show("保存通知内容发生错误!\n" + err.Message, "", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return(false);
            }
        }