Ejemplo n.º 1
0
 public void GetRequest(Van.RecivedData reqData)
 {
     try
     {
         _ReqData = reqData;
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message);
     }
 }
Ejemplo n.º 2
0
 /// <summary>
 /// 벤dll 에서 리턴받을 리턴함수
 /// </summary>
 /// <param name="reqData">The req data.</param>
 public void BizGetRequest(Van.RecivedData reqData)
 {
     try
     {
         _ReqData = reqData;
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message);
     }
     finally
     {
         IsLoop = false;
     }
 }
Ejemplo n.º 3
0
        /// <summary>
        /// [현금]  항목 삭제
        /// </summary>
        /// <param name="r">입금정보</param>
        /// <param name="emp">사번.</param>
        /// <param name="memo">사유.</param>
        private void fn_110(DataRow r, string emp, string memo, string seqnos)
        {
            string _BenRegNo = "";

            try
            {
                //객실일때 마감여부 확인
                bool IsClose = BizCommon.Gneral_D.IsRoomClose();
                if (info.useKind == DAZAZ02.UseKind.Room && IsClose)
                {
                    Basic.ShowMessage(1, "현재 마감작업중입니다. \n\r마감이 끝난후 작업을 계속하십시요");
                    return;
                }


                if (Faci == "" || RoomNo == "")
                {
                    Basic.ShowMessage(1, "동코드와 객실번호는 전표번호를 생성하는 기초데이터 입니다.");
                    return;
                }

                #region DataRow 정보

                /*
                 *  dt.Columns.Add("FACILITY_CODE"     );
                 *  dt.Columns.Add("MNG_NO"            );
                 *  dt.Columns.Add("MNG_SEQ"           ,typeof(decimal));
                 *  dt.Columns.Add("TASK_DATE"         );
                 *  dt.Columns.Add("KEY_SEQ"           ,typeof(decimal));
                 *  dt.Columns.Add("RAISE_CODE"        );
                 *  dt.Columns.Add("RAISE_CODE_NAME");
                 *  dt.Columns.Add("PAY_CODE"          );
                 *  dt.Columns.Add("PAY_CODE_NAME");
                 *  dt.Columns.Add("PAY_AMT"           ,typeof(decimal));
                 *  dt.Columns.Add("RMRK"              );
                 *  dt.Columns.Add("REFERENCE"         );
                 *  dt.Columns.Add("SEQ_NO"            ,typeof(decimal));
                 *  dt.Columns.Add("TRACK_TWO"         );
                 *  dt.Columns.Add("CARD_NO"           );
                 *  dt.Columns.Add("VALID_THRU"        );
                 *  dt.Columns.Add("AGREE_NO"          );
                 *  dt.Columns.Add("AGREE_DATE"        );
                 *  dt.Columns.Add("INSTALLMENT_CNT"   ,typeof(decimal));
                 *  dt.Columns.Add("EASY_YN"           );
                 *
                 *  dt.Columns.Add("CO_FACILITY_CODE"  );
                 *  dt.Columns.Add("CO_MNG_NO"         );
                 *  dt.Columns.Add("CO_MNG_SEQ"        ,typeof(decimal));
                 *  dt.Columns.Add("CO_TASK_DATE"      );
                 *  dt.Columns.Add("CO_KEY_SEQ"        ,typeof(decimal));
                 */
                #endregion


                string bizcode      = Parm.CurrentUserInformation.BizInfo.BizCode;            //사업장코드
                string facilitycode = r["FACILITY_CODE"].ToString().Trim();                   //영업장코드
                string mngno        = r["MNG_NO"].ToString().Trim();                          //관리번호
                string mngseq       = r["MNG_SEQ"].ToString().Trim();                         //관리순번
                string taskdate     = Appdate;                                                //작업일자
                string keyseq       = "일련번호";                                                 //일련번호
                string rasiecode    = r["RAISE_CODE"].ToString().Trim();                      //발생코드
                string paycode      = r["PAY_CODE"].ToString().Trim();                        //결제코드
                string payamt       = r["PAY_AMT"].ToString().Trim();                         //결제금액
                string itemstat     = "";                                                     //상태
                string facipart     = Faci;                                                   //동코드
                string reference    = r["REFERENCE"].ToString().Trim();                       //참고(카드번호,승인번호/락카번호/연회번호/상품권번호/회원번호)
                string seqno        = seqnos;                                                 //순번
                string rmrk         = memo;                                                   //비고

                string co_facilitycode = "";                                                  //이체영업장코드
                string co_mngcode      = "";                                                  //이체관리번호
                string co_mngseq       = "";                                                  //이체관리순번
                string co_taskdate     = "";                                                  //이체영업일자
                string co_keyseq       = "";                                                  //이체일련번호

                string st_facilitycode = facilitycode;                                        //최초영업장코드
                string st_mngno        = mngno;                                               //최초관리번호
                string st_mngseq       = mngseq;                                              //최초관리순번
                string st_taskdate     = Basic.MaskReplace(r["TASK_DATE"].ToString().Trim()); //최초영업일자
                string st_keyseq       = r["KEY_SEQ"].ToString().Trim();                      //최초일련번호

                string empno      = emp;                                                      //사원번호
                string ip         = Parm.CurrentUserInformation.ip;                           //아이피
                string editstatus = "3";                                                      //작업구분

                /**********************************************
                 * 현금영수증 처리
                 **********************************************
                 * 1. 현금 연수증을 사용하지 않은처리
                 * 3. 현금영수증을 밴승인을 통한 처리
                 *********************************************/

                string bill_saledate     = "";   //영업일자
                string bill_bizcode      = "";   //사업장코드
                string bill_facilitycode = "";   //영업장코드
                string bill_posno        = "";   //포스번호
                string bill_biilno       = "";   //전표번호
                string bill_saleyn       = "";   //판매여부
                string bill_payseq       = "순번"; //순번
                string bill_agreeyn      = "";   //승인번호
                string bill_saleamt      = "";   //판매금액
                string bill_pe_co_code   = "";   //법인개인구분
                string bill_id_no_code   = "";   //식별코드
                string bill_id_no        = "";   //식별번호
                string bill_agreeno      = "";   //승인번호
                string bill_easyyn       = "";   //이지체크여부
                string bill_date         = "";   //정의없음
                string bill_agreedate    = "";   //원승인일자


                bool      IsBillYn = false;
                DataTable dtBill   = null;

                //승인번호가 있다면 // 현금영수증이 승인된 데이터 이다.
                if (r["AGREE_NO"].ToString().Trim() != "")
                {
                    //현금영수증이 있다고 마킹한다.
                    IsBillYn = true;


                    //아무튼. 현금영수증인 승인된건이기때문에
                    //현금영수증 테이블에 담는다.

                    /*
                     * 채번한다.
                     */
                    bill_saledate     = Appdate;                                                                                   //영업일자
                    bill_bizcode      = Parm.CurrentUserInformation.BizInfo.BizCode;                                               //사업장코드
                    bill_facilitycode = r["FACILITY_CODE"].ToString().Trim();                                                      //영업장코드
                    bill_posno        = "01";                                                                                      //포스번호
                    bill_biilno       = Basic.MaskReplace(Num.GetNumberOnly(Faci)) + Basic.MaskReplace(Num.GetNumberOnly(RoomNo)); //전표번호
                    bill_saleyn       = "Y";                                                                                       //판매여부
                    bill_payseq       = "순번";                                                                                      //순번
                    bill_agreeyn      = "N";                                                                                       //승인번호
                    bill_saleamt      = (int.Parse(r["PAY_AMT"].ToString().Trim()) * -1).ToString();                               //판매금액
                    bill_pe_co_code   = r["INSTALLMENT_CNT"].ToString().Trim();                                                    //법인개인구분
                    bill_id_no_code   = r["VALID_THRU"].ToString().Trim();                                                         //식별코드
                    bill_id_no        = r["REFERENCE"].ToString().Trim();                                                          //식별번호
                    bill_agreeno      = "";                                                                                        // _BenRegNo; //승인번호
                    bill_easyyn       = r["EASY_YN"].ToString().Trim();                                                            //키인여부
                    bill_date         = "";                                                                                        //정의없음

                    bill_agreeno   = r["AGREE_NO"].ToString().Trim();
                    bill_agreedate = r["AGREE_DATE"].ToString().Trim();


                    //밴을 이용한 승인취소건이다.
                    //승인을 취소한다.
                    //Ben통신을 한다.
                    /*☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★*/
                    _BenRegNo = "밴승인번호";
                    _BenRegNo = "";
                    //if(BizCommon.CheckVan.CheckMode() == DialogResult.No) return;
                    /***********************************************************************************************************************************************/
                    string str = "";



                    Van.RecivedData RegCashreq = new Van.RecivedData();
                    using (BizVanComunication bizVans = new BizVanComunication())
                    {
                        RegCashreq = bizVans.SendData("PROJECT_D",
                                                      JobKind.CancelCash,
                                                      bill_pe_co_code == "0" ? Van.CashKind.Persnal : Van.CashKind.Company,
                                                      bill_id_no,
                                                      "",
                                                      "",
                                                      payamt,
                                                      "",
                                                      "",
                                                      bill_agreeno,
                                                      //bill_agreedate.Substring(2, 6),
                                                      bill_agreedate,
                                                      bill_id_no_code == "1" ? CashGbn.Card : CashGbn.None);
                        bizVans.Dispose();
                    }

                    /***********************************************************************************************************************************************/

                    if (RegCashreq.IsAgreeError)
                    {
                        //if(

                        Basic.ShowMessage(1, "승인을 취소하지 못했습니다. \n\r\n\r" +
                                          "오류내용 : \n\r" +
                                          RegCashreq.Message);
                        return;
                    }

                    _BenRegNo    = RegCashreq.AgreeNo;
                    bill_agreeno = _BenRegNo;

                    this.Cursor = Cursors.WaitCursor;

                    DataTable dtParmBill = DataLayer.GetDataTableParameter(DataLayer.DatatableStyle.Parameter);
                    dtParmBill.Rows.Add(new object[] { "V_BIZ_CODE", bill_bizcode });
                    dtParmBill.Rows.Add(new object[] { "V_FACILITY_CODE", bill_facilitycode });
                    dtParmBill.Rows.Add(new object[] { "V_POS_NO", bill_posno });
                    dtParmBill.Rows.Add(new object[] { "V_SALE_DATE", bill_saledate });
                    dtParmBill.Rows.Add(new object[] { "V_BILL_NO", bill_biilno });
                    dtParmBill.Rows.Add(new object[] { "V_SALE_YN", "Y" });

                    string billSeq = DataLayer.ExecuteSpScala("PKG_DAZAZ02.PR_IAA031MS_PAYSEQ", dtParmBill, DataLayer.MessageEncoding.Default);
                    bill_payseq = billSeq;
                    seqno       = bill_payseq;

                    dtBill = Pay.PayAddBill(bill_saledate,
                                            bill_bizcode,
                                            bill_facilitycode,
                                            bill_posno,
                                            bill_biilno,
                                            bill_saleyn,
                                            bill_payseq,
                                            bill_agreeyn,
                                            bill_saleamt,
                                            bill_pe_co_code,
                                            bill_id_no_code,
                                            bill_id_no,
                                            bill_agreeno,
                                            bill_saledate,
                                            bill_easyyn,
                                            empno,
                                            bill_date,
                                            ip);
                }

                this.Cursor = Cursors.WaitCursor;

                //seqno 순번을 가져와서 할당한다.
                //입금테이블 [DCA030MS]
                // 사업장코드 // 영업장코드 //관리번호 //관리순번// 영업일자 // == 일련번호//
                // 순번을 가져온다
                //PR_KEY_SEQ
                DataTable dtParm = DataLayer.GetDataTableParameter(DataLayer.DatatableStyle.Parameter);

                dtParm.Rows.Add(new object[] { "V_BIZ_CODE", bizcode });
                dtParm.Rows.Add(new object[] { "V_FACILITY_CODE", facilitycode });
                dtParm.Rows.Add(new object[] { "V_MNG_NO", mngno });
                dtParm.Rows.Add(new object[] { "V_MNG_SEQ", mngseq });
                dtParm.Rows.Add(new object[] { "V_TASK_DATE", taskdate });

                keyseq = DataLayer.ExecuteSpScala("PKG_DAZAZ02.PR_DCA030MS_KEY_SEQ", dtParm, DataLayer.MessageEncoding.Default);

                string deleteMemo = "";
                if (r["AGREE_NO"].ToString().Trim() != "")
                {
                    deleteMemo = "[승인번호:" + r["AGREE_NO"].ToString().Trim() + "]  사유: ";
                }
                DataTable dtcash = Pay.Room_110(bizcode,
                                                facilitycode,
                                                mngno,
                                                mngseq,
                                                taskdate,
                                                keyseq,
                                                rasiecode,
                                                paycode,
                                                payamt,
                                                itemstat,
                                                facipart, reference,
                                                seqno,
                                                deleteMemo + memo,  //원승인번호 + 삭제 사유
                                                co_facilitycode,
                                                co_mngcode,
                                                co_mngseq,
                                                co_taskdate,
                                                co_keyseq,
                                                st_facilitycode,
                                                st_mngno,
                                                st_mngseq,
                                                st_taskdate,
                                                st_keyseq,
                                                empno,
                                                ip,
                                                editstatus);

                string v_ret = "실행정보 없음";

                try{
                    if (IsBillYn)    //현금영수증 건이 있다면
                    {
                        DataSet dsTmp = DataLayer.AddProdedcure(new DataTable[] { dtcash, dtBill });
                        v_ret = DataLayer.ExecuteSpScalaTransaction(dsTmp, "OK", DataLayer.MessageEncoding.Default);
                    }
                    else     // 현금건만 있다면
                    {
                        v_ret = DataLayer.ExecuteSpScala("PKG_DAZAZ02_DEV.PR_ROOM_110", dtcash, DataLayer.MessageEncoding.Default);
                    }
                }catch (Exception ex)
                {
                    // 현금 영수증 승인취소건이 있다면
                    // 현금영수증 승인을 시킨다.원복
                    MessageBox.Show(ex.Message);
                    goto _lblRegCash;
                }

                if (v_ret != "OK")
                {
                    Basic.ShowMessage(1, v_ret);
                    goto _lblRegCash;
                }

                fnSelect();

                Basic.ShowMessage(1, "취소 하였습니다.");


                /*********************************************************/
                return;

                /*********************************************************/



_lblRegCash:
                if (IsBillYn)  //현금 승인취소건이 있다 다시 현금영수증을 승인한다.
                {
                    //현금영수증 승인요청
                    /***********************************************************************************************************************************************/


                    Van.RecivedData Regregreq = new Van.RecivedData();
                    using (BizVanComunication bizVanreg = new BizVanComunication())
                    {
                        Regregreq = bizVanreg.SendData("PROJECT_D",
                                                       JobKind.RegCash,
                                                       bill_pe_co_code == "P" ? Van.CashKind.Persnal : Van.CashKind.Company,
                                                       bill_id_no,
                                                       "",
                                                       "",
                                                       payamt,
                                                       "",
                                                       "",
                                                       "",
                                                       "",
                                                       bill_id_no_code == "1" ? CashGbn.Card : CashGbn.None);
                        bizVanreg.Dispose();
                    }


                    /***********************************************************************************************************************************************/

                    if (Regregreq.IsAgreeError)
                    {
                        Basic.ShowMessage(3, "[전산담당자에게 문의하세요]\n\r\n\r" +
                                          "현금영수증 승인 취소후 자료갱신시 에러가 있었습니다.. \n\nr" +
                                          "취소된 현금영수증 금액을 다시 승인처리 하는 도중 \n\r" +
                                          "아래와 같이 에러가 발생하엿습니다.\n\r\n\r" +
                                          "에러내용 : " + Regregreq.Message + "\n\r" +
                                          "식별코드 : " + bill_id_no_code == "P"  ? "개인(P)" : "법인(C) \n\r" +
                                          "식별번호 : " + bill_id_no + "\n\r" +
                                          "금    액 : " + int.Parse(payamt).ToString("n0"));

                        Van.Log.Log.SaveLog("현금영수증 취소 후 DB에러 - 현금영수 재 승인시 에러 - " + "식별코드 - " + bill_id_no_code +
                                            " / 식별번호 -" + bill_id_no + " / 금액 -" + payamt);
                        return;
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                this.Cursor = Cursors.Default;
            }
        }
Ejemplo n.º 4
0
        /// <summary>
        /// 싸인을 받습니다.
        /// </summary>
        /// <param name="tid">터미널아이디</param>
        /// <param name="svrIP">서버아이피</param>
        /// <param name="svrPort">서버포트</param>
        /// <param name="Amt">금액</param>
        /// <param name="ComPort">싸인패드포트</param>
        /// <param name="reqdata">응답데이터</param>
        public bool GetSign(string Project, int Amt, ref Van.RecivedData reqdata, string VanAgreeProtocal)
        {
            try
            {
                string svrIP   = "";
                string svrPort = "";
                string tid     = "";

                SignPad pad         = SignPad.NONE;
                string  signcomport = "";

                BizCommon.VanType rtype = BizVan.GetProjectVaninfo(Project, JobKind.None, ref svrIP, ref svrPort, ref tid, ref pad, ref signcomport);

                Van.VanType type = BizVan.ConvertToVanType(rtype);

                if (signcomport == "")
                {
                    throw new Exception("싸인패드 포트가 등록되지 않았습니다.");
                }

                #region 서명모드
                /******************************************************************************/
                // 싸인패드가 체크 되어 있다면 서명모드 시작
                /******************************************************************************/


                //string str = Van.KICC.Reg(  kind,
                //                            cashKind,
                //                            tid,
                //                            cardno,
                //                            scope,
                //                            Basic.MaskReplace(amtSplit.Trim()),
                //                            Basic.MaskReplace(amt.Trim()));

_lblReTry:



                Van.frmVanLoading fCash = new Van.frmVanLoading("고객싸인요청",
                                                                type,
                                                                frmVanLoading.JobKind.Sign,
                                                                "BizGetRequest");
                try
                {
                    fCash.Amount         = Amt;
                    fCash.SignPort       = int.Parse(signcomport.Replace("COM", ""));
                    fCash.VanServerIP    = svrIP;
                    fCash.VanServerPort  = svrPort.Trim() == "" ? -999 : int.Parse(svrPort);
                    fCash.SignPadReqdata = VanAgreeProtocal;
                    fCash.Tid            = tid;


                    switch (pad)
                    {
                    case SignPad.EP791R:
                        fCash.SignSpeed = 57600;
                        break;

                    case SignPad.KSP100S:
                        fCash.SignSpeed = 34800;
                        break;

                    case SignPad.KISSP30:
                        fCash.SignSpeed = 57600;
                        break;

                    case SignPad.NONE:
                        throw new Exception("서명패드설정이 되어 있지 않습니다.");
                    }
                }
                catch (Exception ex)
                {
                    string strMsg = "싸인패드 설정 오류입니다. \n\r" +
                                    "거래내역은 아직 승인되지 않았습니다. \n\r" +
                                    "오류내용 : \n\r" + ex.Message;

                    throw new Exception(strMsg);
                }

                IsLoop      = true;
                fCash.Owner = this;
                fCash.ShowDialog();
                Application.DoEvents();


                while (IsLoop)
                {
                    Application.DoEvents();
                }
                reqdata = _ReqData;


                if (_ReqData.RequestCode == ((int)Van.frmVanLoading.RS232Err.PortError).ToString())
                {
                    if (MessageBox.Show("싸인패드 연결실패 입니다. - 싸인패드와 통신 상태를 확인하세요 \n\r" +
                                        "거래내역은 아직 승인되지 않았습니다. \n\r" +
                                        "싸인패드와 다시 연결을 시도 하시겠습니까? ", "확인",
                                        MessageBoxButtons.RetryCancel, MessageBoxIcon.Question) == DialogResult.Cancel)
                    {
                        //취소를 누르면 빠져나간다.
                        return(false);
                    }
                    else
                    {
                        //재시도를 누르면 다시 싸인패드를 호출한다.
                        goto _lblReTry;
                    }
                }
                else if (_ReqData.RequestCode == ((int)Van.frmVanLoading.RS232Err.NotImage).ToString())
                {
                    if (MessageBox.Show("싸인이미지가 없습니다. \n\r" +
                                        "거래내역은 아직 승인되지 않았습니다. \n\r" +
                                        "싸인패드와 다시 연결을 시도 하시겠습니까? ", "확인",
                                        MessageBoxButtons.RetryCancel, MessageBoxIcon.Question) == DialogResult.Cancel)
                    {
                        //취소를 누르면 빠져나간다.
                        return(false);
                    }
                    else
                    {
                        //재시도를 누르면 다시 싸인패드를 호출한다.
                        goto _lblReTry;
                    }
                }
                else if (_ReqData.RequestCode == ((int)Van.frmVanLoading.RS232Err.TimeOut).ToString())
                {
                    if (MessageBox.Show("제한시간 초과 입니다. \n\r" +
                                        "거래내역은 아직 승인되지 않았습니다. \n\r" +
                                        "싸인패드와 다시 연결을 시도 하시겠습니까? ", "확인",
                                        MessageBoxButtons.RetryCancel, MessageBoxIcon.Question) == DialogResult.Cancel)
                    {
                        //취소를 누르면 빠져나간다.
                        return(false);
                    }
                    else
                    {
                        //재시도를 누르면 다시 싸인패드를 호출한다.
                        goto _lblReTry;
                    }
                }
                else if (_ReqData.RequestCode == ((int)Van.frmVanLoading.RS232Err.Communication).ToString())
                {
                    if (MessageBox.Show("싸인패드와 통신할 수 없습니다. \n\r" +
                                        "거래내역은 아직 승인되지 않았습니다.\n\r" +
                                        "싸인패드와 다시 연결을 시도 하시겠습니까? ", "확인",
                                        MessageBoxButtons.RetryCancel, MessageBoxIcon.Question) == DialogResult.Cancel)
                    {
                        //취소를 누르면 빠져나간다.
                        return(false);
                    }
                    else
                    {
                        //재시도를 누르면 다시 싸인패드를 호출한다.
                        goto _lblReTry;
                    }
                }
                else if (_ReqData.RequestCode == ((int)Van.frmVanLoading.RS232Err.NotData).ToString())
                {
                    if (MessageBox.Show("리턴된 데이터가 없습니다. \n\r" +
                                        "거래내역은 아직 승인되지 않았습니다. \n\r" +
                                        "싸인패드와 다시 연결을 시도 하시겠습니까? ", "확인",
                                        MessageBoxButtons.RetryCancel, MessageBoxIcon.Question) == DialogResult.Cancel)
                    {
                        //취소를 누르면 빠져나간다.
                        return(false);
                    }
                    else
                    {
                        //재시도를 누르면 다시 싸인패드를 호출한다.
                        goto _lblReTry;
                    }
                }
                //*********************************************************************************

                Image img = mImage.ByteArrayToImage(_ReqData.SignData);

                if (type != Van.VanType.KIS)
                {
                    Van.SignViewer f = new SignViewer(img);
                    f.ShowDialog();
                    Application.DoEvents();
                }



                /******************************************************************************/
                // 서명모드 종료
                /******************************************************************************/

                #endregion

                return(true);
            }
            catch (Exception ex)
            {
                throw  ex;
            }
        }
Ejemplo n.º 5
0
        /// <summary>
        /// 현금영수증 승인
        /// </summary>
        private bool fnCashBill(bool cashbillyn
                                , bool cashsignpadyn
                                , string amt
                                , CashKind cashbillkind
                                , string cashbillregno
                                , ref string refcashbillregno
                                , ref string refIdNoCode
                                , ref Van.RecivedData cashreqdata
                                )
        {
            try
            {
                bool IsClose = BizCommon.Gneral_D.IsRoomClose();

                refIdNoCode = "";


                //현금영수증 선택되었을대
                if (cashbillyn)
                {
                    Van.RecivedData reqdata = new RecivedData();
                    refcashbillregno = cashbillregno;

                    //식별번호를 싸인패드로 받는다면
                    if (cashsignpadyn)
                    {
                        using (BizVanComunication regNumber = new BizVanComunication())
                        {
                            reqdata = regNumber.GetCashRegNumber("PROJECT_D",
                                                                 int.Parse(Basic.MaskReplace(amt))
                                                                 );
                            regNumber.Dispose();
                        }
                        refcashbillregno = reqdata.CashRegNumber;
                    }

                    if (cashbillregno.Length < 7)
                    {
                        //현금영수증
                        Basic.ShowMessage(1, "식별번호를 정확하게 입력하여 주십시요");
                        return(false);
                    }

                    //현금영수증 승인요청
                    /***********************************************************************************************************************************************/

                    using (BizVanComunication bizVan = new BizVanComunication())
                    {
                        cashreqdata = bizVan.SendData("PROJECT_D",
                                                      JobKind.RegCash,
                                                      cashbillkind,
                                                      refcashbillregno.Trim(),
                                                      "",
                                                      "",
                                                      Basic.MaskReplace(amt),
                                                      "",
                                                      "",
                                                      "",
                                                      "", lupCashBill_IdCode.EditValue.ToString() == "1" ? CashGbn.Card : CashGbn.None);
                        bizVan.Dispose();
                    }

                    /***********************************************************************************************************************************************/

                    if (cashreqdata.IsAgreeError)
                    {
                        Basic.ShowMessage(1, cashreqdata.Message);
                        return(false);
                    }

                    //승인여부
                    //DB 작업 실패시 삭제하기위해서
                    //IsAgreeCash = true;
                }
                //자진 발급
                else
                {
                    DataRow[] dr        = Parm.mDataTable.dtZx010ms.Select("HEAD = 'Z0028' AND DETAIL = '0' AND USE_YN = 'Y' ");
                    int       _intInput = 0;
                    int       _intZ0028 = 0;

                    refcashbillregno = dr[0]["ITEM1"].ToString();
                    _intInput        = int.Parse(amt.Replace(",", ""));

                    refIdNoCode = dr[0]["DETAIL"].ToString();

                    try
                    {
                        _intZ0028 = int.Parse(dr[0]["ITEM2"].ToString());
                    }
                    catch (Exception)
                    {
                        _intZ0028 = 0;
                    }

                    if (_intInput >= _intZ0028)
                    {
                        using (BizVanComunication bizVan = new BizVanComunication())
                        {
                            cashreqdata = bizVan.SendData("PROJECT_D",
                                                          JobKind.RegCash,
                                                          cashbillkind,
                                                          dr[0]["ITEM1"].ToString(),
                                                          "",
                                                          "",
                                                          Basic.MaskReplace(amt.Trim()),
                                                          "",
                                                          "",
                                                          "",
                                                          "", CashGbn.None);
                            bizVan.Dispose();
                        }


                        if (cashreqdata.IsAgreeError)
                        {
                            Basic.ShowMessage(1, cashreqdata.Message);
                            return(false);
                        }

                        //승인여부
                        //DB 작업 실패시 삭제하기위해서
                        //IsAgreeCash = true;
                    }
                }

                //cashAgreeNo = Cashreqdata.AgreeNo;
                //cashAgreeDate = Cashreqdata.AgreeDate;
                this.Cursor = Cursors.WaitCursor;
                this.Cursor = Cursors.Default;
                return(true);
            }
            catch (Exception ex)
            {
                Basic.ShowMessage(3, ex.Message);
                return(false);
            }
            finally
            {
                this.Cursor = Cursors.Default;
            }
        }