Exemple #1
0
        /// <summary>
        /// 查询门诊明细信息
        /// </summary>
        /// <param name="sqlParam">处方号 REC_NO</param>
        public static void selectZYMX(Dictionary <string, string> sqlParam)
        {
            //--门诊明细信息
            string sql =
                " select "
                + " a.rec_no, "                                                                        //	--处方号
                + " a.item_code,"                                                                      //--HIS项目编码
                + " a.price,"                                                                          //	--HIS项目单价
                + " a.qty,	"                                                                          //	--项目数量
                + " a.total,	"                                                                      //--项目总金额
                + " b.item_name,"                                                                      //	--HIS项目名称
                + " b.item_cls,"                                                                       //	--项目类型(1,2,3:药品 4,5,6,7,8,9:其他)
                + " c.standard,"                                                                       //	--规格
                + " c.small_unit, "                                                                    //	--单位
                + " d.DR_CODE,	"                                                                      //--开单医生
                + " (select oper_name from code_operator where oper_code=d.dr_code) as oper_name, "    //--医生名称
                + " d.dept_code,"                                                                      //	--开单科室
                + " (select dept_name from CODE_DEPARTMENT where dept_code=d.dept_code) as dept_name " //--科室名称
                + " from CL_RECENTRY a,code_item b,plus_item c ,cl_recipe d "                          //
                + " where a.item_code<>'9999' "                                                        //
                + " and a.row_status='0' and a.rec_no='$REC_NO$' "                                     //此处替换处方号(带空格)
                + " and a.rec_no = d.REC_NO"
                + " and a.item_code=b.item_code and b.item_code=c.item_code and c.type=2";

            try
            {
                sql = sql.Replace("$REC_NO$", (sqlParam.ContainsKey("REC_NO") == true ? sqlParam["REC_NO"] : ""));
                DataTable dt = DBUtil.queryExecute(sql);
            }
            catch (Exception ex)
            {
                XnhLogger.log(ex.ToString() + " SQL:" + sql);
            }
        }
Exemple #2
0
        /// <summary>
        /// 更新数据库操作
        /// </summary>
        /// <param name="updateSql">更新SQL</param>
        /// <returns>修改的行数</returns>
        public static int updateExecute(string updateSql)
        {
            OracleConnection conn = null;
            OracleCommand    cmd  = null;

            try
            {
                conn = new OracleConnection(oracleConnString);
                conn.Open();
                cmd = new OracleCommand(updateSql, conn);
                return(cmd.ExecuteNonQuery());
            }
            catch (Exception ex)
            {
                XnhLogger.log("DBUtil.updateExecute" + ex.ToString());
            }
            finally
            {
                if (cmd != null)
                {
                    cmd.Dispose();
                }
                if (conn != null)
                {
                    conn.Close();
                }
            }

            return(-1);
        }
        public string upload()
        {
            string retStr = "";

            try
            {
                //单独传明细(调用保存药品交易)
                RJZ_Save_Row saveRow = new RJZ_Save_Row();
                Dictionary <string, string> paramDict = new Dictionary <string, string>();
                paramDict.Add("D505_02", "");     //住院登记流水号
                paramDict.Add("COME_AREA", "");   //地区代码(医疗机构)
                paramDict.Add("AREA_CODE", "");   //病人地区编码(取前台选择的地区编码)
                paramDict.Add("D505_04", "");     //收费项目编码组合(此处因药品可能是多个,药品编码和下一个药品编码用分号分隔(下面的数量、单价、比例、收费项目唯一ID也一样)
                paramDict.Add("D505_08", "");     //收费项目数量组合
                paramDict.Add("D505_07", "");     //收费项目单价组合
                paramDict.Add("D505_09", "");     //收费项目比例组合
                paramDict.Add("D505_ID_HIS", ""); //收费项目唯一ID组合(对应HIS)
                paramDict.Add("USER_ID", "");     //当前操作员id
                paramDict.Add("D504_14", "");     //诊治单位代码
                paramDict.Add("USER_NAME", "");   //操作员姓名
                paramDict.Add("LEVEL", "");       //诊治单位级别

                saveRow.executeSql(paramDict);

                Dictionary <string, string> retDict = saveRow.getResponseResultWrapperMap();
            }
            catch (Exception ex)
            {
                XnhLogger.log(this.GetType().ToString() + " " + ex.StackTrace);
            }

            return(retStr);
        }
Exemple #4
0
        //create table zybc
        //(D401_10   VARCHAR2(18),  医疗证号
        // D401_21   CHAR(2),       成员序号
        // D504_01   VARCHAR2(24),  住院登记流水号(打印住院补偿凭据用到)
        // D504_21   VARCHAR2(40)   入院诊断  (费用上传会用)
        //)

        /// <summary>
        /// 根据选择的人员来来显示基础人员信息存储成员序号、医疗证号
        /// </summary>
        /// <param name="sqlParam"></param>
        public static void insertZYBC(Dictionary <string, string> sqlParam)
        {
            if (sqlParam == null || sqlParam.Count == 0)
            {
                XnhLogger.log("insertZYBC sqlParam参数为空");
                return;
            }

            string sql = "insert into zybc(D401_10,D401_21,D504_21,D504_01,AREA_CODE) " +
                         "select '$D401_10$','$D401_21$','$D504_01$','$D504_21$','$AREA_CODE$' from dual "
                         + "where not exists (select * from zybc t where t.D401_10='$D401_10$' and t.D401_21='$D401_21$' )";

            try
            {
                sql = sql.Replace("$D401_10$", (sqlParam.ContainsKey("D401_10") == true ? sqlParam["D401_10"] : ""));
                sql = sql.Replace("$D401_21$", (sqlParam.ContainsKey("D401_21") == true ? sqlParam["D401_21"] : ""));
                sql = sql.Replace("$D504_21$", (sqlParam.ContainsKey("D504_21") == true ? sqlParam["D504_21"] : ""));
                sql = sql.Replace("$D504_01$", (sqlParam.ContainsKey("D504_01") == true ? sqlParam["D504_01"] : ""));
                sql = sql.Replace("$AREA_CODE$", (sqlParam.ContainsKey("AREA_CODE") == true ? sqlParam["AREA_CODE"] : ""));


                DBUtil.updateExecute(sql);
            }
            catch (Exception ex)
            {
                XnhLogger.log(ex.ToString() + " SQL:" + sql);
            }
        }
        public string getMemberInfoDetail(string USER_ID, string AREA_NO, string D401_21)
        {
            string retStr = "";

            try
            {
                //根据USER_ID获取缓存的新医疗卡号信息
                string D401_10 = BufferUtil.getBufferByKey(USER_ID, "D401_10");
                //查询成员基本信息
                MZBC_Get_Member_Information getMemberInfo = new MZBC_Get_Member_Information();
                getMemberInfo.executeSql(
                    new Dictionary <string, string>()
                {
                    { "AREA_NO", AREA_NO }, { "D401_10", D401_10 }, { "D401_21", D401_21 }
                }
                    );
                Dictionary <string, string> memberBaseInfo = getMemberInfo.getResponseResultWrapperMap(); //成员基本信息
                retStr = DataConvert.Dict2Json(memberBaseInfo);
                retStr = DataConvert.getReturnJson("0", retStr);
            }
            catch (Exception ex)
            {
                XnhLogger.log(this.GetType().ToString() + " " + ex.StackTrace);
                retStr = DataConvert.getReturnJson("-1", ex.ToString());
            }
            return(retStr);
        }
Exemple #6
0
        /// <summary>
        /// 入院登记保存时存储入院诊断、住院登记流水号
        /// </summary>
        /// <param name="sqlParam"></param>
        public static void bcZYBC(Dictionary <string, string> sqlParam)
        {
            if (sqlParam == null || sqlParam.Count == 0)
            {
                XnhLogger.log("bcZYBC sqlParam参数为空");
                return;
            }
            //UPDATE zybc SET D504_21=D504_21,D504_01=D504_01 WHERE D401_10 = D401_10 AND D401_21 = D401_21;
            string sql = "UPDATE zybc t SET t.D504_21='$D504_21$',t.D504_01='$D504_01$',t.D504_09='$D504_09$' WHERE t.D401_10 = '$D401_10$' AND t.D401_21 = '$D401_21$'";

            try
            {
                sql = sql.Replace("$D401_10$", (sqlParam.ContainsKey("D401_10") == true ? sqlParam["D401_10"] : "")); //医疗证号
                sql = sql.Replace("$D401_21$", (sqlParam.ContainsKey("D401_21") == true ? sqlParam["D401_21"] : "")); //成员序号

                sql = sql.Replace("$D504_21$", (sqlParam.ContainsKey("D504_21") == true ? sqlParam["D504_21"] : "")); //疾病代码
                sql = sql.Replace("$D504_01$", (sqlParam.ContainsKey("D504_01") == true ? sqlParam["D504_01"] : "")); //住院登记流水号(农合返回的)
                sql = sql.Replace("$D504_09$", (sqlParam.ContainsKey("D504_09") == true ? sqlParam["D504_09"] : "")); //住院号

                DBUtil.updateExecute(sql);
            }
            catch (Exception ex)
            {
                XnhLogger.log(ex.ToString() + " SQL:" + sql);
            }
        }
        public string getRYZD(string query)
        {
            string retStr = "";

            try
            {
                //触发模糊查询的语句
                string sql = "select t.BZ_CODE from XCYB_ML_ZG_BZML t where t.bz_name like '%" + query + "%'"
                             + " or t.py_code like '%" + query + "%'";

                //如果要限制返回结果的条数,比如限制每次返回前10条
                //select t.BZ_CODE from XCYB_ML_ZG_BZML t where ( t.bz_name like '%1%' or t.py_code like '%1%') and rownum < 11
                string sqlLimit = "select t.BZ_CODE from XCYB_ML_ZG_BZML t where (t.bz_name like '%" + query + "%'"
                                  + " or t.py_code like '%" + query + "%') and rownum < 11";

                //返回查询结果,供前台绑定
                DataTable dt = DBUtil.queryExecute(sql);
                if (dt != null && dt.Rows.Count > 0)
                {
                    foreach (DataRow dr in dt.Rows)
                    {
                        retStr += dr["BZ_CODE"].ToString() + ",";
                    }

                    retStr = retStr.Substring(0, retStr.Length - 1);
                }
            }
            catch (Exception ex)
            {
                XnhLogger.log(this.GetType().ToString() + " " + ex.StackTrace);
                retStr = DataConvert.getReturnJson("-1", ex.ToString());
            }
            return(retStr);
        }
        public string bclb(string AREA_NO)
        {
            string retStr = "";

            try
            {
                RJZ_Get_S301_06_Zy zy = new RJZ_Get_S301_06_Zy();
                zy.executeSql(new Dictionary <string, string>()
                {
                    { "AREA_NO", AREA_NO }
                });

                if (zy.getExecuteStatus() == true && zy.getExecuteResultPlainString().Length > 2)
                {
                    // 0	成功
                    // 1	失败  未找到该信息
                    // 成功返回:
                    // S_Returns=0;ITEM_CODE/ ITEM_NAME; ITEM_CODE/ ITEM_NAME
                    // ITEM_CODE:VARCHAR2(3)   补偿类别编码
                    // ITEM_NAME:VARCHAR2(64)  补偿类别名称
                    retStr = DataConvert.getReturnJson("0", zy.getExecuteResultPlainString().Substring(2));
                }
                else
                {
                    retStr = DataConvert.getReturnJson("-1", zy.getExecuteResultPlainString());
                }
            }
            catch (Exception ex)
            {
                XnhLogger.log(this.GetType().ToString() + " " + ex.StackTrace);
                retStr = DataConvert.getReturnJson("-1", ex.ToString());
            }
            return(retStr);
        }
Exemple #9
0
        /// <summary>
        /// 存储住院结算返回费用,后期做报表
        /// create table ZYJS
        ///  ( NAME     VARCHAR2(16), -- 姓名()
        ///    IP_NO    VARCHAR2(24), -- 住院号()
        ///    D504_01   VARCHAR2(24),--  住院登记流水号
        ///    TOTAL_COSTS  NUMBER(8,2), -- 住院总费用
        ///     ZF_COSTS   NUMBER(8,2),    --自费金额
        ///    TOTAL_CHAGE  NUMBER(8,2),  -- 住院可补偿金额
        ///    D506_23    NUMBER(8,2),  --  实际补偿额
        ///   D506_18   NUMBER(8,2),   -- 核算补偿金额
        ///   BEGINPAY  NUMBER(8,2),     --起伏线
        ///   SCALE	   NUMBER(3,2),	     --报销比例
        ///    HEAV_REDEEM_SUM  NUMBER(8,2),   --大病支付金额
        ///    REDEEM_TOTAL	NUMBER(8,2),	  --单次补偿合计
        ///    BILL_TIME CHAR(30),     --结算时间(取结算系统时间)
        ///    AREA_CODE      VARCHAR2(24)    --地区编码
        ///   )
        /// </summary>
        /// <param name="sqlParam"></param>
        public static void CCZYJS(Dictionary <string, string> sqlParam)
        {
            if (sqlParam == null || sqlParam.Count == 0)
            {
                XnhLogger.log("ZYJS sqlParam参数为空");
                return;
            }
            string sql = "insert into ZYJS(NAME,IP_NO,D504_01,TOTAL_COSTS,ZF_COSTS,TOTAL_CHAGE,D506_23,D506_18,BEGINPAY,HEAV_REDEEM_SUM,BILL_TIME,AREA_CODE) "
                         + "values ('$NAME$','$IP_NO$','$D504_01$','$TOTAL_COSTS$','$ZF_COSTS$','$TOTAL_CHAGE$','$D506_23$','$D506_18$','$BEGINPAY$','$HEAV_REDEEM_SUM$','$BILL_TIME$','$AREA_CODE$')";

            try
            {
                sql = sql.Replace("$NAME$", (sqlParam.ContainsKey("NAME") == true ? sqlParam["NAME"] : ""));
                sql = sql.Replace("$IP_NO$", (sqlParam.ContainsKey("IP_NO") == true ? sqlParam["IP_NO"] : ""));
                sql = sql.Replace("$D504_01$", (sqlParam.ContainsKey("D504_01") == true ? sqlParam["D504_01"] : ""));
                sql = sql.Replace("$TOTAL_COSTS$", (sqlParam.ContainsKey("TOTAL_COSTS") == true ? sqlParam["TOTAL_COSTS"] : ""));
                sql = sql.Replace("$ZF_COSTS$", (sqlParam.ContainsKey("ZF_COSTS") == true ? sqlParam["ZF_COSTS"] : ""));
                sql = sql.Replace("$TOTAL_CHAGE$", (sqlParam.ContainsKey("TOTAL_CHAGE") == true ? sqlParam["TOTAL_CHAGE"] : ""));
                sql = sql.Replace("$D506_23$", (sqlParam.ContainsKey("D506_23") == true ? sqlParam["D506_23"] : ""));
                sql = sql.Replace("$D506_18$", (sqlParam.ContainsKey("D506_18") == true ? sqlParam["D506_18"] : ""));
                sql = sql.Replace("$BEGINPAY$", (sqlParam.ContainsKey("BEGINPAY") == true ? sqlParam["BEGINPAY"] : ""));
                sql = sql.Replace("$SCALE$", (sqlParam.ContainsKey("SCALE") == true ? sqlParam["SCALE"] : ""));
                sql = sql.Replace("$HEAV_REDEEM_SUM$", (sqlParam.ContainsKey("HEAV_REDEEM_SUM") == true ? sqlParam["HEAV_REDEEM_SUM"] : ""));
                sql = sql.Replace("$REDEEM_TOTAL$", (sqlParam.ContainsKey("REDEEM_TOTAL") == true ? sqlParam["REDEEM_TOTAL"] : ""));
                sql = sql.Replace("$BILL_TIME$", (sqlParam.ContainsKey("BILL_TIME") == true ? sqlParam["BILL_TIME"] : ""));
                sql = sql.Replace("$AREA_CODE$", (sqlParam.ContainsKey("AREA_CODE") == true ? sqlParam["AREA_CODE"] : ""));
                DBUtil.updateExecute(sql);
            }
            catch (Exception ex)
            {
                XnhLogger.log(ex.ToString() + " SQL:" + sql);
            }
        }
Exemple #10
0
        ///以对吗
        public static DataTable fetchHIS2()
        {
            string sql = "";

            try
            {
                sql = "select * from (select a.item_code,  "                                                                                    //--his编码
                      + "a.item_name,  "                                                                                                        // --his项目名称
                      + "(select wydm from xnh_dm where xnh_dm.item_code = a.item_code) as nh_code, "                                           //  --农合中心编码
                      + " (select ypmc from xnh_ypzl,xnh_dm where xnh_ypzl.wydm = xnh_dm.wydm and xnh_dm.item_code = a.item_code) as nh_name, " //--农合名称
                      + " a.item_cls, "                                                                                                         //--项目类别123药品,其他诊疗
                      + " a.py_code, "                                                                                                          // --拼音码
                      + " b.standard, "                                                                                                         //--规格
                      + "b.small_unit, "                                                                                                        //  --单位
                      + " b.ret_price  "                                                                                                        //  --价格
                      + " from code_item a,plus_item b "
                      + " where b.type = '3' and a.item_code = b.item_code order by a.item_code) h where h.nh_code is not null";
                DataTable dt = DBUtil.queryExecute(sql);
                return(dt);
            }
            catch (Exception ex)
            {
                XnhLogger.log("his药品数据提取:sql=" + sql + " 异常:" + ex.StackTrace);
            }
            return(null);
        }
Exemple #11
0
        ///提取农合药品编码
        /// </summary>
        public static DataTable fetchXNH(string ypdm)
        {
            string sql = "";

            try
            {
                sql = "select  cxgjz, " // --拼音码
                      + "wydm, "        //--农合中心编码
                      + " ypfl,"        //--药品分类
                      + " ypmc, "       //--药品名称
                      + " gg, "         //--规格
                      + " dw, "         //--单位
                      + " dj, "         //--单价
                      + " bxbl, "       //--报销比例
                      + " bnbw, "       //--1报内0保外
                      + "jyl, "         //--甲乙类(0:甲类,1乙类,2:不区分)
                      + "jyfjy "        //--基药非基药(0:基药 1:非基药)
                      + " from xnh_ypzl a "
                      + " where a.cxgjz like '%" + ypdm + "%' or a.wydm like '%" + ypdm + "%' or a.ypmc like '%" + ypdm + "%' ";
                DataTable dt = DBUtil.queryExecute(sql);
                return(dt);
            }
            catch (Exception ex)
            {
                XnhLogger.log("农合药品数据提取:sql=" + sql + " 异常:" + ex.StackTrace);
            }
            return(null);
        }
Exemple #12
0
        /// <summary>
        /// 数据库查询
        /// </summary>
        /// <param name="querySql">查询SQL</param>
        /// <returns>DataTable</returns>
        public static DataTable queryExecute(string querySql)
        {
            OracleConnection conn = null;
            OracleCommand    cmd  = null;

            try
            {
                conn = new OracleConnection(oracleConnString);
                conn.Open();
                cmd = new OracleCommand(querySql, conn);
                OracleDataAdapter oda = new OracleDataAdapter(cmd);
                DataTable         dt  = new DataTable();
                oda.Fill(dt);
                return(dt);
            }
            catch (Exception ex)
            {
                XnhLogger.log("DBUtil.queryExecute" + ex.ToString());
            }
            finally
            {
                if (cmd != null)
                {
                    cmd.Dispose();
                }
                if (conn != null)
                {
                    conn.Close();
                }
            }

            return(null);
        }
        public string zydj(string user_id)
        {
            string retStr = "";

            try
            {
                ZYBC_PROC_NEW_NOTICE        newNotice = new ZYBC_PROC_NEW_NOTICE();
                Dictionary <string, string> paramDict = new Dictionary <string, string>();
                //todo:参数需要HIS传值
                paramDict.Add("COME_AREA", ""); //医疗机构所在地区编码(取用户所在机构地区编码AREA_CODE)
                paramDict.Add("AREA_CODE", ""); //地区代码(病人所在地区编码)取前台选择的地区编码
                paramDict.Add("D401_10", "");   //医疗证号
                paramDict.Add("D504_02", "");   //个人编号
                paramDict.Add("D504_03", "");   //姓名
                paramDict.Add("D504_04", "");   //性别(1:男 2:女)传代码
                paramDict.Add("D504_05", "");   //身份证号
                paramDict.Add("D504_06", "");   //年龄
                paramDict.Add("D504_21", "");   //疾病代码
                paramDict.Add("D504_09", "");   //住院号
                paramDict.Add("D504_10", "");   //就诊类型代码(对应s301_05.xls)
                paramDict.Add("D504_11", "");   //入院时间(格式为YYYY-MM-DD)
                paramDict.Add("D504_14", "");   //就医机构代码=DEP_ID
                paramDict.Add("D504_19", "");   //入院状态代码 (对应S301-02.xls)
                paramDict.Add("D504_16", "");   //入院科室代码(对应S201-03.xls)
                paramDict.Add("D504_28", "");   //病人联系电话

                newNotice.executeSql(paramDict);
                if (newNotice.getExecuteStatus() == true)
                {
                    //保存成功:S_Returns= 0;D504_01
                    //D504_01:VARCHAR2(24)  住院登记流水号
                    //保存失败: S_Returns= 1;错误信息  (分号分隔)
                    Dictionary <string, string> dictRet = newNotice.getResponseResultWrapperMap();
                    string D504_01 = dictRet["D504_01"];
                    //缓存住院登记流水号D504_01
                    BufferUtil.setBuffer(user_id, "D504_01", D504_01);
                    retStr = DataConvert.getReturnJson("0", "success");
                }
                else
                {
                    retStr = DataConvert.getReturnJson("-1", "fail");
                }
            }
            catch (Exception ex)
            {
                XnhLogger.log(this.GetType().ToString() + " " + ex.StackTrace);
                retStr = DataConvert.getReturnJson("-1", ex.ToString());
            }
            return(retStr);
        }
        public string qxzydj(string user_id)
        {
            string retStr = "";

            try
            {
                //retStr = DataConvert.getReturnJson("0", user_id);
            }
            catch (Exception ex)
            {
                XnhLogger.log(this.GetType().ToString() + " " + ex.StackTrace);
                retStr = DataConvert.getReturnJson("-1", ex.ToString());
            }
            XnhLogger.log(retStr);
            return(retStr);
        }
        public string plcmx(string data)
        {
            string retStr = "";

            try
            {
                //todo:由HIS提供字段信息
                retStr = DataConvert.getReturnJson("-1", "data=" + data + " 待由HIS提供字段数据");
            }
            catch (Exception ex)
            {
                XnhLogger.log(this.GetType().ToString() + " " + ex.StackTrace);
                retStr = DataConvert.getReturnJson("-1", ex.ToString());
            }
            return(retStr);
        }
        public string czlpcx(string query)
        {
            string retStr = "";

            try
            {
                //todo:由HIS提供视图或查询字段绑定
                retStr = DataConvert.getReturnJson("-1", "query=" + query + " 冲正理赔查询待由HIS提供视图或查询字段完成数据绑定");
            }
            catch (Exception ex)
            {
                XnhLogger.log(this.GetType().ToString() + " " + ex.StackTrace);
                retStr = DataConvert.getReturnJson("-1", ex.ToString());
            }
            return(retStr);
        }
        public string login(string name, string pwd)
        {
            string retVal = "";

            try
            {
                //todo:HIS系统先验证用户名和密码

                //调用接口认证
                LoginAuth service = new LoginAuth();

                //直接塞参数进入Dictionary,由框架自动组装顺序
                Dictionary <string, string> requestParam = new Dictionary <string, string>();
                requestParam.Add("USER_CODE", name);
                requestParam.Add("USER_PASS", pwd);

                //使用executeSql重载的Dictionary参数方法
                string response = service.executeSql(requestParam);
                Dictionary <string, string> responseDict = service.getResponseResultWrapperMap();
                //登录失败
                if (service.getExecuteStatus() == false)
                {
                    retVal = "";
                    //记日志
                    XnhLogger.log(this.GetType().ToString() + service.getExecuteResultPlainString());
                }
                else
                {
                    //登录成功,缓存用户信息,服务器缓存以每个用户的user_id作为区分的cookie
                    string user_id = responseDict["USER_ID"];
                    foreach (KeyValuePair <string, string> item in responseDict)
                    {
                        BufferUtil.setBuffer(user_id, item.Key, item.Value);
                    }

                    retVal = MsgConvert.Dict2Json(responseDict);
                }
            }
            catch (Exception ex)
            {
                XnhLogger.log(this.GetType().ToString() + " " + ex.StackTrace);
                retVal = "";
            }

            return(retVal);
        }
        public string getBCLB(string AREA_NO)
        {
            try
            {
                MZBC_Get_S301_06 s301 = new MZBC_Get_S301_06();
                //补偿类别返回结果 0;ITEM_CODE/ITEM_NAME;ITEM_CODE/ITEM_NAME
                string retStr = s301.executeSql(new Dictionary <string, string>()
                {
                    { "AREA_NO", AREA_NO }
                });
                //返回格式ITEM_CODE/ITEM_NAME;ITEM_CODE/ITEM_NAME
                return((string)s301.getResponseResultOtherWrapper());
            }catch (Exception ex)
            {
                XnhLogger.log(this.GetType().ToString() + " getBCLB " + ex.StackTrace);
            }

            return("");
        }
Exemple #19
0
        public static DataTable getMZMX(Dictionary <string, string> sqlParam)
        {
            DataTable dt  = null;
            string    sql = "";

            try
            {
                //门诊明细信息
                sql =
                    "select"
                    + " a.rec_no,"                                                                                                          //处方号
                    + " a.item_code,"                                                                                                       //HIS项目编码
                    + " a.price,"                                                                                                           //HIS项目单价
                    + "(select wydm from xnh_dm where xnh_dm.item_code = b.item_code ) as nh_bm, "                                          // --农合编码
                    + "(select bxbl from xnh_ypzl ,xnh_dm where xnh_ypzl.wydm = xnh_dm.wydm and xnh_dm.item_code = b.item_code) as nh_bnw," //报销比例
                    + " a.qty,"                                                                                                             //项目数量
                    + " a.total,"                                                                                                           //项目总金额
                    + " b.item_name,"                                                                                                       //HIS项目名称
                    + " b.item_cls,"                                                                                                        //项目类型(1,2,3:药品 4,5,6,7,8,9:其他)
                    + " c.standard,"                                                                                                        //规格
                    + " c.small_unit,"                                                                                                      //单位
                    + " d.DR_CODE,"                                                                                                         //开单医生
                    + " (select oper_name from code_operator where oper_code=d.dr_code) as oper_name,"                                      //医生名称
                    + " d.dept_code,"                                                                                                       //开单科室
                    + " (select dept_name from CODE_DEPARTMENT where dept_code=d.dept_code) as dept_name"                                   //科室名称
                    + " from CL_RECENTRY a,code_item b,plus_item c ,cl_recipe d"
                    + " where a.item_code<>'9999'"
                    + " and a.row_status='0' and a.rec_no='$REC_NO$' and a.item_code = '$ITEM_CODE$' "
                    + " and a.rec_no = d.REC_NO"
                    + " and a.item_code=b.item_code and b.item_code=c.item_code and c.type=2";

                sql = sql.Replace("$REC_NO$", (sqlParam.ContainsKey("REC_NO") == true ? sqlParam["REC_NO"] : ""));
                sql = sql.Replace("$ITEM_CODE$", (sqlParam.ContainsKey("ITEM_CODE") == true ? sqlParam["ITEM_CODE"] : ""));

                dt = DBUtil.queryExecute(sql);
            }
            catch (Exception ex)
            {
                XnhLogger.log("sql=" + sql + " 异常:" + ex.ToString());
            }

            return(dt);
        }
Exemple #20
0
        ///门诊冲正删除存储的费用信息
        /// </summary>
        public static void deleteCCMZJS(Dictionary <string, string> sqlParam)
        {
            if (sqlParam == null || sqlParam.Count == 0)
            {
                XnhLogger.log("deleteCCMZJS sqlParam参数为空");
                return;
            }
            string sql = "delete from MZJS where T_D502_01 = T_D502_01 and D401_02 = D401_02";

            try
            {
                sql = sql.Replace("$T_D502_01$", (sqlParam.ContainsKey("T_D502_01") == true ? sqlParam["T_D502_01"] : ""));
                sql = sql.Replace("$D401_02$", (sqlParam.ContainsKey("D401_02") == true ? sqlParam["D401_02"] : ""));
                DBUtil.updateExecute(sql);
            }
            catch (Exception ex)
            {
                XnhLogger.log(ex.ToString() + " SQL:" + sql);
            }
        }
        public string charge(string user_id, string DIAGNOSIS_CODE)
        {
            try
            {
                //(1)收费
                RJZ_shoufei shoufei = new RJZ_shoufei();
                Dictionary <string, string> paramDict = new Dictionary <string, string>();
                paramDict.Add("AREA_CODE", "");       //病人地区编码(取前台选择的地区编码)
                paramDict.Add("D504_01", "");         //住院登记流水号
                paramDict.Add("D504_12", "");         //出院时间(格式为YYYY-MM-DD)
                paramDict.Add("D504_15", "");         //就医机构级别(相关数据代码标准:S201-06)
                paramDict.Add("D504_17", "");         //出院科室(相关数据代码标准:S201-03)
                paramDict.Add("D504_18", "");         //经治医生
                paramDict.Add("D504_20", "");         //出院状态(相关数据代码标准:S301-03)
                paramDict.Add("D504_22", "");         //并发症(为空时传’NULL’)
                paramDict.Add("D506_03", "");         //总费用(TOTAL_COSTS 总费用)试算得到
                paramDict.Add("D506_13", "");         //可补偿住院医药费(TOTAL_CHAGE 合理费用)试算得到
                paramDict.Add("D506_18", "");         //核算补偿金额(D506_18  核算补偿金额(实际补偿合计额))试算得到
                paramDict.Add("D506_15", "");         //补偿类别代码
                paramDict.Add("D506_14", "");         //补偿账户类别(相关数据代码标准:S301-09)
                paramDict.Add("D506_16", "");         //核算机构(代码)
                paramDict.Add("D506_17", "");         //核算人
                paramDict.Add("D506_23", "");         //实际补偿额(D506_23   实际补偿金额)试算得到
                paramDict.Add("D506_26", "");         //付款人
                paramDict.Add("D506_27", "");         //中途结算标志(相关数据代码标准:S701-01)
                paramDict.Add("SELF_PAY", "");        //自费金额(ZF_COSTS  自费费用)试算得到
                paramDict.Add("HEAV_REDEEM_SUM", ""); //大病支付金额(HEAV_REDEEM_SUM  大病支付额)试算得到
                paramDict.Add("BEGINPAY", "");        //本次起付额(BEGINPAY   本次起伏线)试算得到
                paramDict.Add("D504_29", "");         //出院诊断(疾病代码)

                shoufei.executeSql(paramDict);

                //(2)收费成功后将相应的信息保存到数据库中,并修改HIS中补偿标志(供以后制作报表查询使用)
            }
            catch (Exception ex)
            {
                XnhLogger.log(this.GetType().ToString() + " diagnosisCheck " + ex.StackTrace);
            }

            return(null);
        }
Exemple #22
0
        /// <summary>

        ///门诊冲正修改his标记
        /// </summary>
        public static void modifyMZCZBJ(Dictionary <string, string> sqlParam)
        {
            if (sqlParam == null || sqlParam.Count == 0)
            {
                XnhLogger.log("modifyMZCZBJ sqlParam参数为空");
                return;
            }
            string sql = "UPDATE cl_recipe SET yb_up = '0' where rec_no = '$REC_NO$' and reg_no = '$REG_NO$' ";

            try
            {
                sql = sql.Replace("0", (sqlParam.ContainsKey("yb_up") == true ? sqlParam["yb_up"] : ""));
                sql = sql.Replace("$REC_NO$", (sqlParam.ContainsKey("rec_no") == true ? sqlParam["rec_no"] : ""));
                sql = sql.Replace("$REG_NO$", (sqlParam.ContainsKey("reg_no") == true ? sqlParam["reg_no"] : ""));
                DBUtil.updateExecute(sql);
            }
            catch (Exception ex)
            {
                XnhLogger.log(ex.ToString() + " SQL:" + sql);
            }
        }
Exemple #23
0
        /// <summary>
        /// 删除入院登记
        /// </summary>
        /// <param name="sqlParam"></param>
        public static void scZYBC(Dictionary <string, string> sqlParam)
        {
            if (sqlParam == null || sqlParam.Count == 0)
            {
                XnhLogger.log("scZYBC sqlParam参数为空");
                return;
            }
            //delete from zybc  where D504_01 = D504_01;
            string sql = "delete from zybc  where D504_01 = '$D504_01$'";

            try
            {
                sql = sql.Replace("$D504_01$", (sqlParam.ContainsKey("D504_01") == true ? sqlParam["D504_01"] : ""));

                DBUtil.updateExecute(sql);
            }
            catch (Exception ex)
            {
                XnhLogger.log(ex.ToString() + " SQL:" + sql);
            }
        }
        public string delete_item()
        {
            string retStr = "";

            try
            {
                RJZ_PROC_DELETE_PRICE_LIST  deleteList = new RJZ_PROC_DELETE_PRICE_LIST();
                Dictionary <string, string> paramDict  = new Dictionary <string, string>();
                paramDict.Add("AREA_CODE", "");  //病人地区编码(取前台选择的地区编码)
                paramDict.Add("D504_01", "");    //住院登记流水号
                paramDict.Add("START_DATE", ""); //收费项目录入起始时间(为空时传’NULL’) (格式为YYYY-MM-DD)
                paramDict.Add("END_DATE", "");   //收费项目录入结束时间(为空时传’NULL’) (格式为YYYY-MM-DD)

                deleteList.executeSql(paramDict);
            }
            catch (Exception ex)
            {
                XnhLogger.log(this.GetType().ToString() + " " + ex.StackTrace);
            }
            return(retStr);
        }
        public string zuofei()
        {
            string retStr = "";

            try
            {
                //作废单个收费项目
                RJZ_PROC_DELETE_PRICE_LIST_PER deleteListPer = new RJZ_PROC_DELETE_PRICE_LIST_PER();
                Dictionary <string, string>    paramDict     = new Dictionary <string, string>();
                paramDict.Add("AREA_CODE", ""); //病人地区编码(取前台选择的地区编码)
                paramDict.Add("D504_01", "");   //住院登记流水号
                paramDict.Add("HIS_ID", "");    //对应HIS项目唯一ID

                deleteListPer.executeSql(paramDict);
            }
            catch (Exception ex)
            {
                XnhLogger.log(this.GetType().ToString() + " " + ex.StackTrace);
            }
            return(retStr);
        }
        public string getRYZD(string query)
        {
            string retStr = "";

            try
            {
                //触发模糊查询的语句
                string sql = "select t.BZ_CODE from XCYB_ML_ZG_BZML t where t.bz_name like '%" + query + "%'"
                             + " or t.py_code like '%" + query + "%'";
                //如果要限制返回结果的条数,比如限制每次返回前10条
                //select t.BZ_CODE from XCYB_ML_ZG_BZML t where ( t.bz_name like '%1%' or t.py_code like '%1%') and rownum < 11
                string sqlLimit = "select t.BZ_CODE,t.BZ_NAME,t.PY_CODE from XCYB_ML_ZG_BZML t where (t.bz_name like '%" + query + "%'"
                                  + " or t.py_code like '%" + query + "%') and rownum < 21";
                //日志查询后台SQL
                XnhLogger.log(sqlLimit);
                //返回查询结果,供前台绑定
                DataTable dt = DBUtil.queryExecute(sqlLimit);
                if (dt != null && dt.Rows.Count > 0)
                {
                    foreach (DataRow dr in dt.Rows)
                    {
                        string BZ_CODE = dr["BZ_CODE"] as string;
                        string BZ_NAME = dr["BZ_NAME"] as string;
                        string PY_CODE = dr["PY_CODE"] as string;
                        if (string.IsNullOrEmpty(BZ_CODE) == false && BZ_CODE.Trim() != "")
                        {
                            retStr += BZ_CODE.Trim() + "|" + BZ_NAME + "|" + PY_CODE + ",";
                        }
                    }
                    retStr = retStr.Substring(0, retStr.Length - 1);
                }
                //XnhLogger.log(retStr);
            }
            catch (Exception ex)
            {
                XnhLogger.log(this.GetType().ToString() + " " + ex.StackTrace);
                retStr = "查询错误,请查看日志";
            }
            return(retStr);
        }
Exemple #27
0
        /// <summary>
        ///增加取消对码功能
        /// </summary>
        /// <param name="sqlParam"></param>
        public static void qxdmgn(Dictionary <string, string> sqlParam)
        {
            if (sqlParam == null || sqlParam.Count == 0)
            {
                XnhLogger.log("bcZYBC sqlParam参数为空");
                return;
            }
            //UPDATE zybc SET D504_21=D504_21,D504_01=D504_01 WHERE D401_10 = D401_10 AND D401_21 = D401_21;
            string sql = "delete from xnh_dm  where  item_code = '$HIS$' and wydm = '$NH$' ";

            try
            {
                sql = sql.Replace("$HIS$", (sqlParam.ContainsKey("item_code") == true ? sqlParam["item_code"] : ""));
                sql = sql.Replace("$NH$", (sqlParam.ContainsKey("wydm") == true ? sqlParam["wydm"] : ""));

                DBUtil.updateExecute(sql);
            }
            catch (Exception ex)
            {
                XnhLogger.log(ex.ToString() + " SQL:" + sql);
            }
        }
Exemple #28
0
        /// <summary>
        ///增加对码功能
        /// </summary>
        /// <param name="sqlParam"></param>
        public static void zjdmgn(Dictionary <string, string> sqlParam)
        {
            if (sqlParam == null || sqlParam.Count == 0)
            {
                XnhLogger.log("bcZYBC sqlParam参数为空");
                return;
            }

            string sql = "insert into xnh_dm (item_code,wydm) values ('$HIS$','$NH$')";

            try
            {
                sql = sql.Replace("$HIS$", (sqlParam.ContainsKey("HIS") == true ? sqlParam["HIS"] : ""));
                sql = sql.Replace("$NH$", (sqlParam.ContainsKey("NH") == true ? sqlParam["NH"] : ""));

                DBUtil.updateExecute(sql);
            }
            catch (Exception ex)
            {
                XnhLogger.log(ex.ToString() + " SQL:" + sql);
            }
        }
        public string zhyChaxun(string zyh)
        {
            string retStr = "";

            try
            {
                //todo:查询HIS
                string    sql = ""; //查询HIS的SQL
                DataTable dt  = new DataTable();
                dt = DBUtil.queryExecute(sql);

                //todo:返回的DataTable数据,可以通过调用DataTable2Json转为JSON格式,方便前台JavaScript处理和绑定
                string msg = DataConvert.DataTable2Json(dt);
                retStr = DataConvert.getReturnJson("0", msg);
            }
            catch (Exception ex)
            {
                XnhLogger.log(this.GetType().ToString() + " " + ex.StackTrace);
                retStr = DataConvert.getReturnJson("-1", ex.ToString());
            }
            return(retStr);
        }
Exemple #30
0
        ///  查询住院明细
        public static DataTable cxzymx1(string reg_no)
        {
            string sql = "";

            try
            {
                sql = "select "
                      + "b.ip_no, "                                                                                           //--住院号
                      + "a.reg_no, "
                      + "a.item_code, "                                                                                       //--HIS项目编码
                      + "price, "                                                                                             //--HIS项目单价
                      + "(select wydm from xnh_dm where xnh_dm.item_code = a.item_code) as nh_bm, "                           //农合编码
                      + "(select bxbl from xnh_ypzl  where xnh_ypzl.wydm = d.wydm and d.item_code = a.item_code) as nh_bnw, " //--报销比例
                      + "qty, "                                                                                               //--HIS项目数量
                      + "total, "                                                                                             //--HIS项目总价格
                      + "bill_time, "                                                                                         //--记账时间
                      + "a.basic_cls, "                                                                                       //多条同批次缺库存,其他批次收费标志
                      + "pre_no, "                                                                                            //--医嘱编号
                      + "a.up_flag, "                                                                                         //--上传标志
                      + "standard, "                                                                                          //--规格
                      + "small_unit, "                                                                                        //--单位
                      + "(select item_cls from code_item where item_code=a.item_code ) as item_cls, "                         //--项目类型(1,2,3:药品 4,5,6,7,8,9:其他)
                      + "(select item_name from code_item where item_code=a.item_code ) as item_name "                        //--项目名称
                      + "from "
                      + "IP_BILL a left join IP_REGISTER b on a.reg_no=b.reg_no ,plus_item c left join xnh_dm d on c.item_code = d.item_code "
                      + "where "
                      + "c.item_code=a.item_code and c.type=3 and a.reg_no='" + reg_no + "' "
                      + "order by bill_time,a.item_code ";

                DataTable dt = DBUtil.queryExecute(sql);
                return(dt);
            }
            catch (Exception ex)
            {
                XnhLogger.log("查询住院明细:sql=" + sql + " 异常:" + ex.StackTrace);
            }
            return(null);
        }