Пример #1
0
        private void DoCopy(DateTime date, EventCalendar event_calendar)
        {
            bool post_success = false;
            string err_msg = "";
            int inserted_id = -1;

            this.Ready = false;

            string json_data = "{\"users_name\":\"" + event_calendar.users_name + "\",";
            json_data += "\"date\":\"" + date.ToMysqlDate() + "\",";
            json_data += "\"from_time\":\"" + event_calendar.from_time + "\",";
            json_data += "\"to_time\":\"" + event_calendar.to_time + "\",";
            json_data += "\"event_type\":\"" + event_calendar.event_type + "\",";
            json_data += "\"event_code\":\"" + event_calendar.event_code + "\",";
            json_data += "\"customer\":\"" + event_calendar.customer + "\",";
            json_data += "\"status\":\"" + event_calendar.status.ToString() + "\",";
            json_data += "\"med_cert\":\"" + event_calendar.med_cert + "\",";
            json_data += "\"fine\":" + event_calendar.fine.ToString() + ",";
            json_data += "\"rec_by\":\"" + this.G.loged_in_user_name + "\"}";

            BackgroundWorker worker = new BackgroundWorker();
            worker.DoWork += delegate
            {
                CRUDResult post = ApiActions.POST(PreferenceForm.API_MAIN_URL() + "eventcalendar/create", json_data);
                ServerResult sr = JsonConvert.DeserializeObject<ServerResult>(post.data);

                if (sr.result == ServerResult.SERVER_RESULT_SUCCESS)
                {
                    post_success = true;
                    inserted_id = Convert.ToInt32(sr.message);
                }
                else
                {
                    post_success = false;
                    err_msg = sr.message;
                }
            };
            worker.RunWorkerCompleted += delegate
            {
                if (post_success)
                {
                    foreach (CustomDateEvent ct in this.Parent.Controls)
                    {
                        if (ct.Date.ToDMYDateValue() == date.ToDMYDateValue())
                        {
                            ct.RefreshData();
                            ct.RefreshView();
                        }
                    }
                    if (this.Date.ToDMYDateValue() == date.ToDMYDateValue())
                    {
                        this.RefreshData();
                        this.RefreshView();
                        this.dgv.Rows[this.event_list.FindIndex(t => t.id == inserted_id)].Cells[1].Selected = true;
                    }
                    this.Ready = true;
                }
                else
                {
                    if (MessageAlert.Show(err_msg, "Error", MessageAlertButtons.RETRY_CANCEL, MessageAlertIcons.ERROR) == DialogResult.Retry)
                    {
                        this.DoCopy(date, event_calendar);
                    }
                    this.Ready = true;
                }
            };
            worker.RunWorkerAsync();
        }
Пример #2
0
        private void DoCopyTrainer(DateTime date)
        {
            string json_data = "{\"from_date\":\"" + this.current_event_date.ToMysqlDate() + "\",";
            json_data += "\"to_date\":\"" + date.ToMysqlDate() + "\",";
            //json_data += "\"rec_by\":\"" + this.date_event.G.loged_in_user_name + "\"}";
            json_data += "\"rec_by\":\"" + this.date_event2.main_form.G.loged_in_user_name + "\"}";

            this.FormProcessing();
            bool post_success = false;
            string err_msg = "";

            BackgroundWorker worker = new BackgroundWorker();
            worker.DoWork += delegate
            {
                CRUDResult post = ApiActions.POST(PreferenceForm.API_MAIN_URL() + "trainingcalendar/copy", json_data);
                ServerResult sr = JsonConvert.DeserializeObject<ServerResult>(post.data);

                if (sr.result == ServerResult.SERVER_RESULT_SUCCESS)
                {
                    post_success = true;
                }
                else
                {
                    post_success = false;
                    err_msg = sr.message;
                }
            };
            worker.RunWorkerCompleted += delegate
            {
                if (post_success)
                {
                    //foreach (Control ct in this.date_event.Parent.Controls)
                    //{
                    //    if (((CustomDateEvent)ct).Date.ToDMYDateValue() == date.ToDMYDateValue())
                    //    {
                    //        ((CustomDateEvent)ct).RefreshData();
                    //        ((CustomDateEvent)ct).RefreshView();
                    //    }
                    //}
                    foreach (Control ct in this.date_event2.ParentForm.Controls["tableLayoutPanel1"].Controls)
                    {
                        if (ct.GetType() == typeof(CustomDateEvent2))
                        {
                            if (((CustomDateEvent2)ct).date.Value.ToDMYDateValue() == date.ToDMYDateValue())
                            {
                                ((CustomDateEvent2)ct).RefreshData();
                                ((CustomDateEvent2)ct).RefreshView();
                            }
                        }
                    }
                    MessageAlert.Show("คัดลอกข้อมูลเรียบร้อย");
                }
                else
                {
                    if (MessageAlert.Show(err_msg, "Error", MessageAlertButtons.RETRY_CANCEL, MessageAlertIcons.ERROR) == DialogResult.Retry)
                    {
                        this.DoCopyTrainer(date);
                    }
                }

                this.FormRead();
            };
            worker.RunWorkerAsync();
        }