Example #1
0
        private void BindDrop(SchedulesEntity entity)
        {
            for (int i = 8; i < 24; i++)
            {
                ddlStartHours.Items.Add(new ListItem(i.ToString(), i.ToString()));
                ddlEndHours.Items.Add(new ListItem(i.ToString(), i.ToString()));
                ddlStartHours.SelectedValue = "9";
                ddlEndHours.SelectedValue   = "9";
            }
            List <SchedulesEntity> list = new App.SchedulesApplication().GetSchedules(entity.PlanDate, targetUserId);

            ScheduleTimeList   = new ScheduleTimeHelpers(list).Times;
            rptPlan.DataSource = ScheduleTimeList;
            rptPlan.DataBind();


            List <UsersEntity> UsersEntities = new App.UserApplication().GetActiveUserList().FindAll(r => r.RoleID != (int)RolesEnum.CLIENT && r.UserID != UserInfo.UserID);

            if (UsersEntities.Count > 0)
            {
                rtpUser.DataSource = UsersEntities.OrderBy(r => r.FirstName);
            }
            else
            {
                rtpUser.DataSource = UsersEntities;
            }
            rtpUser.DataBind();
        }
        private string Save(string title, string description, DateTime date, string startTime
                            , string endTime, bool isMeeting, List <string> meetingUserIDs)
        {
            SchedulesEntity entity = new SchedulesEntity();

            entity.Title       = title.NoHTML();
            entity.Description = description.NoHTML();
            entity.CreateBy    = UserID;
            entity.CreateOn    = DateTime.Now;
            entity.StartTime   = startTime;
            entity.EndTime     = endTime;
            entity.UpdateBy    = UserID;
            entity.UpdateOn    = DateTime.Now;
            entity.PlanDate    = date;

            string result = IsValidSchedule(date, startTime, endTime);

            if (result != "1" && result != "-1")
            {
                return(result);
            }

            if (isMeeting)
            {
                entity.MeetingID     = string.Format("{0}:{1}", UserID, DateTime.Now.ToString("MM_dd_yy_HH:mm_ss"));
                entity.MeetingStatus = 1;
                List <UsersEntity> usersList = new List <UsersEntity>();
                foreach (string userID in meetingUserIDs)
                {
                    usersList.Add(new App.UserApplication().GetUser(int.Parse(userID)));
                }
                UsersEntity userInfo = new App.UserApplication().GetUser(UserID);
                if (usersList.Find(r => r.UserID == UserID) == null) //如果不包括创建者,就添加他
                {
                    usersList.Add(userInfo);
                }
                if (new App.SchedulesApplication().Add(entity, usersList, userInfo) > 0)
                {
                    return("1");
                }
                else
                {
                    return("Operation failed.");
                }
            }
            else
            {
                entity.MeetingID = string.Empty;
                entity.UserID    = UserID;

                if (new App.SchedulesApplication().Add(entity) > 0)
                {
                    return("1");
                }
                else
                {
                    return("Operation failed.");
                }
            }
        }
Example #3
0
        public int Add(SchedulesEntity entity, List <UsersEntity> userList, UsersEntity currentUser)
        {
            using (TransactionScope tr = new TransactionScope())
            {
                foreach (UsersEntity tmpUser in userList)
                {
                    entity.UserID = tmpUser.UserID;
                    if (schedulesRepository.Insert(entity) < 1)//添加失败
                    {
                        return(0);
                    }
                }
                tr.Complete();
            }

            string body = UtilFactory.Helpers.FileHelper.GetTemplateFileContent("MeetingInvitations.txt");

            body = body.Replace("[Title]", entity.Title).Replace("[DataTime]", entity.PlanDate.ToString("MM/dd/yyyy"));
            userList.Remove(currentUser);
            foreach (UsersEntity tmpUser in userList)
            {
                string content = body.Replace("{FristName}", tmpUser.FirstName);
                emailSender.SendMail(tmpUser.UserName, Config.DefaultSendEmail, string.Format("[Meeting]{0}", entity.Title), content);
            }
            return(1);
        }
        public bool Update(SchedulesEntity model)
        {
            StringBuilder sb = new StringBuilder();

            sb.Append("Update Schedules set ")
            .Append(" Title=@Title,StartTime=@StartTime,EndTime=@EndTime,Description=@Description")
            .Append(",UpdateBy=@UpdateBy,UpdateOn=@UpdateOn")
            .Append(" where ID=@ID");

            Database db = DatabaseFactory.CreateDatabase();

            using (DbCommand dbCommand = db.GetSqlStringCommand(sb.ToString()))
            {
                db.AddInParameter(dbCommand, "Title", DbType.String, model.Title);
                db.AddInParameter(dbCommand, "StartTime", DbType.String, model.StartTime);
                db.AddInParameter(dbCommand, "EndTime", DbType.String, model.EndTime);
                db.AddInParameter(dbCommand, "Description", DbType.String, model.Description);

                db.AddInParameter(dbCommand, "UpdateBy", DbType.Int32, model.UpdateBy);
                db.AddInParameter(dbCommand, "UpdateOn", DbType.DateTime, model.UpdateOn);

                db.AddInParameter(dbCommand, "ID", DbType.Int32, model.ID);

                return(db.ExecuteNonQuery(dbCommand) > 0);
            }
        }
        public string IsValidEditSchedule(SchedulesEntity entity, string startTime, string endTime)
        {
            if (string.IsNullOrEmpty(startTime) || string.IsNullOrEmpty(endTime))
            {
                return("params error.");
            }

            int start = ScheduleTimeHelpers.TimeHandle(startTime);
            int end   = ScheduleTimeHelpers.TimeHandle(endTime);

            if (start > end)
            {
                return("Please entry again , Starting time should not exceed finishing time.");
            }

            if (DateTime.Parse(string.Format("{0} {1}", entity.PlanDate.ToString("MM/dd/yyyy"), startTime)) < DateTime.Now)
            {
                return("Plan time not less than the current time.");
            }

            if (!(entity.StartTime == startTime && entity.EndTime == endTime))
            {
                List <SchedulesEntity>    schedulesList    = new App.SchedulesApplication().GetSchedules(entity.PlanDate, UserID);
                List <ScheduleTimeEntity> scheduleTimeList = new ScheduleTimeHelpers(schedulesList).Times;
                for (int i = start; i < end; i++)
                {
                    ScheduleTimeEntity t = scheduleTimeList.Find(r => r.Cell == i && r.IsPlan);
                    if (t != null)
                    {
                        return("-1");
                    }
                }
            }
            return("1");
        }
        public int Add(SchedulesEntity entity, List <UsersEntity> userList, UsersEntity currentUser)
        {
            this.ClearBrokenRuleMessages();
            int id = mgr.Add(entity, userList, currentUser);

            this.AddBrokenRuleMessages(mgr.BrokenRuleMessages);
            return(id);
        }
Example #7
0
        public void SendMeetingEmailToUsersExceptCurrent(SchedulesEntity schedulesEntity, List <UsersEntity> meetingUsers
                                                         , string contentAppendix)
        {
            string body = UtilFactory.Helpers.FileHelper.GetTemplateFileContent("MeetingInvitations.txt");

            body = body.Replace("[Title]", schedulesEntity.Title).Replace("[DataTime]"
                                                                          , DateTime.Now.ToString("MM/dd/yyyy") + " " + contentAppendix);
            foreach (UsersEntity meetingUser in meetingUsers)
            {
                emailSender.SendMail(meetingUser.UserName, Config.DefaultSendEmail
                                     , string.Format("[Meeting]{0}", schedulesEntity.Title + " " + contentAppendix), body);
            }
        }
 /// <summary>
 /// 同意会议
 /// </summary>
 public bool AgreeMeeting(SchedulesEntity schedulesEntity, DateTime updateDate, UsersEntity updateUser)
 {
     if (mgr.AgreeMeeting(schedulesEntity.MeetingID, updateDate, updateUser.ID))
     {
         List <UsersEntity> meetingMailUsers = mgr.GetMeetingUsersExceptCurrent(schedulesEntity.MeetingID, updateUser.UserID);
         mgr.SendMeetingEmailToUsersExceptCurrent(schedulesEntity, meetingMailUsers, "was agreed");
         return(true);
     }
     else
     {
         return(false);
     }
 }
        /// <summary>
        /// 不同意会议
        /// </summary>
        public bool VoteMeeting(SchedulesEntity schedulesEntity, DateTime updateDate, UsersEntity updateUser)
        {
            //Save the meeting users before delete the users.
            List <UsersEntity> meetingMailUsers = mgr.GetMeetingUsersExceptCurrent(schedulesEntity.MeetingID, updateUser.UserID);

            if (mgr.VoteMeeting(schedulesEntity.MeetingID, updateDate, updateUser.ID))
            {
                mgr.SendMeetingEmailToUsersExceptCurrent(schedulesEntity, meetingMailUsers, "was cancelld");
                return(true);
            }
            else
            {
                return(false);
            }
        }
Example #10
0
        public bool Update(SchedulesEntity entity, List <UsersEntity> moveUsers, List <UsersEntity> newUsers)
        {
            using (TransactionScope tr = new TransactionScope())
            {
                if (moveUsers.Count > 0)
                {
                    var userIds = moveUsers.Select(r => r.UserID.ToString()).ToArray();
                    if (schedulesRepository.VoteMeeting(entity.MeetingID, userIds, DateTime.Now.Date) == false)
                    {
                        return(false);
                    }
                }
                if (schedulesRepository.UpdateMeeting(entity) == false)
                {
                    return(false);
                }

                foreach (UsersEntity tmp in newUsers)
                {
                    entity.UserID = tmp.UserID;
                    if (schedulesRepository.Insert(entity) < 1)
                    {
                        return(false);
                    }
                }
                tr.Complete();
            }


            string body = UtilFactory.Helpers.FileHelper.GetTemplateFileContent("MeetingInvitations.txt");

            body = body.Replace("[Title]", entity.Title).Replace("[DataTime]", entity.PlanDate.ToString("MM/dd/yyyy"));
            foreach (UsersEntity tmpUser in newUsers) //新加的参会人员发邮件
            {
                emailSender.SendMail(tmpUser.UserName, Config.DefaultSendEmail, string.Format("[Meeting]{0}", entity.Title), body);
            }
            body = UtilFactory.Helpers.FileHelper.GetTemplateFileContent("MeetingCancel.txt");
            body = body.Replace("[Title]", entity.Title);
            foreach (UsersEntity tmpUser in moveUsers)//取消参会资格的人员发送取消邮件
            {
                emailSender.SendMail(tmpUser.UserName, Config.DefaultSendEmail, string.Format("[Meeting]{0}", entity.Title), body);
            }

            return(true);
        }
        public int Insert(SchedulesEntity model)
        {
            StringBuilder sb = new StringBuilder();

            sb.Append("insert into Schedules(Title,StartTime,EndTime,Description,CreateBy,CreateOn,")
            .Append("UpdateBy,UpdateOn,MeetingStatus,MeetingID,PlanDate,UserID)")
            .Append(" values(@Title,@StartTime,@EndTime,@Description,@CreateBy,@CreateOn,")
            .Append("@UpdateBy,@UpdateOn,@MeetingStatus,@MeetingID,@PlanDate,@UserID)")
            .Append(";select ISNULL( SCOPE_IDENTITY(),0);");

            Database db = DatabaseFactory.CreateDatabase();

            using (DbCommand dbCommand = db.GetSqlStringCommand(sb.ToString()))
            {
                db.AddInParameter(dbCommand, "Title", DbType.String, model.Title);
                db.AddInParameter(dbCommand, "StartTime", DbType.String, model.StartTime);
                db.AddInParameter(dbCommand, "EndTime", DbType.String, model.EndTime);
                db.AddInParameter(dbCommand, "Description", DbType.String, model.Description);
                db.AddInParameter(dbCommand, "CreateBy", DbType.Int32, model.CreateBy);
                db.AddInParameter(dbCommand, "CreateOn", DbType.DateTime, model.CreateOn);

                db.AddInParameter(dbCommand, "UpdateBy", DbType.Int32, model.UpdateBy);
                db.AddInParameter(dbCommand, "UpdateOn", DbType.DateTime, model.UpdateOn);
                db.AddInParameter(dbCommand, "MeetingStatus", DbType.Int32, model.MeetingStatus);
                db.AddInParameter(dbCommand, "MeetingID", DbType.String, model.MeetingID);
                db.AddInParameter(dbCommand, "PlanDate", DbType.DateTime, model.PlanDate);
                db.AddInParameter(dbCommand, "UserID", DbType.Int32, model.UserID);

                int    result;
                object obj = db.ExecuteScalar(dbCommand);
                if (!int.TryParse(obj.ToString(), out result))
                {
                    return(0);
                }
                return(result);
            }
        }
        public bool UpdateMeeting(SchedulesEntity entity)
        {
            StringBuilder sb = new StringBuilder();

            sb.Append("Update Schedules set ")
            .Append(" Title=@Title,StartTime=@StartTime,EndTime=@EndTime,Description=@Description")
            .Append(",UpdateBy=@UpdateBy,UpdateOn=@UpdateOn")
            .Append(" where MeetingID=@MeetingID and MeetingStatus!=3");

            Database db = DatabaseFactory.CreateDatabase();

            using (DbCommand dbCommand = db.GetSqlStringCommand(sb.ToString()))
            {
                try
                {
                    db.AddInParameter(dbCommand, "Title", DbType.String, entity.Title);
                    db.AddInParameter(dbCommand, "StartTime", DbType.String, entity.StartTime);
                    db.AddInParameter(dbCommand, "EndTime", DbType.String, entity.EndTime);
                    db.AddInParameter(dbCommand, "Description", DbType.String, entity.Description);

                    db.AddInParameter(dbCommand, "UpdateBy", DbType.Int32, entity.UpdateBy);
                    db.AddInParameter(dbCommand, "UpdateOn", DbType.DateTime, entity.UpdateOn);

                    db.AddInParameter(dbCommand, "MeetingID", DbType.String, entity.MeetingID);

                    db.ExecuteNonQuery(dbCommand);
                    return(true);
                }
                catch (Exception ex)
                {
                    WebLogAgent.Write(string.Format("[SQLText:UpdateMeeting ; {0},{1}Messages:\r\n{2}]",
                                                    sb.ToString(), base.FormatParameters(dbCommand.Parameters), ex.Message));
                    return(false);
                }
            }
        }
Example #13
0
        private void BindData(SchedulesEntity entity)
        {
            txtTitle.Text                = entity.Title;
            txtDescription.Text          = entity.Description;
            ddlStartHours.SelectedValue  = entity.StartTime.Split(':')[0];
            ddlStartMinute.SelectedValue = entity.StartTime.Split(':')[1];

            ddlEndHours.SelectedValue  = entity.EndTime.Split(':')[0];
            ddlEndMinute.SelectedValue = entity.EndTime.Split(':')[1];

            if (entity.MeetingID != "") //meeting
            {
                chkMeeting.Enabled = false;
                if (entity.CreateBy == UserInfo.UserID && targetUserId == UserInfo.UserID) //如果是会议的创建者
                {
                    if (entity.MeetingStatus == 1)                                         //等待审核
                    {
                        btnDelete.Visible = true;
                    }
                    else if (entity.MeetingStatus == 2 || entity.MeetingStatus == 3) //同意了,或者取消了
                    {
                        Option           = 1;
                        litAgree.Visible = true;
                        litAgree.Text    = entity.MeetingStatus == 2 ? "agree" : "cancel";
                        //btnOK.Visible = false;
                        //btnNo.Visible = false;
                    }
                }
                else
                {
                    if (entity.MeetingStatus == 1) //等等审核
                    {
                        List <UsersEntity> meetingUsers = new App.SchedulesApplication()
                                                          .GetMeetingUsers(entity.MeetingID);
                        if (meetingUsers.Find(r => r.UserID == UserInfo.UserID) != null && targetUserId == UserInfo.UserID)
                        {
                            btnOK.Visible = true;
                            btnNo.Visible = true;
                        }
                    }
                    else
                    {
                        litAgree.Visible = true;
                        litAgree.Text    = entity.MeetingStatus == 2 ? "agree" : "cancel";
                    }
                }

                chkMeeting.Checked = true;
            }
            else //不是会议时
            {
                chkMeeting.Enabled = false;
                if (entity.CreateBy == UserInfo.UserID && targetUserId == UserInfo.UserID && entity.PlanDate >= DateTime.Now.Date)
                {
                    btnDelete.Visible = true;
                }
            }

            if (Option == 2) //过期的计划,只能读
            {
                if (entity.PlanDate < DateTime.Now.Date)
                {
                    Option = 1;
                }
            }

            switch (Option)
            {
            case 0:    //不可访问
            case 1:    //可读
            {
                btnSave.Visible       = false;
                btnSaveAndNew.Visible = false;
                break;
            }

            case 2:    //可编辑的
            {
                btnSave.Visible       = true;
                btnSaveAndNew.Visible = true;
                break;
            }
            }

            if (entity.PlanDate < DateTime.Now.Date)
            {
                btnDelete.Visible = false;
            }
        }
 public bool Update(SchedulesEntity entity)
 {
     return(mgr.Update(entity));
 }
Example #15
0
        //private void BindGant()
        //{
        //    if (QS("ID", 0) > 0 && QS("target", 0) > 0)
        //    {
        //        targetUserId = QS("target", 0);
        //        SchedulesEntity entity = new App.SchedulesApplication().GetInfo(QS("ID", 0));
        //        List<SchedulesEntity> list = new App.SchedulesApplication().GetSchedules(entity.PlanDate, targetUserId);
        //        jscheduleResult = SerializeScheduleList(list);
        //    }
        //}

        private void BindData(SchedulesEntity entity)
        {
            txtTitle.Text                = entity.Title;
            txtDescription.Text          = entity.Description;
            ddlStartHours.SelectedValue  = entity.StartTime.Split(':')[0];
            ddlStartMinute.SelectedValue = entity.StartTime.Split(':')[1];

            ddlEndHours.SelectedValue  = entity.EndTime.Split(':')[0];
            ddlEndMinute.SelectedValue = entity.EndTime.Split(':')[1];

            if (entity.MeetingID != "") //meeting
            {
                chkMeeting.Enabled = false;
                if (entity.CreateBy == UserInfo.UserID && targetUserId == UserInfo.UserID) //如果是会议的创建者
                {
                    if (entity.MeetingStatus == 1)                                         //等待审核
                    {
                        lstUsers.Enabled        = true;
                        lstMeetingUsers.Enabled = true;
                        btnAddUsers.Visible     = true;
                        btnMoveUsers.Visible    = true;
                        btnDelete.Visible       = true;
                    }
                    else if (entity.MeetingStatus == 2 || entity.MeetingStatus == 3) //同意了,或者取消了
                    {
                        Option           = 1;
                        litAgree.Visible = true;
                        litAgree.Text    = entity.MeetingStatus == 2 ? "agree" : "cancel";
                        //btnOK.Visible = false;
                        //btnNo.Visible = false;
                    }
                }
                else
                {
                    if (entity.MeetingStatus == 1) //等等审核
                    {
                        List <UsersEntity> meetingUsers = new App.SchedulesApplication()
                                                          .GetMeetingUsers(entity.MeetingID);
                        if (meetingUsers.Find(r => r.UserID == UserInfo.UserID) != null && targetUserId == UserInfo.UserID)
                        {
                            btnOK.Visible = true;
                            btnNo.Visible = true;
                        }
                    }
                    else
                    {
                        litAgree.Visible = true;
                        litAgree.Text    = entity.MeetingStatus == 2 ? "agree" : "cancel";
                    }
                }

                chkMeeting.Checked = true;
                List <UsersEntity> meetingUsersList = new App.SchedulesApplication().GetMeetingUsers(entity.MeetingID);
                lstMeetingUsers.DataSource = meetingUsersList.OrderBy(r => r.FirstName);
                lstMeetingUsers.DataBind();

                List <UsersEntity> usersList = new App.UserApplication().ClonedActiveUserList.FindAll(r => r.Role != RolesEnum.CLIENT);

                foreach (UsersEntity tmpUses in meetingUsersList)
                {
                    UsersEntity findUser = usersList.Find(r => r.UserID == tmpUses.UserID);
                    if (findUser != null)
                    {
                        usersList.Remove(findUser);
                    }
                }
                lstUsers.DataSource = usersList;
                lstUsers.DataBind();
            }
            else //不是会议时
            {
                chkMeeting.Enabled = false;
                if (entity.CreateBy == UserInfo.UserID && targetUserId == UserInfo.UserID && entity.PlanDate >= DateTime.Now.Date)
                {
                    btnDelete.Visible = true;
                }
            }

            if (Option == 2) //过期的计划,只能读
            {
                if (entity.PlanDate < DateTime.Now.Date)
                {
                    Option = 1;
                }
            }

            switch (Option)
            {
            case 0:    //不可访问
            case 1:    //可读
            {
                btnSave.Visible       = false;
                btnSaveAndNew.Visible = false;
                break;
            }

            case 2:    //可编辑的
            {
                btnSave.Visible       = true;
                btnSaveAndNew.Visible = true;
                break;
            }
            }

            if (entity.PlanDate < DateTime.Now.Date)
            {
                btnDelete.Visible = false;
            }
        }
Example #16
0
 public bool Update(SchedulesEntity entity)
 {
     return(schedulesRepository.Update(entity));
 }
 /// <summary>
 /// 修改会议
 /// </summary>
 /// <param name="entity"></param>
 /// <param name="moveUsers">取消参加会议资格的人员</param>
 /// <param name="newUsers">新增加的会议人员</param>
 /// <returns></returns>
 public bool Update(SchedulesEntity entity, List <UsersEntity> moveUsers, List <UsersEntity> newUsers)
 {
     return(mgr.Update(entity, moveUsers, newUsers));
 }
 public int Add(SchedulesEntity entity)
 {
     return(mgr.Add(entity));
 }
Example #19
0
        private string Edit(string title, string description, SchedulesEntity entity, string startTime
                            , string endTime, bool isMeeting, List <string> meetingUserIDs)
        {
            entity.Title       = title.NoHTML();
            entity.Description = description.NoHTML();
            entity.StartTime   = startTime;
            entity.EndTime     = endTime;
            entity.UpdateBy    = UserID;
            entity.UpdateOn    = DateTime.Now;

            string result = IsValidEditSchedule(entity, startTime, endTime);

            if (result != "1" && result != "-1")
            {
                return(result);
            }

            if (isMeeting)
            {
                List <UsersEntity> usersList = new List <UsersEntity>();
                foreach (string userID in meetingUserIDs)
                {
                    usersList.Add(new App.UserApplication().GetUser(int.Parse(userID)));
                }
                UsersEntity userInfo = new App.UserApplication().GetUser(UserID);
                if (usersList.Find(r => r.UserID == UserID) == null) //如果不包括创建者,就添加他
                {
                    usersList.Add(userInfo);
                }

                List <UsersEntity> moveSales = new App.SchedulesApplication().GetMeetingUsers(entity.MeetingID);
                List <UsersEntity> newList   = new List <UsersEntity>();
                UsersEntity        tmpUser;

                foreach (UsersEntity tmp in usersList)
                {
                    tmpUser = moveSales.Find(r => r.UserID == tmp.UserID);
                    if (tmpUser != null)
                    {
                        moveSales.Remove(tmpUser);
                    }
                    else
                    {
                        newList.Add(tmp);
                    }
                }

                if (new App.SchedulesApplication().Update(entity, moveSales, newList))
                {
                    return("1");
                }
                else
                {
                    return("Operation failed.");
                }
            }
            else
            {
                if (new App.SchedulesApplication().Update(entity))
                {
                    return("1");
                }
                else
                {
                    return("Operation failed.");
                }
            }
        }
Example #20
0
        private void Save(bool isNew)
        {
            SchedulesEntity entity = new SchedulesEntity();

            entity.Title       = txtTitle.Text;
            entity.Description = txtDescription.Text;
            entity.CreateBy    = UserInfo.UserID;
            entity.CreateOn    = DateTime.Now;
            entity.StartTime   = string.Format("{0}:{1}", ddlStartHours.SelectedValue, ddlStartMinute.SelectedValue);
            entity.EndTime     = string.Format("{0}:{1}", ddlEndHours.SelectedValue, ddlEndMinute.SelectedValue);
            entity.UpdateBy    = UserInfo.UserID;
            entity.UpdateOn    = DateTime.Now;
            entity.PlanDate    = Date;

            int start = ScheduleTimeHelpers.TimeHandle(entity.StartTime);
            int end   = ScheduleTimeHelpers.TimeHandle(entity.EndTime);

            if (start > end)
            {
                ShowMessageToClient("Please entry again , Starting time should not exceed finishing time.", 0, false, false);
                return;
            }

            if (DateTime.Parse(string.Format("{0} {1}", entity.PlanDate.ToString("MM/dd/yyyy"), entity.StartTime)) < DateTime.Now)
            {
                ShowMessageToClient("Plan time not less than the current time.", 0, false, false);
                return;
            }

            for (int i = start; i < end; i++)
            {
                ScheduleTimeEntity t = ScheduleTimeList.Find(r => r.Cell == i && r.IsPlan);
                if (t != null)
                {
                    ShowMessageToClient("The hours of the two schedules conflict.", 0, false, false);
                    return;
                }
            }

            if (chkMeeting.Checked)
            {
                entity.MeetingID     = string.Format("{0}:{1}", UserInfo.UserID, DateTime.Now.ToString("MM_dd_yy_HH:mm_ss"));
                entity.MeetingStatus = 1;
                List <UsersEntity> usersList = new List <UsersEntity>();
                foreach (ListItem li in lstMeetingUsers.Items)
                {
                    usersList.Add(new App.UserApplication().GetUser(int.Parse(li.Value)));
                }
                if (usersList.Find(r => r.UserID == UserInfo.UserID) == null) //如果不包括创建者,就添加他
                {
                    usersList.Add(UserInfo);
                }
                if (new App.SchedulesApplication().Add(entity, usersList, UserInfo) > 0)
                {
                    if (isNew)
                    {
                        Redirect("AddSchedules.aspx?Date=" + Date.ToString("MM/dd/yyyy"));
                    }
                    else
                    {
                        ShowSuccessMessageToClient(true, true);
                    }
                }
                else
                {
                    ShowFailMessageToClient();
                }
            }
            else
            {
                entity.MeetingID = string.Empty;
                entity.UserID    = UserInfo.UserID;

                if (new App.SchedulesApplication().Add(entity) > 0)
                {
                    //List<SchedulesEntity> list = new App.SchedulesApplication().GetSchedules(entity.PlanDate, UserInfo.UserID);
                    //jscheduleResult = SerializeScheduleList(list);

                    if (isNew)
                    {
                        Redirect("AddSchedules.aspx?Date=" + Date.ToString("MM/dd/yyyy"));
                    }
                    else
                    {
                        ShowSuccessMessageToClient(true, true);
                    }
                }
                else
                {
                    ShowFailMessageToClient();
                }
            }
        }
Example #21
0
        private void Save(bool isNew)
        {
            SchedulesEntity entity = new SchedulesEntity();

            entity.Title       = txtTitle.Text;
            entity.Description = txtDescription.Text;
            entity.CreateBy    = UserInfo.UserID;
            entity.CreateOn    = DateTime.Now;
            entity.StartTime   = string.Format("{0}:{1}", ddlStartHours.SelectedValue, ddlStartMinute.SelectedValue);
            entity.EndTime     = string.Format("{0}:{1}", ddlEndHours.SelectedValue, ddlEndMinute.SelectedValue);
            entity.UpdateBy    = UserInfo.UserID;
            entity.UpdateOn    = DateTime.Now;
            entity.PlanDate    = Date;

            int start = ScheduleTimeHelpers.TimeHandle(entity.StartTime);
            int end   = ScheduleTimeHelpers.TimeHandle(entity.EndTime);

            if (string.IsNullOrEmpty(entity.Title))
            {
                ShowFailMessageToClient("Please enter the title.");
                return;
            }
            if (start > end)
            {
                ShowFailMessageToClient("Please entry again , Starting time should not exceed finishing time.");
                return;
            }

            if (DateTime.Parse(string.Format("{0} {1}", entity.PlanDate.ToString("MM/dd/yyyy"), entity.StartTime)) < DateTime.Now)
            {
                ShowFailMessageToClient("Plan time not less than the current time.");
                return;
            }

            for (int i = start; i < end; i++)
            {
                ScheduleTimeEntity t = ScheduleTimeList.Find(r => r.Cell == i && r.IsPlan);
                if (t != null)
                {
                    ShowFailMessageToClient("The hours of the two schedules conflict.");
                    return;
                }
            }

            if (chkMeeting.Checked)
            {
                entity.MeetingID     = string.Format("{0}:{1}", UserInfo.UserID, DateTime.Now.ToString("MM_dd_yy_HH:mm_ss"));
                entity.MeetingStatus = 1;
                List <UsersEntity> usersList = new List <UsersEntity>();
                for (int i = 0; i < this.rtpUser.Items.Count; i++)
                {
                    CheckBox check = (CheckBox)this.rtpUser.Items[i].FindControl("cbUser");
                    if (check.Checked)
                    {
                        Literal lit = this.rtpUser.Items[i].FindControl("ltlid") as Literal;
                        usersList.Add(new App.UserApplication().GetUser(int.Parse(lit.Text)));
                    }
                }
                if (usersList.Find(r => r.UserID == UserInfo.UserID) == null) //如果不包括创建者,就添加他
                {
                    usersList.Add(UserInfo);
                }
                if (new App.SchedulesApplication().Add(entity, usersList, UserInfo) > 0)
                {
                    if (isNew)
                    {
                        Redirect("Add.aspx?Date=" + Date.ToString("MM/dd/yyyy"), true);
                    }
                    else
                    {
                        Redirect(EmptyPopPageUrl, false, true);
                    }
                }
                else
                {
                    ShowFailMessageToClient();
                }
            }
            else
            {
                entity.MeetingID = string.Empty;
                entity.UserID    = UserInfo.UserID;

                if (new App.SchedulesApplication().Add(entity) > 0)
                {
                    if (isNew)
                    {
                        Redirect("Add.aspx?Date=" + Date.ToString("MM/dd/yyyy"), true);
                    }
                    else
                    {
                        Redirect(EmptyPopPageUrl, false, true);
                    }
                }
                else
                {
                    ShowFailMessageToClient();
                }
            }
        }
Example #22
0
 public int Add(SchedulesEntity entity)
 {
     return(schedulesRepository.Insert(entity));
 }