示例#1
0
        protected void gdTestItem_RowClick(object sender, GridRowClickEventArgs e)
        {
            try
            {
                if (gdTestItem.SelectedRowIndexArray.Length > 0)
                {
                    Dicttestitem item = new Dicttestitem();
                    ViewState["TestItemID"] = null;
                    if (e.RowIndex >= 0)
                    {
                        int gridRowID = e.RowIndex;
                        //int index = gdTestItem.PageIndex * gdTestItem.PageSize + gridRowID;
                        string keys = gdTestItem.Rows[gridRowID].Values[0].ToString();
                        //object[] keys = gdTestItem.DataKeys[e.RowIndex];
                        //List<Dicttestitem> testitemList = BindTestItemAll();//所有单项的集合
                        //根据选中的行得到当前选中的实例
                        //item = (from Dicttestitem in testitemList where Dicttestitem.Dicttestitemid == Convert.ToInt32(keys) select Dicttestitem).ToList<Dicttestitem>()[0];
                        item = testitemservice.SelectDicttestitemByDicttestitemid(Convert.ToDouble(keys));
                        ViewState["TestItemID"] = item.Dicttestitemid;
                        //SimpleFormEdit.Title = "当前状态-编辑";
                        txtUniQueid.Text                = item.Uniqueid;
                        txtEngName.Text                 = item.Engname;
                        txtEngLongName.Text             = item.Englongname;
                        txtItemCode.Text                = item.Testcode;
                        txtTestName.Text                = item.Testname;
                        txtUnit.Text                    = item.Unit;
                        txtFastCode.Text                = item.Fastcode;
                        ddlContainerType.SelectedValue  = (item.Dictcontainerid ?? -1).ToString();      //试管类型
                        ddlPhysicalGourp.SelectedValue  = (item.Dictlabdeptid ?? -1).ToString();        //物理组
                        ddlReportTemplate.SelectedValue = (item.Dictreporttemplateid ?? -1).ToString(); //报告模板
                        ddlTubeGroup.SelectedValue      = item.Tubegroup ?? "-1";                       //分管原则
                        ddlforsex.SelectedValue         = item.Forsex ?? "-1";
                        ddlSpecimenType.SelectedValue   = (item.Dictspecimentypeid ?? -1).ToString();   //标本类型
                        txtPrecision.Text               = item.Precision.ToString();                    //小数位

                        ddlResultType.SelectedValue = item.Resulttype ?? "-1";                          //结果类型
                        txtDefaultResult.Text       = item.Defaultresult;                               //默认结果
                        //txtRefmethod.Text = item.Refmethod;//参考值方式
                        ddlRefmethod.SelectedValue = item.Refmethod ?? "-1";
                        txtLimitHight.Text         = item.Limithigh.ToString();    //限制高
                        txtLimiLow.Text            = item.Limitlow.ToString();     //限制低
                        txtLabelNumber.Text        = item.Labelnumber.ToString();
                        txtPrintOrder.Text         = item.Displayorder.ToString(); //打印排序
                        txtStandardPrice.Text      = item.Price.ToString();        //价格
                        txtOperationRemark.Text    = item.Operationremark;         //操作指引说明

                        if (item.Report == "1")
                        {
                            chbReport.Checked = true;
                        }                                                     //1,打印报告
                        else
                        {
                            chbReport.Checked = false;
                        }

                        if (item.Active == "1")
                        {
                            chbActive.Checked = true;
                        }                                                     //1,可用
                        else
                        {
                            chbActive.Checked = false;
                        }

                        if (item.Billable == "1")
                        {
                            chbBillable.Checked = true;
                        }                                                         //1,需要记账
                        else
                        {
                            chbBillable.Checked = false;
                        }

                        if (item.Isimportant == "1")
                        {
                            chbImportanttest.Checked = true;
                        }                                                                 //1,是重要项目
                        else
                        {
                            chbImportanttest.Checked = false;
                        }

                        if (item.Isonlyforbill == "1")
                        {
                            chbImportanttest.Checked = true;
                        }                                                                   //是否只是收费项目  0 不是 1 是
                        else
                        {
                            chbImportanttest.Checked = false;
                        }

                        //项目可选结果
                        BindTestResult(item.Dicttestitemid);
                    }
                }
                else
                {
                    AddTestItem();
                }
            }
            catch (Exception)
            {
                MessageBoxShow("显示数据出错,请联系管理员!");
            }
        }
示例#2
0
        //private void BindSearchData()
        //{
        //    List<Dicttestitem> testitemLst = GetGroupTestItemByC();
        //    gdGroupTestItem.DataSource = testitemLst;
        //    gdGroupTestItem.DataBind();
        //}

        //public List<Dicttestitem> GetGroupTestItemByC()
        //{
        //    List<Dicttestitem> testitemgoutpLst = BindTestGourp();//所有组合项目
        //    List<Dicttestitem> testitemLst = new List<Dicttestitem>();
        //    double? Dictlabdeptid = Convert.ToDouble(ddlgoupLibrary.SelectedValue);
        //    if (Dictlabdeptid == -1)
        //    {
        //        testitemLst = testitemgoutpLst;
        //    }
        //    else
        //    {
        //        testitemLst = (from Dicttestitem in testitemgoutpLst where Dicttestitem.Dictlabdeptid == Dictlabdeptid select Dicttestitem).ToList<Dicttestitem>();
        //    }
        //    string testitemStr = ttbSearch.Text;
        //    List<Dicttestitem> newslist = new List<Dicttestitem>();
        //    foreach (Dicttestitem item in testitemLst)
        //    {
        //        if ((item.Fastcode != null && item.Fastcode.ToLower().Contains(testitemStr.ToLower())) ||
        //            (item.Engname != null && item.Engname.ToLower().Contains(testitemStr.ToLower())) ||
        //            (item.Testname != null && item.Testname.ToLower().Contains(testitemStr.ToLower())) ||
        //            (item.Testcode != null && item.Testcode.ToLower().Contains(testitemStr.ToLower())) ||
        //            (item.Uniqueid != null && item.Uniqueid.ToLower().Contains(testitemStr.ToLower())) ||
        //            (item.Englongname != null && item.Englongname.ToLower().Contains(testitemStr.ToLower()))
        //            || testitemStr == "")
        //        {
        //            newslist.Add(item);
        //        }
        //    }
        //    return newslist;
        //}
        #endregion

        #region 保存组合信息
        protected void btnSave_Click(object sender, EventArgs e)
        {
            try
            {
                if (ddlPhysicalGourp.SelectedValue == "-1")
                {
                    MessageBoxShow("请选择物理组!"); return;
                }
                if (ddlSpecimenType.SelectedValue == "-1")
                {
                    MessageBoxShow("请选择标本类型!"); return;
                }
                if (ddlTubeGroup.SelectedValue == "-1")
                {
                    MessageBoxShow("请选择分管原则!"); return;
                }
                if (txtGroupTestCode.Text.Trim() == "")
                {
                    MessageBoxShow("请填写组合代码名称"); return;
                }
                if (txtGroupTestName.Text.Trim() == "")
                {
                    MessageBoxShow("请填写组合名称"); return;
                }
                if (txtFastCode.Text.Trim() == "")
                {
                    MessageBoxShow("请填写助记符名称"); return;
                }
                if (nbbStandardPrice.Text.Trim() == "")
                {
                    MessageBoxShow("请填写标准价格"); return;
                }
                if (txtUniQueid.Text.Trim() == "")
                {
                    MessageBoxShow("请填写全国统一码"); return;
                }
                Dicttestitem        item             = new Dicttestitem();
                Dicttestitem        testitem         = new Dicttestitem();//日志操作,旧值
                List <Dicttestitem> dicttestitemList = new List <Dicttestitem>();
                //List<Dicttestitem> testitemgoutpLst = BindTestGourp();//所有组合项目
                if (ViewState["TestItemID"] != null)
                {
                    double?id = Convert.ToDouble(ViewState["TestItemID"]);
                    //item = (from Dicttestitem in testitemgoutpLst where Dicttestitem.Dicttestitemid == id select Dicttestitem).ToList<Dicttestitem>()[0];
                    item     = testitemservice.SelectDicttestitemByDicttestitemid(id);
                    testitem = item;
                    Hashtable ht = new Hashtable();
                    ht.Add("Uniqueid", txtUniQueid.Text.Trim());
                    ht.Add("Dicttestitemid", id);
                    dicttestitemList = new DicttestitemService().GetDicttestitemByCode(ht);
                }
                else
                {
                    Hashtable ht = new Hashtable();
                    ht.Add("Uniqueid", txtUniQueid.Text.Trim());
                    dicttestitemList = new DicttestitemService().GetDicttestitemByCode(ht);
                }
                if (dicttestitemList.Count > 0)
                {
                    MessageBoxShow("已存在相同的全国统一码!"); return;
                }
                item.Fastcode           = txtFastCode.Text.Trim();
                item.Testcode           = txtGroupTestCode.Text.Trim();
                item.Testname           = txtGroupTestName.Text.Trim();
                item.Operationremark    = txtOperationRemark.Text.Trim();
                item.Price              = Convert.ToDouble(nbbStandardPrice.Text.Trim());
                item.Uniqueid           = txtUniQueid.Text.Trim();
                item.Dictlabdeptid      = Convert.ToDouble(ddlPhysicalGourp.SelectedValue);
                item.Dictspecimentypeid = Convert.ToDouble(ddlSpecimenType.SelectedValue);
                item.Testtype           = "1";                        //1,组合
                item.Tubegroup          = ddlTubeGroup.SelectedValue; //分管原则
                item.Displayorder       = int.Parse(txtDisplayOrder.Text);
                if (chbActive.Checked)
                {
                    item.Active = "1";
                }
                else
                {
                    item.Active = "0";
                }
                if (chbIsonlyForBill.Checked)
                {
                    item.Isonlyforbill = "1";
                }
                else
                {
                    item.Isonlyforbill = "0";
                }
                //if (item.Dicttestitemid != null)
                //{
                //    testitem = (from Dicttestitem in testitemgoutpLst where Dicttestitem.Dicttestitemid == item.Dicttestitemid select Dicttestitem).ToList<Dicttestitem>()[0];
                //}
                List <Dicttestitem> listIn = GridlistIn();//包含的项目
                int           num          = 0;
                int           flag         = 0;
                StringBuilder type         = new StringBuilder();
                for (int i = 0; i < listIn.Count(); i++)
                {
                    if (listIn[i].Tubegroup != "" && listIn[i].Dictlabdeptid.ToString() != "" && listIn[i].Dictspecimentypeid.ToString() != "")
                    {
                        //if (this.ddlTubeGroup.SelectedValue != listIn[i].Tubegroup || this.ddlPhysicalGourp.SelectedValue != listIn[i].Dictlabdeptid.ToString() || this.ddlSpecimenType.SelectedValue != listIn[i].Dictspecimentypeid.ToString())
                        if (ddlTubeGroup.SelectedValue != listIn[i].Tubegroup || ddlSpecimenType.SelectedValue != listIn[i].Dictspecimentypeid.ToString())
                        {
                            num++;
                            type.Append(listIn[i].Testname + ",");
                        }
                    }
                    else
                    {
                        flag++;
                        type.Append(listIn[i].Testname + ",");
                    }
                }
                if (flag > 0)
                {
                    MessageBoxShow(String.Format("{0}分管原则、所属科室、标本类型都不能为空,请重新维护!", type));
                    return;
                }
                if (num > 0)
                {
                    //MessageBoxShow(String.Format("{0}必须与所选分管原则、所属科室、标本类型相同!", type));
                    MessageBoxShow(String.Format("{0}必须与所选分管原则、标本类型相同!", type));
                    return;
                }
                string strerr = string.Empty;
                double?f      = testitemservice.SaveDictTestItem(item, listIn, testitem, ref strerr);
                if (f > 0)
                {
                    item.Dicttestitemid     = f;
                    ViewState["TestItemID"] = f;
                    CacheHelper.RemoveAllCache("daan.GetDicttestitem");        //删除项目缓存
                    CacheHelper.RemoveAllCache("daan.GetDicttestgroupdetail"); //删除项目结果缓存
                    BindSearchData();                                          //筛选下的项目
                    //  AddTestGroup();//清空
                    MessageBoxShow("新增成功!");
                }
                else if (f == 0)
                {
                    CacheHelper.RemoveAllCache("daan.GetDicttestitem");        //删除项目缓存
                    CacheHelper.RemoveAllCache("daan.GetDicttestgroupdetail"); //删除项目结果缓存
                    BindSearchData();                                          //筛选下的项目
                    // AddTestGroup();//清空
                    MessageBoxShow("修改成功!");
                }
                else
                {
                    MessageBoxShow("操作出错:" + strerr);
                }
            }
            catch (Exception ex)
            {
                MessageBoxShow(ex.ToString());
            }
        }