Exemplo n.º 1
0
        bool MtdSave()
        {
            if (MtdCheckValid())
            {
                //int idxDdl2 = ddlTbl2.SelectedIndex;
                MtdCreateController();
                VNTCode.Tbl5 oTbl5;
                VNTCode.Tbl6 oTbl6;
                DateTime     dt     = oCtrLer.MtdGetDate();
                int          idTbl3 = Convert.ToInt32(cbbTbl3.SelectedValue);
                // Tao moi.
                if (lblId.Text == "0")
                {
                    int iCol3 = oCtrLer.Tbl5_Get_ICol3();
                    // Nếu tất cả mã số đã sử dụng thì thoát.
                    if (iCol3 == -1)
                    {
                        string cap = global::VNTSellGold.Properties.Resources.CapError;
                        string mes = global::VNTSellGold.Properties.Resources.MesICol3Full;
                        MessageBox.Show(mes, cap, MessageBoxButtons.OK, MessageBoxIcon.Error);
                        return(false);
                    }
                    oTbl5       = new VNTCode.Tbl5();
                    oTbl5.ICol2 = idTbl3 == 0 ? 0 : 2;// 0 : mới nhập chưa giao; 2 : mới nhập đã giao.
                    oTbl5.ICol3 = iCol3;
                    MtdGetControlValues(ref oTbl5);
                    oTbl5.CreateDate = dt;
                    oTbl5.ModifyDate = oTbl5.CreateDate;
                    oTbl5.CreateBy   = lblUserName.Text;
                    oTbl5.ModifyBy   = lblUserName.Text;
                    // Insert Tbl6 Khi co chọn nhan viên.
                    if (idTbl3 > 0)
                    {
                        oTbl6        = new VNTCode.Tbl6();
                        oTbl6.IdTbl3 = idTbl3;
                        oTbl6.DTCol1 = dt;
                        oTbl5.Tbl6s.Add(oTbl6);
                    }
                    //oCtrLer.MemLinq.Tbl6s.InsertOnSubmit(oTbl6);
                    oCtrLer.MemLinq.Tbl5s.InsertOnSubmit(oTbl5);
                }
                // Cap nhat. Không cập nhật tình trạng đã giao hay chưa.
                else
                {
                    oTbl5 = oCtrLer.Tbl5_Get_ById(Convert.ToInt32(lblId.Text));
                    MtdGetControlValues(ref oTbl5);

                    //// Chưa giao -> Giao : chưa giao mới nhập -> đã giao mới nhập || chưa giao -> đã giữ.
                    //// Đã giao -> Giao cho người khác : Trạng thái giữ nguyên.
                    //// Đã giao -> Không giao : đã giao mới nhập -> chưa giao mới nhập || đã giữ -> chưa giao.
                    //// Get Tbl6.
                    //oTbl6 = oTbl5.Tbl6s.Where(tbl6 => tbl6.DTCol2 == null).FirstOrDefault();
                    //// Nếu chưa có trong Tbl6 (Chưa giao) Mà có giao thì insert moi.
                    //if (oTbl6 == null && idTbl3 > 0)
                    //{
                    //    oTbl5.ICol2 += 2;// Đã giao (mới nhập).
                    //    // Inset vao Tbl6.
                    //    oTbl6 = new VNTCode.Tbl6();
                    //    oTbl6.IdTbl3 = idTbl3;
                    //    oTbl6.DTCol1 = dt;
                    //    oTbl5.Tbl6s.Add(oTbl6);
                    //}
                    //// Nếu co trong Tbl6 (Đã giao).
                    //else
                    //{
                    //    if (idTbl3 > 0) // Có giao cho ai đó.
                    //    {
                    //        oTbl6.IdTbl3 = idTbl3;
                    //    }
                    //    else // Đã giao bây giờ không giao.
                    //    {
                    //        oTbl5.ICol2 -= 2;// Chưa giao (mới nhập).
                    //        oTbl6.DTCol2 = dt;
                    //    }
                    //}
                    oTbl5.ModifyDate = dt;
                    oTbl5.ModifyBy   = lblUserName.Text;
                }

                oCtrLer.MemLinq.SubmitChanges();
                return(true);
            }
            return(false);
        }