Exemplo n.º 1
0
        /// <summary>
        /// 循环写进费用明细表
        /// </summary>
        public bool AddExamChargeList(List <System.Data.DataTable> Now_DT_VS_Group, int ChargeItemNo, IModel iWorklist, decimal chargeRatio)
        {
            BExamChargeList bExamChargeList = new BExamChargeList();
            MWorkList       mWorkList = (MWorkList)iWorklist;
            int             i, j;

            for (i = 0; i < Now_DT_VS_Group.Count; i++)
            {
                if (Now_DT_VS_Group[i] != null)
                {
                    Hashtable ht = new Hashtable();
                    for (j = 0; j < Now_DT_VS_Group[i].Rows.Count; j++)
                    {
                        MExamChargeList mExamChargeList = new MExamChargeList();
                        mExamChargeList.AMOUNT            = Convert.ToInt32(Now_DT_VS_Group[i].Rows[j]["AMOUNT"].ToString());
                        mExamChargeList.CHARGE            = Convert.ToDecimal(Now_DT_VS_Group[i].Rows[j]["COSTS"].ToString()) * chargeRatio;
                        mExamChargeList.CHARGE_CLASS_NAME = Now_DT_VS_Group[i].Rows[j]["CLASS_NAME"].ToString();
                        mExamChargeList.CHARGE_ITEM_CLASS = Now_DT_VS_Group[i].Rows[j]["ITEM_CLASS"].ToString();
                        mExamChargeList.CHARGE_ITEM_CODE  = Now_DT_VS_Group[i].Rows[j]["ITEM_CODE"].ToString();
                        mExamChargeList.CHARGE_ITEM_NO    = j + 1;
                        mExamChargeList.CHARGE_ITEM_SPEC  = Now_DT_VS_Group[i].Rows[j]["ITEM_SPEC"].ToString();
                        mExamChargeList.COST              = Convert.ToDecimal(Now_DT_VS_Group[i].Rows[j]["COSTS"].ToString());
                        mExamChargeList.PRICE             = Convert.ToDecimal(Now_DT_VS_Group[i].Rows[j]["PRICE"].ToString());
                        mExamChargeList.EXAM_NO           = mWorkList.EXAM_ACCESSION_NUM;
                        mExamChargeList.EXAM_CONFIRM_TIME = DateTime.Now;
                        mExamChargeList.EXAM_ITEM_CODE    = Now_DT_VS_Group[i].Rows[j]["EXAM_ITEM_CODE"].ToString();
                        mExamChargeList.ITEM_NO           = ChargeItemNo;
                        mExamChargeList.PATIENT_ID        = mWorkList.PATIENT_ID;
                        mExamChargeList.UNITS             = Now_DT_VS_Group[i].Rows[j]["UNITS"].ToString();
                        mExamChargeList.CHARGE_ITEM_NAME  = Now_DT_VS_Group[i].Rows[j]["ITEM_NAME"].ToString();
                        mExamChargeList.EXAM_ITEM_NO      = i + 1;
                        ChargeItemNo++;
                        if (bExamChargeList.Exists(mExamChargeList))
                        {
                            break;
                        }
                        ht.Add(j, mExamChargeList);
                    }
                    if (ht.Count > 0)
                    {
                        j = bExamChargeList.AddMore(ht);
                    }
                    else
                    {
                        return(true);
                    }
                    if (j < 0)
                    {
                        return(false);
                    }
                }
            }
            return(true);
        }
Exemplo n.º 2
0
 /// <summary>
 /// 查询是否存在指定的检查明细记录
 /// </summary>
 /// <param name="iexamChargeList"></param>
 /// <returns></returns>
 public override bool Exists(IModel iexamChargeList)
 {
     MExamChargeList examChargeList = (MExamChargeList)iexamChargeList;
     strSql = "select * from " + TableName + " where EXAM_NO='" + examChargeList.EXAM_NO + "' and " +
              "EXAM_ITEM_CODE = '" + examChargeList.EXAM_ITEM_CODE + "' and " +
              "CHARGE_ITEM_CODE = '" + examChargeList.CHARGE_ITEM_CODE + "' and " +
              "CHARGE_ITEM_SPEC= '" + examChargeList.CHARGE_ITEM_SPEC + "' and " +
              "EXAM_ITEM_NO= " + examChargeList.EXAM_ITEM_NO + " and " +
              "CHARGE_ITEM_NO= " + examChargeList.CHARGE_ITEM_NO + "";
     return recordIsExist(strSql);
 }
Exemplo n.º 3
0
        /// <summary>
        ///批量插入收费明细记录
        /// </summary>
        /// <param name="ht2"></param>
        /// <returns></returns>
        public override int AddMore(Hashtable ht2)
        {
            MExamChargeList examChargeList = new MExamChargeList();
            Hashtable       ht             = new Hashtable();
            Hashtable       htstr          = new Hashtable();

            if (ht2.Count > 0)
            {
                for (int i = 0; i < ht2.Count; i++)
                {
                    ht.Clear();
                    examChargeList = (MExamChargeList)ht2[i];
                    ht.Add("EXAM_NO", examChargeList.EXAM_NO);
                    ht.Add("PATIENT_ID", examChargeList.PATIENT_ID);
                    ht.Add("EXAM_CONFIRM_TIME", examChargeList.EXAM_CONFIRM_TIME);
                    ht.Add("EXAM_ITEM_CODE", examChargeList.EXAM_ITEM_CODE);
                    ht.Add("CHARGE_ITEM_CODE", examChargeList.CHARGE_ITEM_CODE);
                    ht.Add("CHARGE_ITEM_SPEC", examChargeList.CHARGE_ITEM_SPEC);
                    ht.Add("AMOUNT", examChargeList.AMOUNT);
                    ht.Add("UNITS", examChargeList.UNITS);
                    ht.Add("COST", examChargeList.COST);
                    ht.Add("CHARGE", examChargeList.CHARGE);
                    ht.Add("CHARGE_ITEM_NO", examChargeList.CHARGE_ITEM_NO);
                    ht.Add("CHARGE_ITEM_CLASS", examChargeList.CHARGE_ITEM_CLASS);
                    ht.Add("CHARGE_CLASS_NAME", examChargeList.CHARGE_CLASS_NAME);
                    ht.Add("ITEM_NO", examChargeList.ITEM_NO);
                    ht.Add("CHARGE_ITEM_NAME", examChargeList.CHARGE_ITEM_NAME);
                    ht.Add("PRICE", examChargeList.PRICE);
                    ht.Add("EXAM_ITEM_NO", examChargeList.EXAM_ITEM_NO);
                    htstr.Add(i, StringConstructor.InsertSql(TableName, ht).ToString());
                }
                return(ExecuteNonSql(htstr));
            }
            else
            {
                return(0);
            }
        }
Exemplo n.º 4
0
 /// <summary>
 /// 插入一条检查明细记录
 /// </summary>
 /// <param name="iexamChargeList"></param>
 /// <returns></returns>
 public override int Add(IModel iexamChargeList)
 {
     MExamChargeList examChargeList = (MExamChargeList)iexamChargeList;
     Hashtable ht = new Hashtable();
     ht.Add("EXAM_NO", examChargeList.EXAM_NO);
     ht.Add("PATIENT_ID", examChargeList.PATIENT_ID);
     ht.Add("EXAM_CONFIRM_TIME", examChargeList.EXAM_CONFIRM_TIME);
     ht.Add("EXAM_ITEM_CODE", examChargeList.EXAM_ITEM_CODE);
     ht.Add("CHARGE_ITEM_CODE", examChargeList.CHARGE_ITEM_CODE);
     ht.Add("CHARGE_ITEM_SPEC", examChargeList.CHARGE_ITEM_SPEC);
     ht.Add("AMOUNT", examChargeList.AMOUNT);
     ht.Add("UNITS", examChargeList.UNITS);
     ht.Add("COST", examChargeList.COST);
     ht.Add("CHARGE", examChargeList.CHARGE);
     ht.Add("CHARGE_ITEM_NO", examChargeList.CHARGE_ITEM_NO);
     ht.Add("CHARGE_ITEM_CLASS", examChargeList.CHARGE_ITEM_CLASS);
     ht.Add("CHARGE_CLASS_NAME", examChargeList.CHARGE_CLASS_NAME);
     ht.Add("ITEM_NO", examChargeList.ITEM_NO);
     ht.Add("CHARGE_ITEM_NAME", examChargeList.CHARGE_ITEM_NAME);
     ht.Add("PRICE", examChargeList.PRICE);
     ht.Add("EXAM_ITEM_NO", examChargeList.EXAM_ITEM_NO);
     return (ExecuteSql(StringConstructor.InsertSql(TableName, ht).ToString()));
 }
Exemplo n.º 5
0
        /// <summary>
        ///  更新检查费用明细表记录
        /// </summary>
        /// <param name="iWorklist"></param>
        /// <param name="Now_DT_VS_Old"></param>
        /// <param name="Now_DT_VS_Group"></param>
        /// <param name="chargeRatio"></param>
        /// <returns></returns>
        public bool SetExamChargeList(IModel iWorklist, System.Data.DataTable Now_DT_VS_Old, List <System.Data.DataTable> Now_DT_VS_Group, decimal chargeRatio)
        {
            MWorkList       mWorkList = (MWorkList)iWorklist;
            int             i = 0, j = 0;
            BExamChargeList bExamChargeList = new BExamChargeList();

            j = bExamChargeList.Delete(" where EXAM_NO ='" + mWorkList.EXAM_ACCESSION_NUM + "'");
            if (j < 0)
            {
                return(false);
            }
            for (i = 0; i < Now_DT_VS_Group.Count; i++)
            {
                if (Now_DT_VS_Group[i] != null)
                {
                    Hashtable ht = new Hashtable();
                    for (j = 0; j < Now_DT_VS_Group[i].Rows.Count; j++)
                    {
                        MExamChargeList mExamChargeList = new MExamChargeList();
                        mExamChargeList.AMOUNT            = Convert.ToInt32(Now_DT_VS_Group[i].Rows[j]["AMOUNT"].ToString());
                        mExamChargeList.CHARGE            = Convert.ToDecimal(Now_DT_VS_Group[i].Rows[j]["COSTS"].ToString()) * chargeRatio;
                        mExamChargeList.CHARGE_CLASS_NAME = Now_DT_VS_Group[i].Rows[j]["CLASS_NAME"].ToString();
                        mExamChargeList.CHARGE_ITEM_CLASS = Now_DT_VS_Group[i].Rows[j]["ITEM_CLASS"].ToString();
                        mExamChargeList.CHARGE_ITEM_CODE  = Now_DT_VS_Group[i].Rows[j]["ITEM_CODE"].ToString();
                        mExamChargeList.CHARGE_ITEM_NO    = j + 1;
                        mExamChargeList.CHARGE_ITEM_SPEC  = Now_DT_VS_Group[i].Rows[j]["ITEM_SPEC"].ToString();
                        mExamChargeList.COST              = Convert.ToDecimal(Now_DT_VS_Group[i].Rows[j]["COSTS"].ToString());
                        mExamChargeList.PRICE             = Convert.ToDecimal(Now_DT_VS_Group[i].Rows[j]["PRICE"].ToString());
                        mExamChargeList.EXAM_NO           = mWorkList.EXAM_ACCESSION_NUM;
                        mExamChargeList.EXAM_CONFIRM_TIME = DateTime.Now;
                        mExamChargeList.EXAM_ITEM_CODE    = Now_DT_VS_Group[i].Rows[j]["EXAM_ITEM_CODE"].ToString();
                        mExamChargeList.ITEM_NO           = 0;
                        mExamChargeList.PATIENT_ID        = mWorkList.PATIENT_ID;
                        mExamChargeList.UNITS             = Now_DT_VS_Group[i].Rows[j]["UNITS"].ToString();
                        mExamChargeList.CHARGE_ITEM_NAME  = Now_DT_VS_Group[i].Rows[j]["ITEM_NAME"].ToString();
                        mExamChargeList.EXAM_ITEM_NO      = i;
                        ht.Add(j, mExamChargeList);
                    }
                    if (ht.Count > 0)
                    {
                        j = bExamChargeList.AddMore(ht);
                    }
                    if (j < 0)
                    {
                        return(false);
                    }
                }
            }
            Now_DT_VS_Old.Rows.Clear();//清空旧选中检查项目与价表项目的对照表
            for (i = 0; i < Now_DT_VS_Group.Count; i++)
            {
                if (Now_DT_VS_Group[i] != null)
                {
                    for (j = 0; j < Now_DT_VS_Group[i].Rows.Count; j++)
                    {
                        Now_DT_VS_Old.Rows.Add(new object[] {
                            Now_DT_VS_Group[i].Rows[j]["CLASS_NAME"].ToString(),
                            Now_DT_VS_Group[i].Rows[j]["ITEM_CLASS"].ToString(),
                            Now_DT_VS_Group[i].Rows[j]["ITEM_NAME"].ToString(),
                            Now_DT_VS_Group[i].Rows[j]["ITEM_SPEC"].ToString(),
                            Now_DT_VS_Group[i].Rows[j]["AMOUNT"].ToString(),
                            Now_DT_VS_Group[i].Rows[j]["UNITS"].ToString(),
                            Now_DT_VS_Group[i].Rows[j]["PRICE"].ToString(),
                            Now_DT_VS_Group[i].Rows[j]["EXAM_ITEM_CODE"].ToString(),
                            Now_DT_VS_Group[i].Rows[j]["ITEM_CODE"].ToString(),
                            Now_DT_VS_Group[i].Rows[j]["COSTS"].ToString(),
                            Now_DT_VS_Group[i].Rows[j]["CHARGES"].ToString(),
                            Now_DT_VS_Group[i].Rows[j]["CHARGE_ITEM_NO"].ToString()
                        });
                    }
                }
            }
            return(true);
        }