Пример #1
0
        /// <summary>
        /// 新增模版
        /// </summary>
        public void New()
        {
            if (this.ucChooseList1.TvList.SelectedNode != null && this.ucChooseList1.TvList.SelectedNode.Parent == null)
            {
                TreeNode node = new TreeNode();

                Neusoft.HISFC.Models.Pharmacy.DrugStencil drugStencil = new Neusoft.HISFC.Models.Pharmacy.DrugStencil();
                drugStencil.Dept        = this.privDept;
                drugStencil.OpenType.ID = this.stencilTypeID;

                this.stencil        = new Neusoft.FrameWork.Models.NeuObject();
                this.stencil.Name   = "新建模版";
                drugStencil.Stencil = this.stencil;

                node.Text               = "新建模板";
                node.Tag                = drugStencil;
                node.ImageIndex         = 1;
                node.SelectedImageIndex = 1;

                this.ucChooseList1.TvList.SelectedNode.Nodes.Add(node);
                this.ucChooseList1.TvList.SelectedNode = node;

                this.ucChooseList1.TvList.LabelEdit = true;
                node.BeginEdit();
            }
        }
Пример #2
0
        /// <summary>
        /// 添加数据
        /// </summary>
        /// <param name="item">需添加的药品信息</param>
        /// <returns>成功返回1 失败返回-1</returns>
        private int AddData(Neusoft.HISFC.Models.Pharmacy.Item item)
        {
            try
            {
                string[] keys = new string[] { item.ID };
                if (this.dt.Rows.Find(keys) != null)
                {
                    MessageBox.Show(Language.Msg(item.Name + "已添加到模版内"));
                    this.SetFocus(false);
                    return(-1);
                }
                Neusoft.HISFC.Models.Pharmacy.DrugStencil drugStencil = new Neusoft.HISFC.Models.Pharmacy.DrugStencil();
                drugStencil.Dept        = this.privDept;
                drugStencil.OpenType.ID = this.stencilTypeID;
                drugStencil.Item        = item;

                this.dt.Rows.Add(this.GetDataRow(drugStencil));

                this.SetFocus(true);
            }
            catch (Exception ex)
            {
                MessageBox.Show(Language.Msg(ex.Message));
                return(-1);
            }

            return(1);
        }
Пример #3
0
        /// <summary>
        /// 根据数据集信息获取模版实体信息
        /// </summary>
        /// <param name="dr">数据表信息</param>
        /// <returns>成功返回模版实体信息</returns>
        private Neusoft.HISFC.Models.Pharmacy.DrugStencil GetDrugStencil(DataRow dr)
        {
            Neusoft.HISFC.Models.Pharmacy.DrugStencil drugStencil = new Neusoft.HISFC.Models.Pharmacy.DrugStencil();
            drugStencil.Dept        = this.privDept;
            drugStencil.OpenType.ID = this.stencilTypeID;
            drugStencil.Stencil     = this.stencil;
            drugStencil.Item.ID     = dr["药品编码"].ToString();
            drugStencil.Item.Name   = dr["商品名称"].ToString();
            drugStencil.Item.Specs  = dr["规格"].ToString();
            drugStencil.SortNO      = Neusoft.FrameWork.Function.NConvert.ToInt32(dr["顺序号"]);

            return(drugStencil);
        }
Пример #4
0
        /// <summary>
        /// 根据药品信息 生成DataRow
        /// </summary>
        /// <param name="drugStencil">药品信息</param>
        /// <returns>成功返回一行DataRow信息</returns>
        private System.Data.DataRow GetDataRow(Neusoft.HISFC.Models.Pharmacy.DrugStencil drugStencil)
        {
            Neusoft.HISFC.Models.Pharmacy.Item item = this.itemManager.GetItem(drugStencil.Item.ID);
            DataRow dr = this.dt.NewRow();

            if (item != null)
            {
                dr["药品编码"]   = item.ID;
                dr["商品名称"]   = item.Name;
                dr["规格"]     = item.Specs;
                dr["顺序号"]    = drugStencil.SortNO;
                dr["操作员"]    = drugStencil.Oper.ID;
                dr["操作时间"]   = drugStencil.Oper.OperTime.ToString();
                dr["拼音码"]    = item.NameCollection.SpellCode;
                dr["五笔码"]    = item.NameCollection.WBCode;
                dr["自定义码"]   = item.NameCollection.UserCode;
                dr["通用名拼音码"] = item.NameCollection.RegularSpell.SpellCode;
                dr["通用名五笔码"] = item.NameCollection.RegularSpell.WBCode;
            }
            else
            {
                MessageBox.Show("药品列表中找不到模板中的" + drugStencil.Item.ID + drugStencil.Item.Name + "数据,请手工删除!");
                dr["药品编码"]   = drugStencil.Item.ID;
                dr["商品名称"]   = drugStencil.Item.Name;
                dr["规格"]     = drugStencil.Item.Specs;
                dr["顺序号"]    = drugStencil.SortNO;
                dr["操作员"]    = drugStencil.Oper.ID;
                dr["操作时间"]   = drugStencil.Oper.OperTime.ToString();
                dr["拼音码"]    = drugStencil.Item.NameCollection.SpellCode;
                dr["五笔码"]    = drugStencil.Item.NameCollection.WBCode;
                dr["自定义码"]   = drugStencil.Item.NameCollection.UserCode;
                dr["通用名拼音码"] = drugStencil.Item.NameCollection.RegularSpell.SpellCode;
                dr["通用名五笔码"] = drugStencil.Item.NameCollection.RegularSpell.WBCode;
            }
            return(dr);
        }
Пример #5
0
        /// <summary>
        /// 保存
        /// </summary>
        public void Save()
        {
            if (this.dt.Rows.Count <= 0)
            {
                return;
            }

            Neusoft.FrameWork.Management.PublicTrans.BeginTransaction();

            //Neusoft.FrameWork.Management.Transaction t = new Neusoft.FrameWork.Management.Transaction(Neusoft.FrameWork.Management.Connection.Instance);
            //t.BeginTransaction();

            this.neuSpread1.StopCellEditing();

            for (int i = 0; i < this.dt.DefaultView.Count; i++)
            {
                this.dt.DefaultView[i].EndEdit();
            }

            this.itemManager.SetTrans(Neusoft.FrameWork.Management.PublicTrans.Trans);
            this.consManager.SetTrans(Neusoft.FrameWork.Management.PublicTrans.Trans);

            if (this.stencil == null || this.stencil.ID == "")
            {
                this.stencil.ID = this.consManager.GetNewStencilNO();
            }

            Neusoft.FrameWork.WinForms.Classes.Function.ShowWaitForm("正在保存模版 请稍候...");
            Application.DoEvents();

            DataTable dtChange = this.dt.GetChanges(System.Data.DataRowState.Modified | System.Data.DataRowState.Added);

            if (dtChange != null && dtChange.Rows.Count > 0)
            {
                foreach (DataRow dr in dtChange.Rows)
                {
                    Neusoft.HISFC.Models.Pharmacy.DrugStencil temp = this.GetDrugStencil(dr);
                    if (temp == null)
                    {
                        Neusoft.FrameWork.Management.PublicTrans.RollBack();
                        Neusoft.FrameWork.WinForms.Classes.Function.HideWaitForm();
                        MessageBox.Show(Language.Msg("由DataSet内获取变化后信息发生错误"));
                        return;
                    }
                    if (temp.Stencil.Name.Length > 20)//{CFEA5C18-AA93-4687-97FB-96BB7D51A620}
                    {
                        Neusoft.FrameWork.Management.PublicTrans.RollBack();
                        Neusoft.FrameWork.WinForms.Classes.Function.HideWaitForm();
                        MessageBox.Show(Language.Msg("长度大于20,请重新录入"));
                        return;
                    }
                    if (this.consManager.SetDrugStencil(temp) == -1)
                    {
                        Neusoft.FrameWork.Management.PublicTrans.RollBack();
                        Neusoft.FrameWork.WinForms.Classes.Function.HideWaitForm();
                        MessageBox.Show(Language.Msg("更新模版信息失败" + this.consManager.Err));
                        return;
                    }
                }
            }

            this.dt.AcceptChanges();

            Neusoft.FrameWork.Management.PublicTrans.Commit();

            Neusoft.FrameWork.WinForms.Classes.Function.HideWaitForm();

            MessageBox.Show(Language.Msg("保存成功"));

            this.IsShowList = true;

            this.Clear();

            this.ShowList();

            if (this.ucChooseList1.TvList.SelectedNode != null)
            {
                if (this.ucChooseList1.TvList.SelectedNode.Parent != null)
                {
                    this.ucChooseList1.TvList.SelectedNode = this.ucChooseList1.TvList.SelectedNode.Parent;
                }
            }
        }