📄 fypzdwh_ypflwh.cs
字号:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Qeb.Control;
using Qeb.DBProxy;
using Qeb.Support;
using Qeb.Support.Common;
namespace Qeb.YK
{
public partial class FYpZdWh_YpFlWh : Qeb.Control.FBase
{
//分类ID 0表示新增
private string m_YpFlId = "";
//上级分类ID
private string m_SjFlId = "";
//标准编码
private string m_BzBm = "";
public FYpZdWh_YpFlWh()
{
InitializeComponent();
dwYpFl.LibraryList = PBL.YkPbl;
dwYpFl.DataWindowObject = YkDataObjects.D_Yk_YpFlWh;
}
private void RetrieveYpFl()
{
DbProxyClient proxy = App.DbProxy;
try
{
proxy.Clear();
proxy.AddRetrieveParam("p_ypflid", m_YpFlId);
proxy.Retrieve(dwYpFl);
}
catch(Exception ex)
{
MessageBox.Show("检索药品分类发生异常:"+ex.Message,MsgTitle.Error);
this.btnSave.Enabled = false;
}
//检查分类下是否已有药品
try
{
string sql = "SELECT COUNT(YPID) FROM GY_YPMCK WHERE YPFLID='" + m_YpFlId + "' AND ZFBZ=0";
proxy.Clear();
string ret = proxy.ExecuteScalar(sql);
if (int.Parse(ret)>0)
{
dwYpFl.SetProperty("yplx.protect", "1");
dwYpFl.SetProperty("mjbz.protect", "1");
return;
}
sql = "SELECT COUNT(YPFLID) FROM GY_YPFL WHERE SJFLID='" + m_YpFlId + "' AND ZFBZ=0";
proxy.Clear();
ret = proxy.ExecuteScalar(sql);
if (int.Parse(ret) > 0)
{
dwYpFl.SetProperty("yplx.protect", "1");
dwYpFl.SetProperty("mjbz.protect", "1");
}
}
catch (Exception ex)
{
MessageBox.Show("检查药品分类下是否已有药品时发生异常:" + ex.Message, MsgTitle.Error);
dwYpFl.SetProperty("yplx.protect", "1");
dwYpFl.SetProperty("mjbz.protect", "1");
this.btnSave.Enabled = false;
}
}
/// <summary>
///
/// </summary>
/// <param name="ypFlid">分类ID</param>
/// <param name="sjFlId">上级分类ID</param>
internal void SetId(string ypFlid,string sjFlId,string bzBm)
{
m_YpFlId = ypFlid;
m_SjFlId = sjFlId;
m_BzBm = bzBm;
if (ypFlid == null || ypFlid.Trim() == "")
{
throw new Exception("传参错误,药品分类ID不能为空");
}
if (m_YpFlId == "0")
{
this.Text = "药品分类维护 新增";
}
else
{
if (m_SjFlId == null || m_SjFlId.Trim() == "")
throw new Exception("传参错误,上级分类ID不能为空");
this.Text = "药品分类维护 修改";
}
}
private void btnClose_Click(object sender, EventArgs e)
{
this.DialogResult = DialogResult.Cancel;
this.Close();
}
private string m_ReturnYpFlId = "";
internal string YpFlId
{
get { return m_ReturnYpFlId; }
}
private bool CheckYpFlXx()
{
if (!dwYpFl.AcceptText())
return false;
//药品分类名称
if (dwYpFl.IsItemNull(1, "ypflmc") || dwYpFl.GetItemString(1, "ypflmc") == "")
{
MessageBox.Show("药品分类名称不能为空,请输入!", MsgTitle.Prompt);
dwYpFl.Focus();
dwYpFl.SetColumn("ypflmc");
return false;
}
//药品类型
if (dwYpFl.IsItemNull(1, "yplx") || dwYpFl.GetItemString(1, "yplx") == "")
{
MessageBox.Show("药品类型没有选择,请选择!", MsgTitle.Prompt);
dwYpFl.Focus();
dwYpFl.SetColumn("yplx");
return false;
}
return true;
}
private void btnSave_Click(object sender, EventArgs e)
{
if (!CheckYpFlXx())
return;
DbProxyClient proxy = App.DbProxy;
if (m_YpFlId == "0")
{
//设置主键
try
{
string ypFlId = Sequence.GetXhByName("SEQ_GY_YPFL_YPFLID",4);
if (string.IsNullOrEmpty(ypFlId))
{
MessageBox.Show("取药品分类ID不成功,取到的值为空!",MsgTitle.Error);
return;
}
dwYpFl.SetItemString(1,"ypflid",ypFlId);
m_ReturnYpFlId = ypFlId;
}
catch(Exception ex)
{
MessageBox.Show("取药品分类ID发生异常:"+ex.Message, MsgTitle.Error);
return;
}
}
//保存
try
{
proxy.Clear();
proxy.AddDataWindow(dwYpFl);
proxy.Update();
this.DialogResult = DialogResult.OK;
this.Close();
}
catch(Exception ex)
{
MessageBox.Show("保存药品分类发生异常:" + ex.Message, MsgTitle.Error);
}
}
private void FYpZdWh_YpFlWh_Load(object sender, EventArgs e)
{
if (m_YpFlId == "0")
{
int row = dwYpFl.InsertRow(0);
//上级分类ID
dwYpFl.SetItemString(row, "sjflid", m_SjFlId);
//标准编码
dwYpFl.SetItemString(row, "bzbm", m_BzBm);
//作废标志
dwYpFl.SetItemDecimal(row, "zfbz", 0);
//末级标志
dwYpFl.SetItemDecimal(row, "mjbz", 0);
//排序序号
string temp = "";
if (m_BzBm.Length >1)
{
temp = m_BzBm.Substring(m_BzBm.Length-2,2);
}
if (NumberHelper.IsNumeric(temp))
dwYpFl.SetItemDecimal(row, "pxxh", int.Parse(temp));
else
dwYpFl.SetItemDecimal(row, "pxxh", 0);
}
else
{
this.RetrieveYpFl();
}
//设置药品类型下拉框的项目
string itemValue = YkGy.KfLx2DwDropDownItem(App.kfLx);
dwYpFl.SetProperty("yplx.Values",itemValue);
}
private void dwYpFl_ItemFocusChanged(object sender, Sybase.DataWindow.ItemFocusChangedEventArgs e)
{
if (e.ColumnName == "ypflmc")
{
dwYpFl.SetIME(true);
}
else
{
dwYpFl.SetIME(false);
}
}
private void dwYpFl_ItemError(object sender, Sybase.DataWindow.ItemErrorEventArgs e)
{
e.Action = Sybase.DataWindow.ItemErrorAction.RejectWithNoMessage;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -