Пример #1
0
        /// <summary>
        /// Search schedule by name
        /// </summary>
        /// <param name="scheduleName">Schedule name</param>
        /// <returns>Return list schedule if founded or error if null</returns>
        public List <DTO_Schedule> SearchCard(string scheduleName)
        {
            List <DTO_Schedule> lstSchedules = new List <DTO_Schedule>();
            DataTable           dt           = dal.GetScheduledByName(scheduleName);

            if (dt.Rows.Count < 0)
            {
                return(null);
            }

            try
            {
                foreach (DataRow row in dt.Rows)
                {
                    DTO_Schedule schedule = new DTO_Schedule();
                    schedule.Id          = row["Id"] == DBNull.Value ? null : row["Id"].ToString();
                    schedule.Name        = row["Name"] == DBNull.Value ? null : row["Name"].ToString();
                    schedule.Description = row["Description"] == DBNull.Value ? null : row["Description"].ToString();
                    schedule.Periods     = bus_period.GetAllPeriodOfSchedule(schedule.Id);

                    lstSchedules.Add(schedule);
                }

                return(lstSchedules);
            }
            catch
            {
                return(null);
            }
        }
Пример #2
0
        private void Insert_to_waitingSMS()
        {
            DataTable tb = new DataTable();

            tb = checkSchedule();
            if (tb.Rows.Count > 0)
            {
                DTO_Schedule _sch = new DTO_Schedule();
                _sch.Active = false;
                _sch.ID     = tb.Rows[0][0].ToString();
                _schedule.Update_state(_sch);
                for (int i = 0; i < tb.Rows.Count; i++)
                {
                    string ID      = tb.Rows[i][0].ToString();
                    string GroupID = tb.Rows[i][1].ToString();
                    if (GroupID == "")
                    {
                        sql_all_customer(ID);
                    }
                    else
                    {
                        sql_all_customer(ID, GroupID);
                    }
                }
            }
        }
Пример #3
0
        public bool Update(DTO_Schedule _Cus)
        {
            Connet();
            string sql = "update Schedule set Date=@Date, Time=@Time,SMS_info =@SMS_info,AccountID= @AccountID, Active=@Active  Where ID=@ID";

            try
            {
                _cmd = new SqlCommand(sql, _conn);
                _cmd.Parameters.Add("@ID", SqlDbType.VarChar).Value        = _Cus.ID;
                _cmd.Parameters.Add("@Date", SqlDbType.Date).Value         = _Cus.Date;
                _cmd.Parameters.Add("@Time", SqlDbType.DateTime).Value     = _Cus.Time;
                _cmd.Parameters.Add("@AccountID", SqlDbType.VarChar).Value = _Cus.AccountID;
                _cmd.Parameters.Add("@Active", SqlDbType.Bit).Value        = _Cus.Active;
                _cmd.ExecuteNonQuery();
                _cmd.Dispose();
                Disconnet();
            }
            catch (Exception ex)
            {
                Disconnet();
                return(false);

                throw ex;
            }
            return(true);
        }
Пример #4
0
        /// <summary>
        /// Get schedule by key (id)
        /// </summary>
        /// <param name="id"></param>
        /// <returns>Return schedule if founed or null if error</returns>
        public DTO_Schedule GetScheduleByKey(string id)
        {
            DataTable dt = dal.GetScheduledById(id);

            if (dt.Rows.Count < 0)
            {
                return(null);
            }

            try
            {
                DataRow row = dt.Rows[0];

                DTO_Schedule schedule = new DTO_Schedule();
                schedule.Id          = row["Id"] == DBNull.Value ? null : row["Id"].ToString();
                schedule.Name        = row["Name"] == DBNull.Value ? null : row["Name"].ToString();
                schedule.Description = row["Description"] == DBNull.Value ? null : row["Description"].ToString();
                schedule.Periods     = bus_period.GetAllPeriodOfSchedule(schedule.Id);

                return(schedule);
            }
            catch
            {
                return(null);
            }
        }
Пример #5
0
        private void MyScheduleWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            btSave.IsEnabled = true;

            if (result.Result)
            {
                if (this.mode == EType.WindowMode.ADD_MODE)
                {
                    if (getScheduleWorker.IsBusy)
                    {
                        getScheduleWorker.CancelAsync();
                    }
                    else
                    {
                        getScheduleWorker.RunWorkerAsync();
                    }
                }
                else
                {
                    DTO_Schedule oldSchedule = Repository.lstAllSchedules.FirstOrDefault(c => c.Id == schedule.Id);
                    if (oldSchedule != null)
                    {
                        oldSchedule = schedule;
                    }

                    this.DialogResult = true;
                    this.Hide();
                }
            }
            else
            {
                MessageBox.Show(result.Detail, "", MessageBoxButton.OK, MessageBoxImage.Error);
            }
        }
Пример #6
0
        /// <summary>
        /// Add new schedule
        /// </summary>
        /// <param name="card">The schedule object want to add</param>
        /// <returns>Return true if update success, Error if update fail or validate fail</returns>
        public SQLResult AddNewSchedule(DTO_Schedule schedule)
        {
            if (schedule == null)
            {
                return(new SQLResult(false, "Schedule null"));
            }

            return(dal.AddNewSchedule(schedule));
        }
Пример #7
0
        private void GetPeriodWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            if (newPeriod == null || newPeriod.Id == "")
            {
            }

            DTO_Schedule schedule = Repository.lstAllSchedules.FirstOrDefault(s => s.Id == newPeriod.Schedule);

            if (schedule != null)
            {
                schedule.Periods.Add(newPeriod);
            }

            this.DialogResult = true;
            this.Hide();
        }
Пример #8
0
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            InitData();

            switch (mode)
            {
            case EType.WindowMode.ADD_MODE:
                schedule = new DTO_Schedule();
                ResetControl();
                break;

            default:
                BindData();
                break;
            }
        }
Пример #9
0
 private void DelScheduleWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
 {
     if (result.Result)
     {
         DTO_Schedule oldSchedule = Repository.lstAllSchedules.FirstOrDefault(s => s.Id == schedule.Id);
         if (oldSchedule != null)
         {
             Repository.lstAllSchedules.Remove(oldSchedule);
         }
         this.DialogResult = true;
         this.Hide();
     }
     else
     {
         MessageBox.Show(result.Detail, "", MessageBoxButton.OK, MessageBoxImage.Error);
     }
 }
Пример #10
0
        public List <DTO_Schedule> GetScheduleInRight(string rightId)
        {
            List <DTO_Schedule> lstSchedules = new List <DTO_Schedule>();
            DataTable           dt           = dal.GetRightDetailByRight(rightId, 1);

            if (dt.Rows.Count <= 0)
            {
                return(lstSchedules);
            }

            foreach (DataRow dr in dt.Rows)
            {
                string       id       = dr["DetailId"].ToString();
                DTO_Schedule schedule = bus_Schedule.GetScheduleByKey(id);
                lstSchedules.Add(schedule);
            }

            return(lstSchedules);
        }
Пример #11
0
        /// <summary>
        /// Insert new schedule to database
        /// </summary>
        /// <param name="schedule"></param>
        /// <returns></returns>
        public SQLResult AddNewSchedule(DTO_Schedule schedule)
        {
            DataTable dt     = new DataTable();
            SQLResult result = new SQLResult(false, "");

            try
            {
                _conn.Open();

                SqlCommand command = new SqlCommand();
                command.Connection  = _conn;
                command.CommandType = CommandType.StoredProcedure;
                command.CommandText = "spLScheduleSave";
                command.Parameters.AddWithValue("WorkType", "A");
                command.Parameters.AddWithValue("@Id", "");
                command.Parameters.AddWithValue("@Name", schedule.Name);
                command.Parameters.AddWithValue("@Description", schedule.Description);

                SqlDataAdapter adapter = new SqlDataAdapter();
                adapter.SelectCommand = command;
                adapter.Fill(dt);

                if (dt.Rows[0]["Result"].ToString() == "OK")
                {
                    result.Result = true;
                }

                result.Detail    = dt.Rows[0]["Detail"].ToString();
                result.ExtraData = dt.Rows[0]["ExtraData"].ToString();
            }
            catch (Exception ex)
            {
                result.Detail = ex.Message;
            }
            finally
            {
                _conn.Close();
            }

            return(result);
        }
Пример #12
0
        public bool Delete(DTO_Schedule _Cus)
        {
            Connet();
            string sql = "delete from Schedule where ID=@ID";

            try
            {
                _cmd = new SqlCommand(sql, _conn);
                _cmd.Parameters.Add("@ID", SqlDbType.VarChar).Value = _Cus.ID;
                _cmd.ExecuteNonQuery();
                _cmd.Dispose();
                Disconnet();
            }
            catch (Exception ex)
            {
                Disconnet();
                return(false);

                throw ex;
            }
            return(true);
        }
Пример #13
0
        public bool Insert(DTO_Schedule _Cus)
        {
            Connet();
            string sql = "insert into Schedule ( ID, Date, Time, SMS_info, AccountID, Active) values (@ID, @Date, @Time, @SMS_info, @AccountID, @Active)";

            try
            {
                _cmd = new SqlCommand(sql, _conn);
                _cmd.Parameters.Add("@ID", SqlDbType.VarChar).Value        = _Cus.ID;
                _cmd.Parameters.Add("@Date", SqlDbType.Date).Value         = _Cus.Date;
                _cmd.Parameters.Add("@Time", SqlDbType.DateTime).Value     = _Cus.Time;
                _cmd.Parameters.Add("@SMS_info", SqlDbType.VarChar).Value  = _Cus.SMS_info;
                _cmd.Parameters.Add("@AccountID", SqlDbType.VarChar).Value = _Cus.AccountID;
                int i = 0;
                if (_Cus.Active == true)
                {
                    _cmd.Parameters.Add("@Active", SqlDbType.Bit).Value = 1;
                }
                else
                {
                    _cmd.Parameters.Add("@Active", SqlDbType.Bit).Value = 0;
                }


                _cmd.ExecuteNonQuery();
                _cmd.Dispose();
                Disconnet();
            }
            catch (Exception ex)
            {
                Disconnet();
                return(false);

                throw ex;
            }
            return(true);
        }
Пример #14
0
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            bUS_Right        = new BUS_Right();
            listRightDetails = new List <ListDetailItem>();

            listRightDetails.Clear();
            if (mode == DOOR_MODE)
            {
                foreach (DTO_Door door in Repository.lstAllDoor)
                {
                    ListDetailItem item = new ListDetailItem();
                    item.TextBinding = door.Name;
                    item.Key         = door.Id;

                    DTO_Door d = right.Doors.FirstOrDefault(o => o.Id == door.Id);
                    if (d == null)
                    {
                        item.IsChecked = false;
                    }
                    else
                    {
                        item.IsChecked = true;
                    }

                    listRightDetails.Add(item);
                }

                lbRightDetail.ItemsSource = listRightDetails;

                return;
            }

            if (mode == SCHEDULE_MODE)
            {
                foreach (DTO_Schedule schedule in Repository.lstAllSchedules)
                {
                    ListDetailItem item = new ListDetailItem();
                    item.TextBinding = schedule.Name;
                    item.Key         = schedule.Id;

                    DTO_Schedule d = right.Schedules.FirstOrDefault(o => o.Id == schedule.Id);
                    if (d == null)
                    {
                        item.IsChecked = false;
                    }
                    else
                    {
                        item.IsChecked = true;
                    }
                    listRightDetails.Add(item);
                }

                lbRightDetail.ItemsSource = listRightDetails;

                return;
            }

            if (mode == PERSON_MODE)
            {
                foreach (DTO_CardHolder hodler in Repository.lstAllCardHolders)
                {
                    ListDetailItem item = new ListDetailItem();
                    item.TextBinding = hodler.Name;
                    item.Key         = hodler.Id;

                    DTO_CardHolder d = right.CardHolders.FirstOrDefault(o => o.Id == hodler.Id);
                    if (d == null)
                    {
                        item.IsChecked = false;
                    }
                    else
                    {
                        item.IsChecked = true;
                    }
                    listRightDetails.Add(item);
                }

                lbRightDetail.ItemsSource = listRightDetails;

                return;
            }
        }
Пример #15
0
 public bool Insert(DTO_Schedule _sch)
 {
     return(_schedule.Insert(_sch));
 }
Пример #16
0
 public bool Delete(DTO_Schedule _sch)
 {
     return(_schedule.Delete(_sch));
 }
Пример #17
0
 public bool Update(DTO_Schedule _sch)
 {
     return(_schedule.Update(_sch));
 }
Пример #18
0
 public wdScheduleDetail(EType.WindowMode mode, DTO_Schedule schedule)
 {
     InitializeComponent();
     this.mode     = mode;
     this.schedule = schedule;
 }
Пример #19
0
        private void btSave_Click(object sender, RoutedEventArgs e)
        {
            if (mode == DOOR_MODE)
            {
                List <DTO_Door> oldDoors = right.Doors;
                foreach (DTO_Door door in oldDoors)
                {
                    bUS_Right.DeleteDoorInRight(rightId, door.Id);
                }
                right.Doors.Clear();
                List <DTO_Door> newDoors = new List <DTO_Door>();

                foreach (ListDetailItem item in listRightDetails)
                {
                    if (item.IsChecked)
                    {
                        DTO_Door door = Repository.lstAllDoor.FirstOrDefault(d => d.Id == item.Key);
                        newDoors.Add(door);
                        right.Doors.Add(door);
                    }
                }

                foreach (DTO_Door door in newDoors)
                {
                    bUS_Right.AddDoorToRight(rightId, door.Id);
                }

                Repository.lstAllRIght.FirstOrDefault(r => r.Id == rightId).Doors = right.Doors;
                this.DialogResult = true;
                this.Hide();
                return;
            }

            if (mode == SCHEDULE_MODE)
            {
                List <DTO_Schedule> oldSchedules = right.Schedules;
                foreach (DTO_Schedule schedule in oldSchedules)
                {
                    bUS_Right.DeleteScheduleInRight(rightId, schedule.Id);
                }
                right.Schedules.Clear();

                List <DTO_Schedule> newSchedules = new List <DTO_Schedule>();

                foreach (ListDetailItem item in listRightDetails)
                {
                    if (item.IsChecked)
                    {
                        DTO_Schedule schedule = Repository.lstAllSchedules.FirstOrDefault(d => d.Id == item.Key);
                        newSchedules.Add(schedule);
                    }
                }

                right.Schedules = newSchedules;

                foreach (DTO_Schedule schedule in newSchedules)
                {
                    bUS_Right.AddScheduleToRight(rightId, schedule.Id);
                }
                Repository.lstAllRIght.FirstOrDefault(r => r.Id == rightId).Schedules = right.Schedules;
                this.DialogResult = true;
                this.Hide();
                return;
            }

            if (mode == PERSON_MODE)
            {
                List <DTO_CardHolder> oldPersons = right.CardHolders;
                foreach (DTO_CardHolder person in oldPersons)
                {
                    bUS_Right.DeletePersonInRight(rightId, person.Id);
                }
                right.CardHolders.Clear();
                List <DTO_CardHolder> newPersons = new List <DTO_CardHolder>();

                foreach (ListDetailItem item in listRightDetails)
                {
                    if (item.IsChecked)
                    {
                        DTO_CardHolder person = Repository.lstAllCardHolders.FirstOrDefault(d => d.Id == item.Key);
                        newPersons.Add(person);
                        right.CardHolders.Add(person);
                    }
                }

                foreach (DTO_CardHolder person in newPersons)
                {
                    bUS_Right.AddPersonToRight(rightId, person.Id);
                }
                Repository.lstAllRIght.FirstOrDefault(r => r.Id == rightId).CardHolders = right.CardHolders;
                this.DialogResult = true;
                this.Hide();

                return;
            }
        }