private string getChangeset(StudentFeraghatDocument SFD_new)
        {
            StudentFeraghatDocument SFD_old = new StudentFeraghatDocument();

            SFD_old = GFB.getStudentFeraghatDocument(txtStcode.Text);


            string changes = "", spaceCharUsed = "   -   ", spaceChar = "";

            //if (SFD_new.ArchivesCode != SFD_old.ArchivesCode)
            //{
            //    changes += SFD_old.ArchivesCode == "" ? "درج کد بایگانی " + SFD_new.ArchivesCode : (SFD_new.ArchivesCode == "" ? "حذف کد بایگانی" : "تغییر کد بایگانی به " + SFD_new.ArchivesCode);
            //    spaceChar = spaceCharUsed;
            //}
            if (SFD_new.mashmul != SFD_old.mashmul)
            {
                changes  += "مشمول سربازی: '" + (SFD_new.mashmul ? "هست" : "نیست") + "' وضعیت قبلی: " + SFD_old.mashmulName;
                spaceChar = spaceCharUsed;
            }
            if (SFD_new.HasPaymentReceipt != SFD_old.HasPaymentReceipt)
            {
                changes  += spaceChar + (!SFD_new.HasPaymentReceipt ? "درج تیک برای 'فیش واریزی ندارد'" : "حذف تیک از 'فیش واریزی ندارد'");
                spaceChar = spaceCharUsed;
            }
            if (SFD_new.HasStamp != SFD_old.HasStamp)
            {
                changes  += spaceChar + (!SFD_new.HasStamp ? "درج تیک برای 'تمبر ندارد'" : "حذف تیک از 'تمبر ندارد'");
                spaceChar = spaceCharUsed;
            }
            //if (SFD_new.PaiedToVahedSodoor != SFD_old.PaiedToVahedSodoor)
            //{
            //    changes += spaceChar + (SFD_new.PaiedToVahedSodoor ? "درج تیک برای 'پرداخت به واحد صادر کننده'" : "حذف تیک از 'پرداخت به واحد صادر کننده'");
            //    spaceChar = spaceCharUsed;
            //}
            if (SFD_new.SpecialTips != SFD_old.SpecialTips)
            {
                changes += spaceChar + "موارد خاص:" + SFD_new.SpecialTips;
            }

            if (SFD_new.serialNumber_Movaghat != SFD_old.serialNumber_Movaghat)
            {
                changes += spaceChar + "شماره سریال مدرک موقت:" + SFD_new.SpecialTips;
            }
            if (SFD_new.serialNumber_Daneshname != SFD_old.serialNumber_Daneshname)
            {
                changes += spaceChar + "شماره سریال دانشنامه:" + SFD_new.SpecialTips;
            }
            if (SFD_new.documentNumber_Daneshname != SFD_old.documentNumber_Daneshname)
            {
                changes += spaceChar + "شماره مدرک دانشنامه:" + SFD_new.SpecialTips;
            }
            if (SFD_new.documentNumber_Movaghat != SFD_old.documentNumber_Movaghat)
            {
                changes += spaceChar + "شماره مدرک گواهی موقت:" + SFD_new.SpecialTips;
            }
            return(changes);
        }
 protected void btnCreateArchiveCode_Click(object sender, EventArgs e)
 {
     if (txtNewBaygani.Text != "")
     {
         bool res = bsn.insertCodeBayegan(txtStcode.Text, txtNewBaygani.Text);
         if (res)
         {
             setLog(string.Format("{0} {1}  {2} {3}", "ثبت کد بایگانی", txtNewBaygani.Text, "برای", txtStcode.Text), 0, (int)DTO.eventEnum.ثبت_کد_بایگانی_مشابه_با_سیدا_در_خدمات);
             txtNewBaygani.Visible        = false;
             txtNewBaygani.Text           = "";
             btnCreateArchiveCode.Visible = false;
             txtBaygani.Visible           = true;
             StudentFeraghatDocument SFD = new StudentFeraghatDocument();
             SFD = GFB.getStudentFeraghatDocument(txtStcode.Text);
             setComponentsValue(SFD);
         }
     }
 }
        private void getStudentInformation(string stcode)
        {
            StudentFeraghatDocument SFD = new StudentFeraghatDocument();
            DataTable dtTemp            = new DataTable();

            SFD = GFB.getStudentFeraghatDocument(stcode);
            if (SFD.stcode != null)
            {
                lnkBtnEnterDate.Visible = !SFD.isOnline;
                lblNotFound.Visible     = false;
                dvShowReport.Visible    = true;
                setComponentsValue(SFD);
            }
            else
            {
                lblNotFound.Visible  = true;
                dvShowReport.Visible = false;
            }
        }
        public StudentFeraghatDocument getStudentFeraghatDocument(string stcode)
        {
            StudentFeraghatDocument sfd = new StudentFeraghatDocument();
            DataTable dt = gfo.getStudentFeraghatDocument(stcode);

            if (dt.Rows.Count > 0)
            {
                sfd.stcode               = dt.Rows[0]["stcode"].ToString();
                sfd.RequestID            = Convert.ToInt32(dt.Rows[0]["StudentRequestID"]);
                sfd.RequestStatus        = Convert.ToInt32(dt.Rows[0]["RequestLogID"]);
                sfd.RequestStatus_String = dt.Rows[0]["RequestLogName"].ToString();
                sfd.ArchivesCode         = dt.Rows[0]["ArchivesCode"].ToString();

                sfd.dateDaneshnameSodur  = dt.Rows[0]["DateSodoorDaneshname"].ToString();
                sfd.dateDaneshnameTahvil = dt.Rows[0]["DateDaneshDeliver"].ToString();
                sfd.dateDaneshnameVorud  = dt.Rows[0]["DateVoroodDaneshname"].ToString();
                sfd.dateGovahiSodur      = dt.Rows[0]["DateSodoorGovahi"].ToString();
                sfd.dateGovahiTahvil     = dt.Rows[0]["DateGovahiDeliver"].ToString();
                sfd.dateGovahiVorud      = dt.Rows[0]["DateVoroodGovahi"].ToString();
                sfd.dateRiznomreSodur    = dt.Rows[0]["DateSodoorRizNomre"].ToString();
                sfd.dateRiznomreTahvil   = dt.Rows[0]["DateRizNomreDeliver"].ToString();
                sfd.dateRiznomreVorud    = dt.Rows[0]["DateVoroodRizNomre"].ToString();
                sfd.dateRiznomreErsal    = dt.Rows[0]["DateErsalRizNomre"].ToString();

                sfd.genderValue = Convert.ToInt32(dt.Rows[0]["sex"]);
                sfd.genderName  = sfd.genderValue == 1 ? "مرد" : "زن";

                sfd.HasStamp          = Convert.ToBoolean(dt.Rows[0]["HasStamp"]);
                sfd.HasPaymentReceipt = Convert.ToBoolean(dt.Rows[0]["HasPaymentReceipt"]);

                sfd.name         = dt.Rows[0]["name"].ToString();
                sfd.family       = dt.Rows[0]["family"].ToString();
                sfd.idd_meli     = dt.Rows[0]["idd_meli"].ToString();
                sfd.lastTerm     = dt.Rows[0]["lastTerm"].ToString();
                sfd.reshte       = dt.Rows[0]["nameresh"].ToString();
                sfd.gerayesh     = dt.Rows[0]["gerayesh"].ToString();
                sfd.maghta       = dt.Rows[0]["magh"].ToString();
                sfd.pName        = dt.Rows[0]["namep"].ToString();
                sfd.mobile       = dt.Rows[0]["mobile"].ToString();
                sfd.mashmul      = Convert.ToBoolean(dt.Rows[0]["mashmul"]);
                sfd.mashmulName  = dt.Rows[0]["NezamName"].ToString();
                sfd.docArchiveID = dt.Rows[0]["archiveDoc_ID"].ToString();

                //sfd.archiveID_Movaghat = Convert.ToInt64(dt.Rows[0]["archiveCode"] == DBNull.Value ? 0 : dt.Rows[0]["archiveCode"]);
                //sfd.archiveID_Daneshname = Convert.ToInt64(dt.Rows[0]["archiveCode"] == DBNull.Value ? 0 : dt.Rows[0]["archiveCode"]);
                //sfd.archiveID_Riznomre = Convert.ToInt64(dt.Rows[0]["archiveCode"] == DBNull.Value ? 0 : dt.Rows[0]["archiveCode"]);


                sfd.archiveID_Movaghat   = Convert.ToInt64(dt.Rows[0]["govahiMovaghat_ID"] == DBNull.Value ? 0 : dt.Rows[0]["govahiMovaghat_ID"]);
                sfd.archiveID_Daneshname = Convert.ToInt64(dt.Rows[0]["daneshname_ID"] == DBNull.Value ? 0 : dt.Rows[0]["daneshname_ID"]);
                sfd.archiveID_Riznomre   = Convert.ToInt64(dt.Rows[0]["riznomre_ID"] == DBNull.Value ? 0 : dt.Rows[0]["riznomre_ID"]);

                sfd.serialNumber_Movaghat     = dt.Rows[0]["govahiMovaghat_SerialNumber"].ToString();
                sfd.serialNumber_Daneshname   = dt.Rows[0]["daneshname_SerialNumber"].ToString();
                sfd.documentNumber_Daneshname = dt.Rows[0]["daneshname_DocumentNumber"].ToString();
                sfd.documentNumber_Movaghat   = dt.Rows[0]["govahiMovaghat_DocumentNumber"].ToString();


                sfd.SpecialTips        = dt.Rows[0]["SpecialTips"].ToString();
                sfd.vahedSodur         = dt.Rows[0]["vahedSodurMadrak"].ToString();
                sfd.vamdar             = Convert.ToInt32(dt.Rows[0]["vamdar"]) > 0 ? true : false;
                sfd.PaiedToVahedSodoor = Convert.ToBoolean(dt.Rows[0]["PaiedToVahedSodoor"]);
                if (isNotNull(dt.Rows[0]["studentImage"]))
                {
                    sfd.StudentImage = Common.CommonBusiness.objectToByteArray(dt.Rows[0]["studentImage"]);
                }
                sfd.ResultRejToDep = dt.Rows[0]["ResultRejToDep"].ToString();
                sfd.DateRejToDep   = dt.Rows[0]["DateRejToDep"].ToString();
                DataView dv = dt.DefaultView;
                dv.Sort = "UserLogId desc";
                DataTable dtTemp   = dv.ToTable();
                DataRow[] dr205_23 = dtTemp.Select("eventID=205");// + (int)DTO.eventEnum.تایید_وضعیت_تسویه + " and descr like '%به مرحله ورود پرونده به معاونت دانشجویی%'");

                if (dr205_23.Length > 0)
                {
                    sfd.DateEnterStudentDep  = dr205_23[0]["eventDate"].ToString();
                    sfd.countEnterStudentDep = dr205_23.Length;
                }


                DataRow[] dr207_24 = dtTemp.Select("eventID=207");// + (int)DTO.eventEnum.تایید_وضعیت_تسویه + " and descr like '%تایید در مرحله ارسال پرونده جهت صدور مدرک ارسال%'");
                if (dr207_24.Length > 0)
                {
                    sfd.dateSendPack = dr207_24[0]["eventDate"].ToString();
                }
                sfd.isOnline = Convert.ToBoolean(dt.Rows[0]["isOnline"]);

                //DataRow[] dr36_25 = dtTemp.Select("eventID=" + (int)DTO.eventEnum.تایید_وضعیت_تسویه + " and descr like '%ارسال پرونده جهت صدور%'");
                //if (dr36_25.Length > 0)
                //{
                //    sfd.DateEnterStudentDep = dr36_25[0]["eventDate"].ToString();
                //}


                //DataRow[] dr37 = dtTemp.Select("eventID=" + (int)DTO.eventEnum.ارسال_پیام_تسویه );
                //if (dr37.Length > 0)
                //{
                //    sfd.ResultRejToDep = dr37[0]["descr"].ToString();
                //    sfd.DateRejToDep = dr37[0]["eventDate"].ToString();
                //}
            }
            return(sfd);
        }
 public bool UpdateFeraghatTahsil_GraduateDocument(StudentFeraghatDocument SFD, bool mashmulChanged = false)
 {
     return(gfo.UpdateFeraghatTahsil_GraduateDocument(SFD.stcode, SFD.RequestID, SFD.HasStamp, SFD.HasPaymentReceipt, SFD.mashmul ? 7 : 6, SFD.SpecialTips, mashmulChanged,
                                                      SFD.documentNumber_Movaghat, SFD.documentNumber_Daneshname, SFD.serialNumber_Movaghat, SFD.serialNumber_Daneshname));
 }
        protected void rbConfirmed_RegisterChanges_Click(object sender, EventArgs e)
        {
            bool sentSMS; string smsStatus;
            StudentFeraghatDocument SFD = new StudentFeraghatDocument();
            var  s = GFB.getStudentFeraghatDocument(txtStcode.Text);
            bool mashmulChanged = false;

            Business.Common.CommonBusiness CB = new Business.Common.CommonBusiness();
            DataTable dtMsg = CB.GetAppIDMessage(0, 12, 1, 1);

            if (dtMsg.Rows.Count > 0)
            {
                paymentReceiptMsg = dtMsg.Rows[0]["text"].ToString();
                stampMsg          = paymentReceiptMsg;
            }

            int requestID = s.RequestID;

            SFD.stcode                    = txtStcode.Text;
            SFD.HasStamp                  = !cbxTambr.Checked;
            SFD.HasPaymentReceipt         = !cbxFish.Checked;
            SFD.mashmul                   = cbxMashmul.Checked;
            SFD.SpecialTips               = txtMavaredKhas.Text;
            SFD.RequestID                 = requestID;
            SFD.serialNumber_Daneshname   = txtSerialDaneshname.Text.Trim();
            SFD.serialNumber_Movaghat     = txtSerialMovaghat.Text.Trim();
            SFD.documentNumber_Daneshname = txtDocNumDaneshname.Text.Trim();
            SFD.documentNumber_Movaghat   = txtDocNumMovaghat.Text.Trim();
            if (!s.isOnline)
            {
                if (s.mashmul != SFD.mashmul)
                {
                    mashmulChanged = true;
                }
            }
            string description = getChangeset(SFD);
            int    archiveID   = 0;

            if (GFB.UpdateFeraghatTahsil_GraduateDocument(SFD, mashmulChanged))
            {
                if (SFD.HasStamp != s.HasStamp)
                {
                    if (SFD.HasStamp)
                    {
                        Business.university.Request.CheckOutNaghsBusiness chNaghs = new Business.university.Request.CheckOutNaghsBusiness();
                        var naghsDT = chNaghs.GetAllNaghsByReqId(requestID);
                        if (naghsDT.Rows.Count > 0)
                        {
                            DataRow[] dr = naghsDT.Select("RequestLogID=29");
                            if (dr.Length > 0)
                            {
                                int naghsID = Convert.ToInt32(dr[0]["naghsID"]);
                                chNaghs.ResolveNaghsById(naghsID);
                                archiveID = GFB.insertDocArchiveId(SFD.RequestID);
                            }
                        }
                    }
                    else
                    {
                        naghs.InsertNaghs(new DTO.University.Request.CheckOutNaghsDTO
                        {
                            IsResolved       = false,
                            NaghsMessage     = stampMsg,
                            RequestLogId     = 29,
                            ResolveDate      = "",
                            ResolveMessage   = "",
                            StCode           = SFD.stcode,
                            StudentRequestId = SFD.RequestID,
                            SubmitDate       = DateTime.Now.ToPeString(),
                            Erae_Be          = "0"
                        });
                        setLog("لطفا تمبر خریداری فرمایید.", requestID, (int)DTO.eventEnum.ارسال_پیام_تسویه);
                        CB.sendSMS(1, SFD.stcode, stampMsg, out sentSMS, out smsStatus);
                    }
                }
                if (SFD.HasPaymentReceipt != s.HasPaymentReceipt)
                {
                    if (SFD.HasPaymentReceipt)
                    {
                        Business.university.Request.CheckOutNaghsBusiness chNaghs = new Business.university.Request.CheckOutNaghsBusiness();
                        var naghsDT = chNaghs.GetAllNaghsByReqId(requestID);
                        if (naghsDT.Rows.Count > 0)
                        {
                            DataRow[] dr = naghsDT.Select("RequestLogID=30");
                            if (dr.Length > 0)
                            {
                                int naghsID = Convert.ToInt32(dr[0]["naghsID"]);
                                chNaghs.ResolveNaghsById(naghsID);
                                archiveID = GFB.insertDocArchiveId(SFD.RequestID);
                            }
                        }
                    }
                    else
                    {
                        naghs.InsertNaghs(new DTO.University.Request.CheckOutNaghsDTO
                        {
                            IsResolved       = false,
                            NaghsMessage     = paymentReceiptMsg,
                            RequestLogId     = 30,
                            ResolveDate      = "",
                            ResolveMessage   = "",
                            StCode           = SFD.stcode,
                            StudentRequestId = SFD.RequestID,
                            SubmitDate       = DateTime.Now.ToPeString(),
                            Erae_Be          = "0"
                        });
                        setLog("لطفا فیش واریزی تهیه فرمایید.", requestID, (int)DTO.eventEnum.ارسال_پیام_تسویه);
                        string asanak = CB.sendSMS(1, SFD.stcode, paymentReceiptMsg, out sentSMS, out smsStatus);
                    }
                }
                if (description.Trim() != "")
                {
                    setLog(description, requestID, (int)DTO.eventEnum.ایجاد_تغییر_در_صفحه_مشاهده_پرونده_دانشجویان_فارغ_التحصیل);
                }
            }
            getStudentInformation(SFD.stcode);
        }
        private void setComponentsValue(StudentFeraghatDocument SFD)
        {
            txtBaygani.Visible           = true;
            txtNewBaygani.Visible        = false;
            btnCreateArchiveCode.Visible = false;
            var disableColor = ddlGender.BackColor;
            var enableColor  = System.Drawing.Color.White;

            picStudent.ImageUrl = "~University/CooperationRequest/Image/noPic.png";
            txtStcode.Text      = SFD.stcode;
            txtRequestLog.Text  = SFD.RequestStatus_String;
            txtBaygani.Text     = SFD.ArchivesCode;
            if (txtBaygani.Text == "")
            {
                txtBaygani.Visible           = false;
                txtNewBaygani.Visible        = true;
                btnCreateArchiveCode.Visible = true;
            }
            //List<DTO.University.Request.MahaleSodoor> dtVahed = bsn.GetListOfVahed();
            //dvSerialAndDocNum.Visible = SFD.vahedSodur == dtVahed.Select((x)=>new {x.Vahed ,x.Id = 1 });
            txtDateSendPackToVahedSodur.Text  = SFD.dateSendPack;
            txtDateSodurDanesh.Text           = SFD.dateDaneshnameSodur;
            txtDateTahvilDanesh.Text          = SFD.dateDaneshnameTahvil;
            txtDateVorudDanesh.Text           = SFD.dateDaneshnameVorud;
            txtDateEnterStudentDep.Text       = SFD.DateEnterStudentDep;
            lblCountEnterStudentDep.InnerText = SFD.countEnterStudentDep > 1 ? string.Format("{0} {1}", SFD.countEnterStudentDep, "بار") : "";
            txtDateSodurGovahi.Text           = SFD.dateGovahiSodur;
            txtDateTahvilGovahi.Text          = SFD.dateGovahiTahvil;
            txtDateVorudGovahi.Text           = SFD.dateGovahiVorud;
            txtDateRejToDep.Text       = SFD.DateRejToDep;
            txtDateErsalRiznomre.Text  = SFD.dateRiznomreErsal;
            txtDateSodurRiznomre.Text  = SFD.dateRiznomreSodur;
            txtDateTahvilRiznomre.Text = SFD.dateRiznomreTahvil;
            txtDateVorudRiznomre.Text  = SFD.dateRiznomreVorud;
            txtFamily.Text             = SFD.family;
            ddlGender.SelectedValue    = SFD.genderValue.ToString();
            txtGerayesh.Text           = SFD.gerayesh;
            cbxFish.Checked            = !SFD.HasPaymentReceipt; cbxFish.Enabled = SFD.RequestStatus <= 23;
            cbxTambr.Checked           = !SFD.HasStamp; cbxTambr.Enabled = SFD.RequestStatus <= 23;
            txtIDDMeli.Text            = SFD.idd_meli;
            txtLastTerm.Text           = SFD.lastTerm;
            txtMaghta.Text             = SFD.maghta;
            cbxMashmul.Checked         = SFD.mashmul; cbxMashmul.Enabled = (!SFD.isOnline && SFD.genderValue == 1 && SFD.RequestStatus <= 23);
            txtMavaredKhas.Text        = SFD.SpecialTips;
            txtPhone.Text = SFD.mobile;
            txtName.Text  = SFD.name;
            cbxPaymentToVahedSodur.Checked = SFD.PaiedToVahedSodoor;
            txtFatherName.Text             = SFD.pName;
            txtReshte.Text                 = SFD.reshte;
            txtResRejToDep.Text            = SFD.ResultRejToDep;
            txtNameVahedSodur.Text         = SFD.vahedSodur;
            cbxVamdar.Checked              = SFD.vamdar;
            txtDocArchiveCode.Text         = SFD.docArchiveID;
            picStudent.DataValue           = SFD.StudentImage;
            txtArchiveCode_Govahi.Text     = SFD.archiveID_Movaghat.ToString();
            txtArchiveCode_Daneshname.Text = SFD.archiveID_Daneshname.ToString();
            txtArchiveCode_Riznomre.Text   = SFD.archiveID_Riznomre.ToString();
            txtSerialDaneshname.Text       = SFD.serialNumber_Daneshname;
            txtSerialMovaghat.Text         = SFD.serialNumber_Movaghat;
            txtDocNumDaneshname.Text       = SFD.documentNumber_Daneshname;
            txtDocNumMovaghat.Text         = SFD.documentNumber_Movaghat;
            cbxFish.BackColor              = cbxFish.Enabled ? enableColor : disableColor;
            cbxTambr.BackColor             = cbxTambr.Enabled ? enableColor : disableColor;
            cbxMashmul.BackColor           = cbxMashmul.Enabled ? enableColor : disableColor;
        }