Exemplo n.º 1
0
        private void LoadData()
        {
            GeneralEvent_BAL objImpl = new GeneralEvent_BAL();
            GeneralEvent_DTO objInfo = objImpl.GetObject(GeneralEventID);

            if (objInfo == null)
            {
                return;
            }
            ddlDepartment_G.SelectedValue = objInfo.DepartmentID.ToString();
            ddlSubject_G.SelectedValue    = objInfo.SubjectID.ToString();
            chkIsDone_G.Checked           = objInfo.IsDone;
            chkIsImportant_G.Checked      = objInfo.IsImportant;
            txtTitle_G.Text     = objInfo.Title;
            txtStartDate_G.Text = objInfo.StartDate.ToString("dd/MM/yyyy");
            if (objInfo.EndDate.Hour == 0 && objInfo.EndDate.Minute == 0)
            {
                chkNotEndDate_G.Checked = true;
            }
            else
            {
                chkNotEndDate_G.Checked = false;
                txtTimeEnd_G.Text       = objInfo.EndDate.ToString("HH:mm");
            }
            if (objInfo.StartDate.Hour == 0 && objInfo.StartDate.Minute == 0)
            {
                chkAllDay_G.Checked = true;
            }
            else
            {
                chkAllDay_G.Checked = false;
                txtTimeStart_G.Text = objInfo.StartDate.ToString("HH:mm");
            }
            txtDescription_G.Text = objInfo.Description;
            txtLocation_G.Text    = objInfo.Location;
            txtOrganizer_G.Text   = objInfo.Organizer;
            txtParticipant_G.Text = objInfo.Participant;
            txtPreparation_G.Text = objInfo.Preparation;
            divRecurrence.Visible = false;
            litModify.Text        = "<span class='caption-helper'>Tạo lúc " + objInfo.CreatedDate.ToString("dd/MM/yyyy HH:mm:ss") + " bởi " + objInfo.CreatedBy + "</span></br>";
            litModify.Text       += "<span class='caption-helper'>Cập nhật lúc " + objInfo.ModifyDate.ToString("dd/MM/yyyy HH:mm:ss") + " bởi " + objInfo.ModifyBy + "</span>";
        }
Exemplo n.º 2
0
        protected void btnSave_G_Click(object sender, EventArgs e)

        {
            GeneralEvent_DTO objInfo = new GeneralEvent_DTO();

            if (String.IsNullOrEmpty(ddlDepartment_G.SelectedValue))
            {
                objInfo.DepartmentID = -1;
            }
            else
            {
                objInfo.DepartmentID = int.Parse(ddlDepartment_G.SelectedValue);
            }
            if (String.IsNullOrEmpty(ddlSubject_G.SelectedValue))
            {
                objInfo.SubjectID = -1;
            }
            else
            {
                objInfo.SubjectID = int.Parse(ddlSubject_G.SelectedValue);
            }
            objInfo.Title = txtTitle_G.Text;
            DateTime startDate = DateTime.ParseExact(txtStartDate_G.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture);

            objInfo.StartDate = startDate;
            objInfo.EndDate   = startDate;
            if (String.IsNullOrEmpty(txtTimeStart_G.Text) == false)
            {
                Char     delimiter = ':';
                String[] str       = txtTimeStart_G.Text.Split(delimiter);
                objInfo.StartDate = objInfo.StartDate.AddHours(Double.Parse(str[0]));
                objInfo.StartDate = objInfo.StartDate.AddMinutes(Double.Parse(str[1]));
            }
            if (String.IsNullOrEmpty(txtTimeEnd_G.Text) == false)
            {
                Char     delimiter = ':';
                String[] str       = txtTimeEnd_G.Text.Split(delimiter);
                objInfo.EndDate = objInfo.EndDate.AddHours(Double.Parse(str[0]));
                objInfo.EndDate = objInfo.EndDate.AddMinutes(Double.Parse(str[1]));
            }
            objInfo.Description = txtDescription_G.Text;
            objInfo.Location    = txtLocation_G.Text;
            objInfo.Organizer   = txtOrganizer_G.Text;
            objInfo.Participant = txtParticipant_G.Text;
            objInfo.Preparation = txtPreparation_G.Text;
            objInfo.IsDone      = chkIsDone_G.Checked;
            objInfo.IsImportant = chkIsImportant_G.Checked;
            UserExtension_DTO objUsserInfo = (UserExtension_DTO)Session["UserLogin"];

            objInfo.ModifyBy  = objUsserInfo.UserName;
            objInfo.CreatedBy = objUsserInfo.UserName;
            GeneralEvent_BAL objImpl = new GeneralEvent_BAL();
            var data_path            = "/assets/global/event/";

            if (GeneralEventID > 0)
            {
            }
            else
            {
                if (rdoRecurrenceNone_G.Checked)
                {
                    GeneralEventID = objImpl.Insert(objInfo);
                    if (fileAttachments.PostedFile != null && fileAttachments.FileName.Length > 0)
                    {
                        if (!Directory.Exists(Server.MapPath(data_path)))
                        {
                            Directory.CreateDirectory(Server.MapPath(data_path));
                        }
                        EventFile_BAL objEventFile_BAL = new EventFile_BAL();
                        foreach (HttpPostedFile postedFile in fileAttachments.PostedFiles)
                        {
                            string fileNameImage = Guid.NewGuid().ToString() + Path.GetExtension(postedFile.FileName.ToLower());
                            postedFile.SaveAs(Server.MapPath(data_path + fileNameImage));
                            EventFile_DTO objEventFile_DTO = new EventFile_DTO();
                            objEventFile_DTO.GeneralEventID = GeneralEventID;
                            objEventFile_DTO.FileName       = postedFile.FileName.ToLower();
                            objEventFile_DTO.FilePath       = fileNameImage;
                            objEventFile_DTO.FileSize       = postedFile.ContentLength;
                            objEventFile_BAL.Insert(objEventFile_DTO);
                        }
                    }
                }
                if (rdoRecurrencePeriodic_G.Checked)
                {
                    int      PeriodicAmount      = int.Parse(txtPeriodicAmount_G.Text);
                    string   PeriodicCode        = ddlPeriodicCode_G.SelectedValue;
                    DateTime RecurrenceStartDate = DateTime.ParseExact(txtRecurrenceStartDate_G.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture);
                    DateTime RecurrenceEndDate   = DateTime.ParseExact(txtRecurrenceEndDate_G.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture);
                    int      OriginalEventID     = -1;
                    while (DayDifference(RecurrenceStartDate, RecurrenceEndDate) < 0)
                    {
                        objInfo.OriginalEventID = OriginalEventID;
                        objInfo.StartDate       = RecurrenceStartDate;
                        objInfo.EndDate         = RecurrenceStartDate;
                        if (String.IsNullOrEmpty(txtTimeStart_G.Text) == false)
                        {
                            Char     delimiter = ':';
                            String[] str       = txtTimeStart_G.Text.Split(delimiter);
                            objInfo.StartDate = objInfo.StartDate.AddHours(Double.Parse(str[0]));
                            objInfo.StartDate = objInfo.StartDate.AddMinutes(Double.Parse(str[1]));
                        }
                        if (String.IsNullOrEmpty(txtTimeEnd_G.Text) == false)
                        {
                            Char     delimiter = ':';
                            String[] str       = txtTimeEnd_G.Text.Split(delimiter);
                            objInfo.EndDate = objInfo.EndDate.AddHours(Double.Parse(str[0]));
                            objInfo.EndDate = objInfo.EndDate.AddMinutes(Double.Parse(str[1]));
                        }
                        int id = objImpl.Insert(objInfo);
                        if (OriginalEventID == -1)
                        {
                            OriginalEventID = id;
                        }
                        switch (PeriodicCode)
                        {
                        case "d":
                            RecurrenceStartDate = RecurrenceStartDate.AddDays(PeriodicAmount);
                            break;

                        case "w":
                            RecurrenceStartDate = RecurrenceStartDate.AddDays(PeriodicAmount * 7);
                            break;

                        case "m":
                            RecurrenceStartDate = RecurrenceStartDate.AddMonths(PeriodicAmount);
                            break;

                        case "y":
                            RecurrenceStartDate = RecurrenceStartDate.AddYears(PeriodicAmount);
                            break;

                        default:
                            RecurrenceStartDate = RecurrenceEndDate;
                            break;
                        }
                    }
                }
                if (rdoRecurrenceMonthlyActual_G.Checked)
                {
                    int      ActualMonthlyDay    = int.Parse(ddlActualMonthlyDay_G.SelectedValue);
                    DateTime RecurrenceStartDate = DateTime.ParseExact(txtRecurrenceStartDate_G.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture);
                    DateTime RecurrenceEndDate   = DateTime.ParseExact(txtRecurrenceEndDate_G.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture);
                    int      day = ActualMonthlyDay - RecurrenceStartDate.Day;
                    RecurrenceStartDate = RecurrenceStartDate.AddDays(day);
                    int OriginalEventID = -1;
                    while (DayDifference(RecurrenceStartDate, RecurrenceEndDate) < 0)
                    {
                        objInfo.OriginalEventID = OriginalEventID;
                        objInfo.StartDate       = RecurrenceStartDate;
                        objInfo.EndDate         = RecurrenceStartDate;
                        if (String.IsNullOrEmpty(txtTimeStart_G.Text) == false)
                        {
                            Char     delimiter = ':';
                            String[] str       = txtTimeStart_G.Text.Split(delimiter);
                            objInfo.StartDate = objInfo.StartDate.AddHours(Double.Parse(str[0]));
                            objInfo.StartDate = objInfo.StartDate.AddMinutes(Double.Parse(str[1]));
                        }
                        if (String.IsNullOrEmpty(txtTimeEnd_G.Text) == false)
                        {
                            Char     delimiter = ':';
                            String[] str       = txtTimeEnd_G.Text.Split(delimiter);
                            objInfo.EndDate = objInfo.EndDate.AddHours(Double.Parse(str[0]));
                            objInfo.EndDate = objInfo.EndDate.AddMinutes(Double.Parse(str[1]));
                        }
                        RecurrenceStartDate = RecurrenceStartDate.AddMonths(1);
                        int id = objImpl.Insert(objInfo);
                        if (OriginalEventID == -1)
                        {
                            OriginalEventID = id;
                        }
                    }
                }
            }
        }