/// <summary> /// 创建门诊预存订单 /// </summary> /// <param name="openid">用户标识</param> /// <param name="patientname">病人姓名</param> /// <param name="patientidcardno">病人身份证号</param> /// <param name="cardno">就诊卡卡号</param> /// <param name="subject">标题</param> /// <param name="money">金额</param> /// <param name="tradeno">订单号</param> /// <param name="msg">出错信息</param> /// <returns>0:成功 大于0:出错 小于0:异常</returns> public int DB_CreateOrder(string openid, string patientname, string patientidcardno, string cardno, string patientid, string subject, double money, double tkje, string patienttype, out long tradeno, out string msg) { msg = ""; tradeno = -1; int ret = 99; if (patienttype == "1") { if (!IsValidCardno(patientid, cardno, out msg)) { return(ret); } } if (!IsSupportPayment(patienttype)) { msg = "医院暂时不支持该功能的使用"; ret = 18; return(ret); } if (!IsAmountAbnormal(patienttype, money)) { msg = "充值金额异常或超过限定额度"; return(19); } //产生日期 DateTime _cssj; if (DB_Sysdate(out _cssj) == false) { msg = "读取服务器系统时间出错"; return(20); } //产生医院订单流水号 tradeno = YylshSeq(); if (tradeno <= 0) { msg = "订单流水号产生失败"; return(21); } string logMsg = " yylsh : " + tradeno + " czje : " + money + " tkje : " + tkje + " ddzt : " + 0 + " jyfs : " + 10 + " bkhm : " + cardno + " brid : " + patientid + " cssj : " + _cssj.ToString("yyyy-MM-dd HH:mm:ss") + " czsj : " + _cssj.ToString("yyyy-MM-dd HH:mm:ss") + " brlx : " + patienttype + " 。"; UtilLog.GetInstance().WriteOrderLog("创建订单成功: ", logMsg); OracleConnection connection = new OracleConnection(WebConfigParameter.ConnectionHisString); try { string insertSql = _builder.CreateOrderforAlipaySql(tradeno, money, tkje, patienttype, cardno, patientid, _cssj, patientidcardno, "", patientname, subject, openid); ArrayList listSql = new ArrayList(); listSql.Add(insertSql); DbHelperOra.ExecuteSqlTran(listSql, connection); msg = "订单已经成功创建"; ret = 00; } catch (Exception ex) { UtilLog.GetInstance().WriteProgramLog(System.Reflection.MethodBase.GetCurrentMethod().Name, ex); msg = GetExceptionInfo(ex); logMsg += " , 异常信息: " + msg + " 。"; UtilLog.GetInstance().WriteOrderLog("创建订单失败: ", logMsg); return(-1); } finally { connection.Close(); } return(ret); }