⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ucdictylzzgwh.cs

📁 基于C/S的医疗卫生管理系统
💻 CS
字号:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Text;
using System.Windows.Forms;

using Sybase.DataWindow;

using Qeb.Support;
using Qeb.Support.Common;
using Qeb.DBProxy;
using Qeb.Control;

namespace Qeb.GY
{
    public partial class UCDictYlzZgWh : Qeb.GY.UCDictBase
    {
        private string m_RetrieveParam = "";

        public UCDictYlzZgWh()
        {
            InitializeComponent();
        }

        private void UCDictYlzXx_Load(object sender, EventArgs e)
        {
            //初始化数据窗口
            this.dwYlzXx.LibraryList = PBL.GyPbl;
            this.dwYlzXx.DataWindowObject = GyDataObjects.D_Gy_ZgXx;
            this.dwYlzXx.InitUI();

            //设置数据窗口为只读
            try
            {
                dwYlzXx.SetProperty("DataWindow.ReadOnly", "Yes");
            }
            catch (Exception ex)
            {
                MessageBox.Show("设置数据窗口只读属性发生异常:" + ex.Message);
            }

            //初始化按钮
            btnAdd.Enabled = true;//增加
            btnStop.Text = "移除";
            btnStop.Enabled = true;//删除
            btnModify.Enabled = false;//修改
            btnSave.Enabled = false;//保存
            btnRefresh.Enabled = true;//刷新、取消

            btnPrint.Enabled = false;//打印
            btnExport.Enabled = false;//导出
            btnClose.Enabled = true;//关闭
            //订阅消息         
            this.SubscribeEvent(MsgEventDefine.Dict_RefreshWithParam);
        }

        #region 消息处理
        protected override void ProcessUIMessage(string messageId, UIMessageEventArgs e)
        {
            if (messageId == MsgEventDefine.Dict_RefreshWithParam)
            {
                FDictBase.TagInfo tagInfo;
                try
                {
                    tagInfo = (FDictBase.TagInfo)e.Values;
                    if (tagInfo.ControlName != "UCDictYlzZgWh")
                        return;
                }
                catch (Exception ex)
                {
                    MessageBox.Show("处理刷新数据消息发生异常(转换参数出错):" + ex.Message, MsgTitle.Error);
                    return;
                }

                if (m_RetrieveParam != tagInfo.RefreshParam)
                {
                    m_RetrieveParam = tagInfo.RefreshParam;
                    this.RetrieveData(tagInfo.RefreshParam);
                }
            }
        }
        #endregion

        //检索数据
        private void RetrieveData(string YlzId)
        {
            try
            {
                DbProxyClient proxy = App.DbProxy;
                proxy.Clear();
                proxy.AddRetrieveParam("p_lyzid", YlzId);
                proxy.Retrieve(this.dwYlzXx);
            }
            catch (Exception ex)
            {
                MessageBox.Show("检索数据出错:" + ex.Message, MsgTitle.Error);
            }
            this.dwYlzXx.SetSort("zgid");
            this.dwYlzXx.Sort();
        }

        //添加
        private void btnAdd_Click(object sender, EventArgs e)
        {
            DbProxyClient proxy = App.DbProxy;
            string ylzId = "";
            string zgId = "";
            int rowIndex = dwYlzXx.InsertRow(0);
            dwYlzXx.SetRow(rowIndex);
            dwYlzXx.ScrollToRow(rowIndex);
            dwYlzXx.SetColumn("zgid");
            FSelect fSelect2 = null;
            try
            {
                fSelect2 = new FSelect();
                fSelect2.SetTitle("职工信息");
                string sql = "SELECT * FROM GY_ZGXX WHERE ZT=0";
                fSelect2.SetDataSource(sql, true);
                fSelect2.AddShowColumn("ZGID", "职工ID", 200);
                fSelect2.AddShowColumn("GH", "职工工号", 200);
                fSelect2.AddShowColumn("ZGXM", "职工姓名", 400);
                fSelect2.AddMultiReturnColumn("ZGID,GH,ZGXM");

                DialogResult dResult = fSelect2.ShowDialog(this);
                if (dResult == DialogResult.OK)
                {
                    string[] retValue = fSelect2.ReturnValue;
                    ylzId = m_RetrieveParam.ToString();
                    zgId = retValue[0];
                    dwYlzXx.SetItemString(rowIndex, "zgid", zgId);
                    dwYlzXx.SetItemString(rowIndex, "gh", retValue[1]);
                    dwYlzXx.SetItemString(rowIndex, "zgxm", retValue[2]);
                    dwYlzXx.SetItemString(rowIndex, "ylzid", ylzId);
                    try
                    {
                        string mysql = "SELECT COUNT(*) FROM GY_YLZCY WHERE YLZID='" + ylzId + "' AND ZGID='" + zgId + "'";
                        proxy.Clear();
                        string ret = proxy.ExecuteScalar(mysql);
                        if (!string.IsNullOrEmpty(ret) && int.Parse(ret) > 0)
                        {
                            MessageBox.Show("该职工在该医疗组里已经存在!", MsgTitle.Prompt);
                            this.RetrieveData(m_RetrieveParam);
                            return;
                        }
                        else
                        {
                            proxy.AddDataWindow(this.dwYlzXx);
                            proxy.Update();
                            this.RetrieveData(m_RetrieveParam);
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show("检查药品是否有未作废的别名时发生异常:" + ex.Message, MsgTitle.Error);
                        return;
                    }
                }
                else
                {
                    dwYlzXx.DeleteRow(dwYlzXx.CurrentRow);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("取职工信息发生异常:" + ex.Message, MsgTitle.Error);
            }
            finally
            {
                if (fSelect2 != null)
                    fSelect2.Dispose();
            }
        }

        //删除
        private void btnStop_Click(object sender, EventArgs e)
        {
            DbProxyClient proxy = App.DbProxy;
            if (dwYlzXx.CurrentRow > 0)
            {
                //停用的记录如果是新增的,直接删除
                RowStatus status = dwYlzXx.GetRowStatus(dwYlzXx.CurrentRow, DataBuffer.Primary);
                if (status == RowStatus.New || status == RowStatus.NewAndModified)
                {
                    dwYlzXx.DeleteRow(dwYlzXx.CurrentRow);
                    return;
                }
                DialogResult result = MessageBox.Show(this, "您确定要删除吗?", MsgTitle.Prompt, MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
                if (result == DialogResult.OK)
                {
                    dwYlzXx.DeleteRow(dwYlzXx.CurrentRow);
                    proxy.AddDataWindow(this.dwYlzXx);
                    proxy.Update();
                    this.RetrieveData(m_RetrieveParam);
                }
            }
            else
            {
                MessageBox.Show("请选择需要删除的用户再单击删除按钮!", MsgTitle.Prompt);
            }
        }

        //关闭
        private void btnClose_Click(object sender, EventArgs e)
        {
            this.ParentForm.Close();
        }

        //刷新
        private void btnRefresh_Click(object sender, EventArgs e)
        {
            this.RetrieveData(m_RetrieveParam);
        }
        
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -