private void btnSave_Click(object sender, EventArgs e)
        {
            ModelSelectItem kg  = (ModelSelectItem)cbKhungGio.SelectedItem;
            ServiceDayModel ghe = (ServiceDayModel)cbService.SelectedItem;

            if (benhnhan == null)
            {
                MessageBox.Show("Bạn chưa chọn bệnh nhân.", "Lỗi nhập liệu", MessageBoxButtons.OK, MessageBoxIcon.Error);
                txtcode.Focus();
            }
            else if (kg == null)
            {
                MessageBox.Show("Khung giờ hẹn không được để trống.", "Lỗi nhập liệu", MessageBoxButtons.OK, MessageBoxIcon.Error);
                cbKhungGio.Focus();
            }
            else
            {
                Q_Schedule_Detail obj = new Q_Schedule_Detail();
                obj.Id           = _Id;
                obj.CustomerId   = _custId;
                obj.Note         = txtnote.Text;
                obj.ScheduleDate = dtpDateSchedule.Value;
                obj.KhungGioId   = kg.Id;
                obj.ServiceId    = ghe.Id;
                var rs = BLLTimeSchedule.Instance.CreateOrUpdate(connect, obj, benhnhan);
                if (rs.IsSuccess)
                {
                    refreshForm();
                    loadGrid();
                }
                else
                {
                    MessageBox.Show(rs.Errors[0].Message, "Lỗi nhập liệu", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
Example #2
0
        public ResponseBase CreateOrUpdate(string connectString, Q_Schedule_Detail model, Q_Customer custModel)
        {
            using (db = new QMSSystemEntities(connectString))
            {
                try
                {
                    var rs   = new ResponseBase();
                    var cust = db.Q_Customer.FirstOrDefault(x => !x.IsDeleted && x.Code.Trim().ToUpper() == custModel.Code.Trim().ToUpper());
                    if (cust == null)
                    {
                        cust = new Q_Customer();
                        Parse.CopyObject(custModel, ref cust);
                        db.Q_Customer.Add(cust);
                        db.SaveChanges();
                    }
                    model.CustomerId = cust.Id;

                    var foundItem = CheckExists(model, db);
                    if (foundItem != null)
                    {
                        rs.IsSuccess = false;
                        rs.Errors.Add(new Error()
                        {
                            MemberName = "Insert", Message = "khách hàng này đã có lịch hẹn lúc " + foundItem.ScheduleDate.ToString("dd/MM/yyyy HH:mm") + "."
                        });
                    }
                    else
                    {
                        Q_Schedule parent = db.Q_Schedule.FirstOrDefault(x => x.Month == model.ScheduleDate.Month && x.Year == model.ScheduleDate.Year);
                        if (model.Id == 0)
                        {
                            if (parent == null)
                            {
                                parent                   = new Q_Schedule();
                                parent.Month             = model.ScheduleDate.Month;
                                parent.Year              = model.ScheduleDate.Year;
                                parent.Q_Schedule_Detail = new List <Q_Schedule_Detail>();
                                model.Q_Schedule         = parent;
                                parent.Q_Schedule_Detail.Add(model);
                                db.Q_Schedule.Add(parent);
                                rs.IsSuccess = true;
                            }
                            else
                            {
                                model.ScheduleId = parent.Id;
                                db.Q_Schedule_Detail.Add(model);
                                rs.IsSuccess = true;
                            }
                        }
                        else
                        {
                            var obj = db.Q_Schedule_Detail.FirstOrDefault(m => m.Id == model.Id);
                            if (obj == null)
                            {
                                rs.IsSuccess = false;
                                rs.Errors.Add(new Error()
                                {
                                    MemberName = "Update", Message = "Dữ liệu bạn đang thao tác đã bị xóa hoặc không tồn tại. Vui lòng kiểm tra lại !."
                                });
                            }
                            else
                            {
                                obj.CustomerId   = model.CustomerId;
                                obj.ScheduleDate = model.ScheduleDate;
                                obj.KhungGioId   = model.KhungGioId;
                                obj.ServiceId    = model.ServiceId;
                                obj.Note         = model.Note;
                                rs.IsSuccess     = true;
                            }
                        }
                        if (rs.IsSuccess)
                        {
                            db.SaveChanges();
                            rs.IsSuccess = true;
                        }
                    }
                    return(rs);
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
        }
Example #3
0
 private Q_Schedule_Detail CheckExists(Q_Schedule_Detail model, QMSSystemEntities db)
 {
     return(db.Q_Schedule_Detail.FirstOrDefault(x => x.Id == model.Id && x.CustomerId == model.CustomerId && x.ServiceId == model.ServiceId));
 }