Exemple #1
0
    protected void Page_Load(object sender, EventArgs e)
    {
        var    requestId = Request["request_id"];
        string result    = string.Empty;
        Dictionary <string, object> dicResult = new Dictionary <string, object>();

        try
        {
            if (requestId.Equals("update_orderstatus"))
            {
                dicResult = UpdateOrdersStatus();
            }
        }
        catch (Exception ex)
        {
            dicResult.Add("response_id", 0);
            dicResult.Add("response_msg", "处理异常!");
            UtilLog.WriteExceptionLog(requestId, ex);
        }
        finally
        {
            if (dicResult.Count > 0)
            {
                result = JsonHelper.ObjectToJson(dicResult);
            }
            else
            {
                result = JsonHelper.ObjectToJson(new Sys.Model.OrderComment());
            }

            UtilLog.WriteTextLog(requestId, result);
            Response.Write(result);
            Response.End();
        }
    }
Exemple #2
0
    /// <summary>
    /// 批量上传图片
    /// </summary>
    public string UploadPhotos()
    {
        var Photos = "";

        try
        {
            if (Request.Files.Count > 0)
            {
                foreach (string str in Request.Files)
                {
                    string path = "";
                    var    file = Request.Files[str];
                    path = Utils.CreateSaveFilePath("/Upload/photos/", Utils.PathFormat.Year_Month);
                    string fileName = DataSecurity.MakeFileRndName() + Utils.GetFileExtName(file.FileName);
                    Photos += path + fileName + ",";
                    file.SaveAs(HttpContext.Current.Server.MapPath(path + fileName));
                }
                Photos = Utils.Strquotes(Photos);
            }
        }
        catch (Exception ex)
        {
            UtilLog.WriteExceptionLog("Upload Error", ex);
            throw;
        }
        return(Photos);
    }
Exemple #3
0
        /// <summary>
        /// 订单创建
        /// </summary>
        /// <param name="ordersList"></param>
        /// <param name="orderTypeList"></param>
        /// <returns></returns>
        public bool CreateOrders(IList <Sys.Model.Orders> ordersList, IList <Sys.Model.OrderType> orderTypeList)
        {
            bool result = false;

            try
            {
                if (ordersList.Count > 0)
                {
                    Model.Orders ordersModel = ordersList[0];
                    ordersModel.CreateDate = DateTime.Now;
                    var orderId = dal.Add(ordersModel, 1);

                    foreach (Model.OrderType item in orderTypeList)
                    {
                        item.OrderId = orderId;
                        new Sys.BLL.OrderType().Add(item);
                    }
                    result = true;
                }
            }
            catch (Exception ex)
            {
                UtilLog.WriteExceptionLog("CreateOrders Error", ex);
            }
            return(result);
        }
Exemple #4
0
        //이벤트 입력
        private int InsFamilyEventJoin(int intUserNo, Int64 intFamilyEventNo, out string strErrMsg)
        {
            int  pl_intRetVal = 0;
            IDas pl_objDas    = null;

            strErrMsg = string.Empty;

            try
            {
                //사용자 정보 조회
                pl_objDas = new IDas();
                pl_objDas.Open(UserGlobal.BOQ_HOST_DAS);
                pl_objDas.CommandType = CommandType.StoredProcedure;
                pl_objDas.CodePage    = 0;

                pl_objDas.AddParam("@pi_intUserNo", DBType.adInteger, intUserNo, 0, ParameterDirection.Input);
                pl_objDas.AddParam("@pi_intFamilyEventNo", DBType.adBigInt, intFamilyEventNo, 0, ParameterDirection.Input);
                pl_objDas.AddParam("@pi_intUserRole", DBType.adTinyInt, 3, 0, ParameterDirection.Input);
                pl_objDas.AddParam("@po_strErrMsg", DBType.adVarChar, DBNull.Value, 256, ParameterDirection.Output);
                pl_objDas.AddParam("@po_intRetVal", DBType.adInteger, DBNull.Value, 4, ParameterDirection.Output);
                pl_objDas.AddParam("@po_strDBErrMsg", DBType.adVarChar, DBNull.Value, 256, ParameterDirection.Output);

                pl_objDas.AddParam("@po_intDBRetVal", DBType.adInteger, DBNull.Value, 4, ParameterDirection.Output);

                pl_objDas.SetQuery("dbo.UP_FAMILY_EVENT_JOIN_TX_INS");

                pl_intRetVal = Convert.ToInt32(pl_objDas.GetParam("@po_intRetVal"));
                strErrMsg    = Convert.ToString(pl_objDas.GetParam("@po_strErrMsg"));
            }
            catch (Exception pl_objEx)
            {
                pl_intRetVal = -15213;
                strErrMsg    = pl_objEx.Message + pl_objEx.StackTrace;
                UtilLog.WriteExceptionLog(pl_objEx.Message, pl_objEx.StackTrace);
            }
            finally
            {
                if (pl_objDas != null)
                {
                    pl_objDas.Close();
                    pl_objDas = null;
                }

                if (!pl_intRetVal.Equals(0))
                {
                    UtilLog.WriteLog("GetUserCurrentPwd", pl_intRetVal, strErrMsg);
                }
            }

            return(pl_intRetVal);
        }
Exemple #5
0
 //-------------------------------------------------------------
 /// <summary>
 /// Name          : Page_Load()
 /// Description   : 페이지 로드
 /// </summary>
 //-------------------------------------------------------------
 protected void Page_Load(object sender, EventArgs e)
 {
     try
     {
         //쿠키 삭제
         UserGlobal.RemoveCookie(UserGlobal.BOQ_DEFAULT_COOKIE);
     }
     catch (Exception pl_objEx)
     {
         UtilLog.WriteExceptionLog(pl_objEx.Message, pl_objEx.StackTrace, false);
     }
     finally
     {
         Response.Redirect(UserGlobal.BOQ_LOGIN_URL);
     }
 }
Exemple #6
0
        /// <summary>
        /// 更新订单状态
        /// </summary>
        /// <param name="ordersId"></param>
        /// <param name="orderStatus"></param>
        /// <param name="staFlag"></param>
        /// <param name="picList"></param>
        /// <param name="staMessage"></param>
        /// <returns></returns>
        public bool UpdateOrdersStatus(int ordersId, int orderStatus, int?staFlag, string picList, string staMessage)
        {
            bool result = false;

            try
            {
                var            sqlStr1     = string.Format("UPDATE dbo.Orders SET OrderStatus=@orderStatus,StatusFlag=@StatusFlag,PicList=@PicList WHERE OrderId=@ordersId");
                SqlParameter[] parameters1 =
                {
                    new SqlParameter("@orderStatus", SqlDbType.VarChar,   1),
                    new SqlParameter("@StatusFlag",  SqlDbType.Int,       4),
                    new SqlParameter("@PicList",     SqlDbType.VarChar, 200),
                    new SqlParameter("@ordersId",    SqlDbType.Int, 4)
                };
                parameters1[0].Value = orderStatus;
                parameters1[1].Value = staFlag;
                parameters1[2].Value = picList;
                parameters1[3].Value = ordersId;
                CommandInfo cmdInfo1 = new CommandInfo()
                {
                    CommandText = sqlStr1, Parameters = parameters1
                };

                var            sqlStr2     = string.Format(@"INSERT INTO dbo.OrderStatusFlow
        ( 
          OrderId ,
          OrderStatus ,
          StatusMessage ,
          StatusFlag ,
          CreateUserId ,
          CreateDate
        )
VALUES  ( 
          @ordersId , -- OrderId - int
          @orderStatus , -- OrderStatus - char(1)
          @staMessage , -- StatusMessage - nvarchar(100)
          @StatusFlag , -- StatusFlag - int
          '' , -- CreateUserId - varchar(50)
          '{0}'
        )", DateTime.Now);
                SqlParameter[] parameters2 =
                {
                    new SqlParameter("@ordersId",    SqlDbType.Int,      4),
                    new SqlParameter("@orderStatus", SqlDbType.VarChar,  1),
                    new SqlParameter("@StatusFlag",  SqlDbType.Int,      4),
                    new SqlParameter("@staMessage",  SqlDbType.NVarChar, 500)
                };
                parameters2[0].Value = ordersId;
                parameters2[1].Value = orderStatus;
                parameters2[2].Value = staFlag;
                parameters2[3].Value = staMessage;
                CommandInfo cmdInfo2 = new CommandInfo()
                {
                    CommandText = sqlStr2, Parameters = parameters2
                };
                List <CommandInfo> listCmd = new List <CommandInfo>();
                listCmd.Add(cmdInfo1);
                listCmd.Add(cmdInfo2);
                DbHelperSQL.ExecuteSqlTran(listCmd);
                result = true;
            }
            catch (Exception ex)
            {
                UtilLog.WriteExceptionLog("UpdateOrdersStatus Error", ex);
            }

            return(result);
        }
Exemple #7
0
    public int InsPGPayLog(out string strErrMsg)
    {
        int    pl_intRetVal        = 0;
        string pl_strCashReceiptNo = string.Empty;
        IDas   pl_objDas           = null;

        strErrMsg = string.Empty;

        try
        {
            pl_objDas = new IDas();
            pl_objDas.Open(UserGlobal.BOQ_HOST_DAS);
            pl_objDas.CommandType = CommandType.StoredProcedure;
            pl_objDas.CodePage    = 0;

            pl_objDas.AddParam("@pi_intFamilyEventNo", DBType.adBigInt, pb_intEventNo, 0, ParameterDirection.Input);
            pl_objDas.AddParam("@pi_intJoinMstCategory", DBType.adTinyInt, pb_intJoinMstCategory, 0, ParameterDirection.Input);
            pl_objDas.AddParam("@pi_intJoinSubCategory", DBType.adTinyInt, pb_intJoinSubCategory, 0, ParameterDirection.Input);
            pl_objDas.AddParam("@pi_intUserNo", DBType.adInteger, objSes.intUserNo, 0, ParameterDirection.Input);
            pl_objDas.AddParam("@pi_intPayAmt", DBType.adDouble, pb_intPayAmt, 0, ParameterDirection.Input);

            pl_objDas.AddParam("@pi_strPGCode", DBType.adVarChar, pb_strPGCode, 50, ParameterDirection.Input);
            pl_objDas.AddParam("@pi_intPayTool", DBType.adTinyInt, pb_intPaytool, 0, ParameterDirection.Input);
            pl_objDas.AddParam("@pi_strPayToolName", DBType.adVarChar, pb_strPaytoolName, 50, ParameterDirection.Input);
            pl_objDas.AddParam("@po_strErrMsg", DBType.adVarChar, DBNull.Value, 256, ParameterDirection.Output);
            pl_objDas.AddParam("@po_intRetVal", DBType.adInteger, DBNull.Value, 0, ParameterDirection.Output);

            pl_objDas.AddParam("@po_strDBErrMsg", DBType.adVarChar, DBNull.Value, 256, ParameterDirection.Output);
            pl_objDas.AddParam("@po_intDBRetVal", DBType.adInteger, DBNull.Value, 0, ParameterDirection.Output);
            pl_objDas.SetQuery("dbo.UP_PAYMENT_TX_INS");

            if (!pl_objDas.LastErrorCode.Equals(0))
            {
                pl_intRetVal = pl_objDas.LastErrorCode;
                strErrMsg    = pl_objDas.LastErrorMessage;
                return(pl_intRetVal);
            }

            strErrMsg    = pl_objDas.GetParam("@po_strErrMsg");
            pl_intRetVal = Convert.ToInt32(pl_objDas.GetParam("@po_intRetVal"));
            if (!pl_intRetVal.Equals(0))
            {
                return(pl_intRetVal);
            }
        }
        catch (Exception pl_objEx)
        {
            pl_intRetVal = -15705;
            strErrMsg    = pl_objEx.Message + pl_objEx.StackTrace;
            UtilLog.WriteExceptionLog(pl_objEx.Message, pl_objEx.StackTrace);
        }
        finally
        {
            if (pl_objDas != null)
            {
                pl_objDas.Close();
                pl_objDas = null;
            }
        }

        return(pl_intRetVal);
    }
Exemple #8
0
        public UserSession()
        {
            string pl_strErrMsg     = string.Empty;
            string pl_strCookieInfo = string.Empty;

            string[]   pl_arrCookieInfo = null;
            HttpCookie pl_objCookie     = null;

            _isLogin = false;

            try
            {
                pl_objCookie = HttpContext.Current.Request.Cookies[UserGlobal.BOQ_DEFAULT_COOKIE];
                if (pl_objCookie == null)
                {
                    pl_strErrMsg = "쿠키 " + UserGlobal.BOQ_DEFAULT_COOKIE + " 조회 실패";
                    _isLogin     = false;
                    return;
                }
                else if (string.IsNullOrEmpty(pl_objCookie.Value))
                {
                    pl_strErrMsg = "쿠키 " + UserGlobal.BOQ_DEFAULT_COOKIE + " 조회 - 빈값";
                    _isLogin     = false;
                    return;
                }

                pl_strCookieInfo = UserGlobal.GetDecryptStr(pl_objCookie.Value);
                if (string.IsNullOrEmpty(pl_strCookieInfo))
                {
                    pl_strErrMsg = "쿠키 " + UserGlobal.BOQ_DEFAULT_COOKIE + " 정보 조회 실패";
                    _isLogin     = false;
                    return;
                }

                pl_arrCookieInfo = pl_strCookieInfo.Split('/');
                if (!pl_arrCookieInfo.Length.Equals(7))
                {
                    pl_strErrMsg = "쿠키 " + UserGlobal.BOQ_DEFAULT_COOKIE + " 상세 정보 조회 실패";
                    _isLogin     = false;
                    return;
                }

                Int32.TryParse(pl_arrCookieInfo[0], out _intUserNo);
                _strUserID   = pl_arrCookieInfo[1];
                _strUserName = pl_arrCookieInfo[2];
                _strPhoneNo  = pl_arrCookieInfo[3];
                Int16.TryParse(pl_arrCookieInfo[4], out _intUserAuth);
                Int16.TryParse(pl_arrCookieInfo[5], out _intUserRole);
                Int16.TryParse(pl_arrCookieInfo[6], out _intStateCode);

                if (!_intUserNo.Equals(0) && !string.IsNullOrEmpty(_strUserID))
                {
                    _isLogin = true;

                    var encFamilyEventNo = HttpContext.Current.Request.QueryString["encfamilyeventno"];

                    if (!string.IsNullOrWhiteSpace(encFamilyEventNo))
                    {
                        Int64 intDecFamilyEventNo = Convert.ToInt64(UserGlobal.GetDecryptStr(encFamilyEventNo));

                        InsFamilyEventJoin(_intUserNo, intDecFamilyEventNo, out pl_strErrMsg);
                    }
                }
            }
            catch (Exception pl_objEx)
            {
                //사용자 정보 초기화
                LogOut();
                UtilLog.WriteExceptionLog(pl_objEx.Message, pl_objEx.StackTrace);
            }
            finally
            {
                pl_objCookie = null;
                if (!_isLogin)
                {
                    LogOut();
                    UtilLog.WriteCommonLog("UserSession", "UserSession", pl_strErrMsg);

                    Uri referrer = HttpContext.Current.Request.UrlReferrer;
                    if (referrer != null)
                    {
                        UtilLog.WriteCommonLog("UserSession", "UserSession", "요청위치: " + referrer.OriginalString.ToLower());
                    }
                }
            }

            return;
        }
Exemple #9
0
    protected void Page_Load(object sender, EventArgs e)
    {
        UtilLog.WriteTextLog("------", "调用开始");
        Stream resStream      = HttpContext.Current.Request.InputStream;
        string strPostContent = string.Empty;
        string result         = string.Empty;
        string dicType        = string.Empty;

        using (StreamReader sr = new StreamReader(resStream, System.Text.Encoding.UTF8))
        {
            strPostContent = sr.ReadToEnd();
        }

        //strPostContent =
        //    @"{""request_id"":""update_orderstatus"",""token"":""88888888888|7626d3bc9ebd8738885c9ed14155b647"",""ordersId"":""60"",""orderStatus"":"""",""staFlag"":""1"",""staMessage"":""在学校"",""PicList"":""""}";

        UtilLog.WriteTextLog("收到数据", strPostContent);

        Dictionary <string, object> dicResult = new Dictionary <string, object>();

        try
        {
            if (!string.IsNullOrEmpty(strPostContent))
            {
                Dictionary <string, object> dicParams =
                    JsonHelper.JsonToObject <Dictionary <string, object> >(strPostContent);

                if (dicParams != null && dicParams.ContainsKey("request_id"))
                {
                    dicType = dicParams["request_id"].ToString();
                    switch (dicParams["request_id"].ToString())
                    {
                    case "register_init":
                        dicResult = RegisterInit(dicParams);
                        break;

                    case "register":
                        dicResult = Register(dicParams);
                        break;

                    case "login":
                        dicResult = GetUserInfo(dicParams);
                        break;

                    case "orders_init":
                        dicResult = OrdersInit(dicParams);
                        break;

                    case "create_orders":
                        dicResult = CreateOrders(dicParams);
                        break;

                    case "get_orders_list":
                        dicResult = GetOrdersList(dicParams);
                        break;

                    case "get_orders_detail":
                        dicResult = GetOrdersInfo(dicParams);
                        break;

                    case "update_orderstatus_init":
                        dicResult = UpdateOrdersInit(dicParams);
                        break;

                    case "update_orderstatus":
                        dicResult = UpdateOrdersStatus(dicParams);
                        break;

                    case "orders_comment":
                        dicResult = OrdersComment(dicParams);
                        break;
                    }
                }
            }
        }
        catch (Exception ex)
        {
            dicResult.Add("response_id", 0);
            dicResult.Add("response_msg", "处理异常!");
            UtilLog.WriteExceptionLog(dicType, ex);
        }
        finally
        {
            if (dicResult.Count > 0)
            {
                result = JsonHelper.ObjectToJson(dicResult);
            }
            else
            {
                result = JsonHelper.ObjectToJson(new Sys.Model.OrderComment());
            }

            UtilLog.WriteTextLog(dicType, result);
            Response.Write(result);
            Response.End();
        }
    }
Exemple #10
0
        //-------------------------------------------------------------
        /// <summary>
        /// 메인 프로세스
        /// </summary>
        //-------------------------------------------------------------
        public virtual void ProcessRequest(HttpContext objContext)
        {
            int    pl_intRetVal     = 0;
            string pl_strJsonResult = string.Empty;
            string pl_strReqParam   = string.Empty;
            string pl_strErrMsg     = string.Empty;

            HttpRequest     pl_objRequest  = null;
            HttpResponse    pl_objResponse = null;
            DefaultReqParam pl_objReqParam = new DefaultReqParam();
            DefaultResParam pl_objResParam = new DefaultResParam();
            MethodSet       objMethodAttr  = null;
            MethodInfo      objMethodInfo  = null;

            object[] parameters = null;     // 메소드의 in/out 파라미터

            try
            {
                strPageMethodName = MethodBase.GetCurrentMethod().Name;

                objContext.Response.ContentType     = "text/json";
                objContext.Response.ContentEncoding = Encoding.UTF8;
                pl_objRequest  = objContext.Request;
                pl_objResponse = objContext.Response;
                pl_objResParam = new DefaultResParam();

                // 보안체크 1. UrlReferrer 확인
                if (!UserGlobal.GetUrlReferrer(pl_objRequest, out strRefererUrl))
                {
                    pl_intRetVal = 4001;
                    pl_strErrMsg = "Failed to GetUrlReferrer";
                    return;
                }

                // 보안체크 2. 전송 파라미터(json) 확인
                using (StreamReader objSR = new StreamReader(pl_objRequest.InputStream))
                {
                    pl_strReqParam = objSR.ReadToEnd();
                    JsonSerializerSettings set = new JsonSerializerSettings();
                    set.NullValueHandling = NullValueHandling.Ignore;
                    pl_objReqParam        = JsonConvert.DeserializeObject <DefaultReqParam>(pl_strReqParam, set);

                    if (pl_objReqParam == null)
                    {
                        pl_intRetVal = 4002;
                        pl_strErrMsg = "RequestParam is Empty";
                        return;
                    }
                }

                // 보안체크 3.AjaxTicket 확인
                if (!UserGlobal.VerifyAjaxTicket(strRefererUrl, pl_objReqParam.strAjaxTicket))
                {
                    pl_intRetVal = 4003;
                    pl_strErrMsg = "Failed to VerifyAjaxTicket";
                    return;
                }

                // 보안체크 4. 메소드 이름 확인
                try
                {
                    // front 에서 호출한 메소드 이름이 같은 메소드가 있으면 할당
                    objMethodInfo = this.GetType().GetMethod(pl_objReqParam.strMethodName, BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.DeclaredOnly);
                    // 해당 메소드의 MethodSet 어노테이션 할당.
                    objMethodAttr = objMethodInfo.GetCustomAttribute(typeof(MethodSet)) as MethodSet;
                }
                catch {
                    pl_intRetVal = 4004;
                    pl_strErrMsg = "Invalid strMethodName";
                    return;
                }

                // 보안체크 5. 메소드 접근권한 체크.
                if (objMethodAttr.pageType.Equals(PageAccessType.Login))
                {
                    objSes = new UserSession();
                    if (!objSes.isLogin)
                    {
                        pl_intRetVal = 4005;
                        pl_strErrMsg = "do not have permission.";
                        return;
                    }
                }

                // 생성된 파라미터를 핸들러 메소드에 넣어준다.
                // PLNOTICE 요청, 응답, 메시지 꼭 이 순서로 함수를 구성하여야한다.
                parameters = new object[] { GetParamter(strReq, objMethodInfo, pl_strReqParam), GetParamter(strRes, objMethodInfo), null };

                // 핸들러 메소드 실행
                pl_intRetVal = (int)objMethodInfo.Invoke(this, parameters);
                // 실행 후 반환 된 응답값을 pl_objResParam에 담아준다.
                pl_objResParam = Convert.ChangeType(parameters[1], Type.GetType(objMethodInfo.GetParameters()[1].ParameterType.AssemblyQualifiedName)) as DefaultResParam;
                // 실행 후 반환 된 메시지값을 pl_strErrMsg에 담아준다.
                if (!pl_intRetVal.Equals(0))
                {
                    pl_strErrMsg = (string)parameters[2];
                    return;
                }
            }
            catch (Exception pl_objEx)
            {
                pl_intRetVal = -24001;
                UtilLog.WriteExceptionLog(pl_objEx.Message, pl_objEx.StackTrace);
            }
            finally
            {
                pl_objResParam.intRetVal = pl_intRetVal;

                if (!pl_intRetVal.Equals(0))
                {
                    UtilLog.WriteLog(strPageMethodName, pl_intRetVal, "ReqParameter : " + JsonConvert.SerializeObject(pl_objReqParam) + "ErrMsg : " + pl_strErrMsg);

                    // 4000번대 에러인 경우 대표메시지 설정.
                    if ((pl_intRetVal / 1000).Equals(4))
                    {
                        pl_objResParam.strErrMsg = "잘못된 접근입니다.";
                    }
                    // 대표메시지가 설정되어 있는 경우 대표메시지 출력
                    else if (objMethodAttr != null && !string.IsNullOrEmpty(objMethodAttr.strRepresentMsg))
                    {
                        pl_objResParam.strErrMsg = objMethodAttr.strRepresentMsg;
                    }
                    else
                    {
                        pl_objResParam.strErrMsg = pl_strErrMsg;
                    }
                }

                // JSON 결과 리턴
                pl_strJsonResult = JsonConvert.SerializeObject(pl_objResParam);
                pl_objResponse.Write(pl_strJsonResult);

                // 로깅이 필요한 메소드의 경우 인/아웃풋 로깅
                if (objMethodAttr != null && objMethodAttr.loggingFlag)
                {
                    UtilLog.WriteLog(strPageMethodName, pl_intRetVal, string.Format("ReqParam = {0}", pl_strReqParam));
                    UtilLog.WriteLog(strPageMethodName, pl_intRetVal, string.Format("Method : {0}, JsonData: {1}", pl_objReqParam.strMethodName, pl_strJsonResult));
                }

                pl_objReqParam = null;
                pl_objRequest  = null;
                pl_objResponse = null;
                pl_objResParam = null;
            }

            return;
        }