//Nhập kho
 public void NhapKho(TonKho tk)
 {
     string sql = "insert into TonKho values(@SP_ID, @ThoiGian,(select top 1 SoLuongTon from TonKho where SP_ID=@SP_ID order by ThoiGian desc)+@SoLuongTon)";
     SqlParameter spid = new SqlParameter("@SP_ID", tk.SP_ID);
     SqlParameter thoigian = new SqlParameter("@ThoiGian", tk.ThoiGian);
     SqlParameter soluongton = new SqlParameter("@SoLuongTon", tk.SoLuongTon);
     SqlDatabase.ExecuteNonQuery(sql, CommandType.Text, spid, thoigian, soluongton);
 }
 // Thêm mới 1 sản phẩm vào tồn kho
 public void ThemMoi(TonKho tk)
 {
     string sql = "insert into TonKho values(@SP_ID, @ThoiGian, @SoLuongTon)";
     SqlParameter spid = new SqlParameter("@SP_ID", tk.SP_ID);
     SqlParameter thoigian = new SqlParameter("@ThoiGian", tk.ThoiGian);
     SqlParameter soluongton = new SqlParameter("@SoLuongTon", tk.SoLuongTon);
     SqlDatabase.ExecuteNonQuery(sql, CommandType.Text, spid, thoigian, soluongton);
 }
        // Thêm mới 1 sản phẩm vào tồn kho
        public void ThemMoi(TonKho tk)
        {
            string       sql        = "insert into TonKho values(@SP_ID, @ThoiGian, @SoLuongTon)";
            SqlParameter spid       = new SqlParameter("@SP_ID", tk.SP_ID);
            SqlParameter thoigian   = new SqlParameter("@ThoiGian", tk.ThoiGian);
            SqlParameter soluongton = new SqlParameter("@SoLuongTon", tk.SoLuongTon);

            SqlDatabase.ExecuteNonQuery(sql, CommandType.Text, spid, thoigian, soluongton);
        }
        //Nhập kho
        public void NhapKho(TonKho tk)
        {
            string       sql        = "insert into TonKho values(@SP_ID, @ThoiGian,(select top 1 SoLuongTon from TonKho where SP_ID=@SP_ID order by ThoiGian desc)+@SoLuongTon)";
            SqlParameter spid       = new SqlParameter("@SP_ID", tk.SP_ID);
            SqlParameter thoigian   = new SqlParameter("@ThoiGian", tk.ThoiGian);
            SqlParameter soluongton = new SqlParameter("@SoLuongTon", tk.SoLuongTon);

            SqlDatabase.ExecuteNonQuery(sql, CommandType.Text, spid, thoigian, soluongton);
        }
示例#5
0
        private void gridViewSanPham_RowUpdated(object sender, DevExpress.XtraGrid.Views.Base.RowObjectEventArgs e)
        {
            DataRowView aRowView = (DataRowView)(e.Row);
            DataRow     aRow     = aRowView.Row;

            if (aRow.RowState == DataRowState.Added)
            {
                //insert command here
                SanPham objSanPham = new SanPham();
                objSanPham.TenSanPham = Convert.ToString(aRow["TenSanPham"]);
                objSanPham.DVT        = Convert.ToString(aRow["DVT"]);
                if (Convert.ToString(aRow["TonKho"]) == "")
                {
                    objSanPham.TonKho = 0;
                }
                else
                {
                    objSanPham.TonKho = Convert.ToInt32(aRow["TonKho"]);
                }
                objSanPham.Ghichu   = Convert.ToString(aRow["Ghichu"]);
                objSanPham.IDNhomSP = curIDNhomSP;

                if (SanPhamValidation(objSanPham) == true)
                {
                    int IDSanPham = new DataAccess().insertSanPham(objSanPham);
                    if (IDSanPham >= 0)
                    {
                        DataSet ds = new DataAccess().getSanPhamByIDNhomSP(curIDNhomSP);
                        SanPhamRowsCount = ds.Tables[0].Rows.Count;
                        gridControlSanPham.DataSource = ds.Tables[0];
                        ((frmMain)(this.MdiParent)).setStatus("Thêm mới Sản phẩm thành công");
                        //insert to TonKho
                        BKIT.Entities.TonKho objTonKho = new TonKho();
                        objTonKho.IDSanPham = IDSanPham;
                        objTonKho.SoLuong   = objSanPham.TonKho;
                        objTonKho.Ngay      = DateTime.Now.Date;
                        if (new DataAccess().insertTonKho(objTonKho) < 0)
                        {
                            MessageBox.Show(this, "Thêm mới Tồn kho không thành công", "Thông báo lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                    else
                    {
                        DataSet ds = new DataAccess().getSanPhamByIDNhomSP(curIDNhomSP);
                        SanPhamRowsCount = ds.Tables[0].Rows.Count;
                        gridControlSanPham.DataSource = ds.Tables[0];
                        MessageBox.Show(this, "Thêm mới Sản phẩm không thành công", "Thông báo lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
                else
                {
                    //do nothing
                }
            }
            AddItemForComboboxTenNguyenLieu();
        }
 public ActionResult Edit([Bind(Include = "STT,MaHangHoa,SoNhap,SoXuat,SoTon")] TonKho tonKho)
 {
     if (ModelState.IsValid)
     {
         db.Entry(tonKho).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(tonKho));
 }
        private void btnXoa_Click(object sender, EventArgs e)
        {
            GridView gridView = grcBangKeTongHop.FocusedView as GridView;
            var      maPhieu  = gridView.GetRowCellValue(gridView.FocusedRowHandle, "MaPhieuChuyen"); // lấy được mã phiếu

            if (maPhieu == null)
            {
                XtraMessageBox.Show("Mời bạn chọn mã phiếu nhập hàng cần xóa");
            }
            else
            {
                // cấp nhật lại số lượng 2 bên kho đã chuyển cho nhau:

                // lấy được mã phiếu chuyển

                // lấy các thông tin chi tiết của phiếu chuyểnn:

                DataTable data = detailTransBUS.getDetailTransFromMa((string)maPhieu);



                foreach (DataRow dataRow in data.Rows)
                {
                    TonKho tkChuyen = new TonKho();
                    TonKho tkNhan   = new TonKho();

                    tkChuyen.MaKho = dataRow["MaKhoXuat"].ToString();
                    tkNhan.MaKho   = dataRow["MaKhoNhan"].ToString();
                    tkNhan.MaHang  = tkChuyen.MaHang = dataRow["MaHang"].ToString();

                    int slChuyen = int.Parse(dataRow["SoLuong"].ToString());

                    // lấy số lượng hiện tại của các mặt hàng mỗi kho
                    int slKhoChuyen = tkBUS.getSoLuong(tkChuyen);
                    int slKhoNhan   = tkBUS.getSoLuong(tkNhan);

                    tkBUS.UpdateSoLuong(tkChuyen, slKhoChuyen + slChuyen);
                    tkBUS.UpdateSoLuong(tkNhan, slKhoNhan - slChuyen);
                }

                try
                {
                    // xóa thông tin chuyển
                    inforTransBUS.DeleteInforTransWarehouse((string)maPhieu);
                    // xóa chi tiết
                    detailTransBUS.DeleteDetailTransWarehouse((string)maPhieu);
                    XtraMessageBox.Show("Xóa thành công phiếu chuyển kho");
                    grcBangKeTongHop.DataSource = inforTransBUS.getListInforTrans(a, b, 0);
                }
                catch (SqlException ex)
                {
                    XtraMessageBox.Show("Lỗi tại xóa thông tin chuyển kho:  " + ex.Message);
                }
            }
        }
        public ActionResult Create([Bind(Include = "STT,MaHangHoa,SoNhap,SoXuat,SoTon")] TonKho tonKho)
        {
            if (ModelState.IsValid)
            {
                db.TonKhos.Add(tonKho);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(tonKho));
        }
示例#9
0
        private void barbtntonkho_ItemClick(object sender, ItemClickEventArgs e)
        {
            TonKho TonKho = new TonKho();

            if (ExistsForm(TonKho))
            {
                return;
            }
            TonKho.MdiParent = this;
            TonKho.Show();
        }
示例#10
0
文件: TonKhoDAO.cs 项目: kvalike9/QLK
        public List <TonKho> LoadTonKho()
        {
            List <TonKho> tonKhos = new List <TonKho>();
            DataTable     data    = ConnectionDAO.Ins.ExecuteQuery("sp_ShowTonKho");

            foreach (DataRow item in data.Rows)
            {
                TonKho ton = new TonKho(item);
                tonKhos.Add(ton);
            }
            return(tonKhos);
        }
        public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedDataSetSchema(global::System.Xml.Schema.XmlSchemaSet xs)
        {
            TonKho ds = new TonKho();

            global::System.Xml.Schema.XmlSchemaComplexType type     = new global::System.Xml.Schema.XmlSchemaComplexType();
            global::System.Xml.Schema.XmlSchemaSequence    sequence = new global::System.Xml.Schema.XmlSchemaSequence();
            global::System.Xml.Schema.XmlSchemaAny         any      = new global::System.Xml.Schema.XmlSchemaAny();
            any.Namespace = ds.Namespace;
            sequence.Items.Add(any);
            type.Particle = sequence;
            global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable();
            if (xs.Contains(dsSchema.TargetNamespace))
            {
                global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream();
                global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream();
                try {
                    global::System.Xml.Schema.XmlSchema schema = null;
                    dsSchema.Write(s1);
                    for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext();)
                    {
                        schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current));
                        s2.SetLength(0);
                        schema.Write(s2);
                        if ((s1.Length == s2.Length))
                        {
                            s1.Position = 0;
                            s2.Position = 0;
                            for (; ((s1.Position != s1.Length) &&
                                    (s1.ReadByte() == s2.ReadByte()));)
                            {
                                ;
                            }
                            if ((s1.Position == s1.Length))
                            {
                                return(type);
                            }
                        }
                    }
                }
                finally {
                    if ((s1 != null))
                    {
                        s1.Close();
                    }
                    if ((s2 != null))
                    {
                        s2.Close();
                    }
                }
            }
            xs.Add(dsSchema);
            return(type);
        }
        // GET: TonKhoes/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            TonKho tonKho = db.TonKhos.Find(id);

            if (tonKho == null)
            {
                return(HttpNotFound());
            }
            return(View(tonKho));
        }
示例#13
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            GoodDTO good  = new GoodDTO();
            TonKho  tkDTO = new TonKho();

            tkDTO.MaHang = good.MaHang = txtMaHang.Text;

            good.TenHang  = txtTenHang.Text;
            good.GiaMua   = float.Parse(calGiaMua.Text.ToString());
            good.GiabanLe = float.Parse(calGiaBanLe.Text.ToString());
            good.GiaBanSi = float.Parse(calGiaBanSi.Text.ToString());

            good.Active           = bool.Parse(ckActive.Checked.ToString());
            tkDTO.SoLuongToiThieu = good.SoLuongToiThieu = int.Parse(calToiThieu.Text.ToString());
            tkDTO.MaKho           = good.MaKho = cbKhoMacDinh.EditValue != null?cbKhoMacDinh.EditValue.ToString() : null;

            good.MaNCC = cbNhaCungCap.EditValue != null?cbNhaCungCap.EditValue.ToString() : null;

            good.MaDonVi = cbDonVi.EditValue != null?cbDonVi.EditValue.ToString() : null;

            good.MaNhom = cbPhanLoai.EditValue != null?cbPhanLoai.EditValue.ToString() : null;



            int check             = goodBUS.InsertGood(good);
            int checkInsertTonKho = tkBUS.insertTonKho(tkDTO, 0);

            if (check == 1 && checkInsertTonKho == 1)
            {
                // Thêm vào bên tồn kho



                XtraMessageBox.Show("Success!!!");
                this.Close();
            }
            else
            {
                XtraMessageBox.Show("Fail!!!");
            }
        }
        public ActionResult tkho_KiemKho(FormCollection f)
        {
            if (xulyChung.duocCapNhat(idOfPage, "7"))
            {
                string ndThongBao = ""; int kqLuu = 0;
                try
                {
                    cartKiemKho cartTruoc = (cartKiemKho)Session["truocKiemKho"];
                    if (cartTruoc.Info.Values.Count > 0)
                        throw new Exception("<i class=\"col-red\">*Còn nguyên liệu chưa được kiểm kê, vui lòng kiểm kê lại nguyên liệu</i>");

                    cartKiemKho cartSau = (cartKiemKho)Session["sauKiemKho"];
                    qlCaPheEntities db = new qlCaPheEntities();
                    TonKho tonKho = new TonKho();
                    tonKho.ngayKiem = DateTime.Now;
                    tonKho.tongTien = cartSau.getTotalPrice();
                    tonKho.nguoiKiem = ((taiKhoan)Session["login"]).tenDangNhap;
                    tonKho.ghiChu = xulyDuLieu.xulyKyTuHTML(f["txtGhiChu"]);
                    //-----Thêm mới tồn kho vào CSDL
                    db.TonKhoes.Add(tonKho);
                    kqLuu = db.SaveChanges();
                    if (kqLuu > 0)
                    {
                        themChiTietTonKho(tonKho.maSoKy, cartSau, db);
                        ndThongBao = createHTML.taoNoiDungThongBao("Kiểm kê kho", tonKho.maSoKy.ToString(), "tkho_TableTonKho");
                        this.xoaSession();
                        xulyChung.ghiNhatKyDtb(2, "Kiểm kê kho \" " + tonKho.maSoKy.ToString() + " \"");
                    }
                }
                catch (Exception ex)
                {
                    ndThongBao = ex.Message;
                    ViewBag.txtGhiChu = f["txtGhiChu"];
                    xulyFile.ghiLoi("Class: TonKhoController - Function: tkho_KiemKho_Post", ex.Message);
                }
                ViewBag.ThongBao = createHTML.taoThongBaoLuu(ndThongBao);
            }
            return View();
        }
示例#15
0
    /// <summary>
    /// Hàm thực hiện cập nhật lại tổng tiền tồn kho.
    /// </summary>
    /// <param name="ct">Object chi tiết tồn kho để lấy các thuộc tính cần thiết</param>
    /// <param name="db"></param>
    /// <returns>1: Cập nhật thành công - 2: thất bại</returns>
    public int capNhatTongTienTonKho(ctTonKho ct, qlCaPheEntities db)
    {
        int kq = 0;

        try
        {
            TonKho tkUpdate = db.TonKhoes.SingleOrDefault(s => s.maSoKy == ct.maSoKy);
            if (tkUpdate != null)
            {
                ct.nguyenLieu = db.nguyenLieux.SingleOrDefault(s => s.maNguyenLieu == ct.maNguyenLieu);
                double soLuongTinh = new bNguyenLieu().chuyenDoiDonViNhoSangLon(ct.soLuongThucTe, ct.nguyenLieu);
                tkUpdate.tongTien       += (long)(ct.donGia * soLuongTinh);
                db.Entry(tkUpdate).State = System.Data.Entity.EntityState.Modified;
                kq = db.SaveChanges();
            }
        }
        catch (Exception ex)
        {
            xulyFile.ghiLoi("Class: bKiemKho  - Function: capNhatTongTienTonKho", ex.Message);
        }
        return(kq);
    }
 //Hiển thị chi tiết sản phẩm
 public DataSet ChiTietSanPham(SanPham sp)
 {
     string sql;
     TonKho TonKho = new TonKho();
     TonKhoService1 _TonKho = new TonKhoService1();
     TonKho.SP_ID = sp.SP_ID;
     List<TonKho> ListTK = _TonKho.TimKiemTonKho_SPID(TonKho);
     if (ListTK.Count > 0)
     {
         sql = "select sp.SP_ID,TenSP,sp.NhaSX_ID,TenNhaSX,CPU,RAM,HDD,BaoHanh,Hinh,DonGia,MoTa,SoLuongTon,ThoiGian"
                     + " from SanPham sp, NhaSX nsx, (select top 1 * from TonKho where SP_ID=@SP_ID order by ThoiGian desc) as tk"
                     + " where sp.NhaSX_ID = nsx.NhaSX_ID and sp.SP_ID=tk.SP_ID";
     }
     else
     {
         sql = "select sp.SP_ID,TenSP,sp.NhaSX_ID,TenNhaSX,CPU,RAM,HDD,BaoHanh,Hinh,DonGia,MoTa,SoLuongTon=0"
                     + " from SanPham sp, NhaSX nsx"
                     + " where sp.NhaSX_ID = nsx.NhaSX_ID and SP_ID=@SP_ID";
     }
     SqlParameter spid = new SqlParameter("@SP_ID", sp.SP_ID);
     DataSet ds = SqlDatabase.ExecuteQueryWithDataSet(sql, CommandType.Text, spid);
     return ds;
 }
 // Hiển thị toàn bộ tồn kho theo thời gian lớn nhất theo SP_ID
 public List<TonKho> HienThiTonKho()
 {
     List<TonKho> ListTK = new List<TonKho>();
     string sql = "select sp.SP_ID,TenSP,SoLuongTon,ThoiGian from SanPham sp, TonKho tk"
                 + " where sp.SP_ID=tk.SP_ID and ThoiGian = all"
                 + " (select max(thoigian) from tonkho tk1 where tk1.SP_ID=sp.SP_ID group by SP_ID) order by tk.SP_ID";
     SqlDataReader rd = SqlDatabase.ExecuteQueryWithDataReader(sql, CommandType.Text);
     if (rd.HasRows)
     {
         while (rd.Read())
         {
             TonKho tk = new TonKho()
             {
                 SP_ID = int.Parse(rd[0].ToString()),
                 TenSP = rd[1].ToString(),
                 SoLuongTon = int.Parse(rd[2].ToString()),
                 ThoiGian = DateTime.Parse(rd[3].ToString())
             };
             ListTK.Add(tk);
         }
     }
     return ListTK;
 }
示例#18
0
        public List <SanPham> Category(int ID)
        {
            List <SanPham> list = new List <SanPham>();
            string         Sql  = ("select p.SP_ID,p.TenSP,p.NhaSX_ID ,p.DonGia,p.Hinh from SanPham p where p.NhaSX_ID = @ID");
            SqlParameter   id   = new SqlParameter("@ID", ID);
            SqlDataReader  rd   = SqlDatabase.ExecuteQueryWithDataReader(Sql, CommandType.Text, id);

            if (rd.HasRows)
            {
                while (rd.Read())
                {
                    TonKho  tk = new TonKho();
                    SanPham sp = new SanPham()
                    {
                        SP_ID  = int.Parse(rd[0].ToString()),
                        TenSP  = rd[1].ToString(),
                        DonGia = float.Parse(rd[3].ToString()),
                        Hinh   = rd[4].ToString(),
                    };
                    list.Add(sp);
                }
            }
            return(list);
        }
        // Hiển thị toàn bộ tồn kho theo thời gian lớn nhất theo SP_ID
        public List <TonKho> HienThiTonKho()
        {
            List <TonKho> ListTK = new List <TonKho>();
            string        sql    = "select sp.SP_ID,TenSP,SoLuongTon,ThoiGian from SanPham sp, TonKho tk"
                                   + " where sp.SP_ID=tk.SP_ID and ThoiGian = all"
                                   + " (select max(thoigian) from tonkho tk1 where tk1.SP_ID=sp.SP_ID group by SP_ID) order by tk.SP_ID";
            SqlDataReader rd = SqlDatabase.ExecuteQueryWithDataReader(sql, CommandType.Text);

            if (rd.HasRows)
            {
                while (rd.Read())
                {
                    TonKho tk = new TonKho()
                    {
                        SP_ID      = int.Parse(rd[0].ToString()),
                        TenSP      = rd[1].ToString(),
                        SoLuongTon = int.Parse(rd[2].ToString()),
                        ThoiGian   = DateTime.Parse(rd[3].ToString())
                    };
                    ListTK.Add(tk);
                }
            }
            return(ListTK);
        }
        public List<SanPham> Category(int ID)
        {
            List<SanPham> list = new List<SanPham>();
            string Sql = ("select p.SP_ID,p.TenSP,p.NhaSX_ID ,p.DonGia,p.Hinh from SanPham p where p.NhaSX_ID = @ID");
            SqlParameter id = new SqlParameter("@ID", ID);
            SqlDataReader rd = SqlDatabase.ExecuteQueryWithDataReader(Sql, CommandType.Text, id);
            if (rd.HasRows)
            {
                while (rd.Read())
                {
                    TonKho tk = new TonKho();
                    SanPham sp = new SanPham()
                    {
                        SP_ID = int.Parse(rd[0].ToString()),
                        TenSP = rd[1].ToString(),
                        DonGia = float.Parse(rd[3].ToString()),
                        Hinh = rd[4].ToString(),

                    };
                    list.Add(sp);
                }
            }
            return list;
        }
示例#21
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            bool   check = true;
            TonKho tk    = new TonKho();
            int    count = grdHoaDon.RowCount;

            //float TongTienMua = 0;

            string maPhieu = "";
            int    sl      = 0;

            if (cbTenNCC.Text == "")
            {
                XtraMessageBox.Show("Thiếu trường thông tin");
                cbTenNCC.Focus();
            }
            else if (count < 2)
            {
                XtraMessageBox.Show("Mời bạn chọn mặt hàng");
                grdHoaDon.Focus();
            }
            else
            {
                InforDetailBuy inforBuy = new InforDetailBuy();
                inforBuy.MaPhieu = txtPhieu.Text;
                inforBuy.TenNCC  = cbTenNCC.Text;
                inforBuy.MaNCC   = txtMaNCC.Text;
                inforBuy.NgayLap = DateTime.Parse(String.Format("{0:MM/dd/yyyy}", dtNgay.Text));

                inforBuy.HanThanhToan = DateTime.Parse(String.Format("{0:MM/dd/yyyy}", dtHanThanhToan.Text));
                inforBuy.MaNVLap      = cbNhanVien.EditValue != null?cbNhanVien.EditValue.ToString() : null;

                inforBuy.MaKhoNhap = cbKhoNhap.EditValue != null?cbKhoNhap.EditValue.ToString() : null;

                inforBuy.VAT         = float.Parse(calVAT.Text);
                inforBuy.CK          = float.Parse(calCK.Text);
                inforBuy.TongTienMua = getTongTien();
                inforBuy.TongTienTra = float.Parse(calTongTienTra.Text);
                tk.MaKho             = inforBuy.MaKhoNhap; // lấy Mã kho của măt hàng mua vào

                inforBuy.Ma_PhuongThuc = cbHinhThucThanhToan.EditValue != null?cbHinhThucThanhToan.EditValue.ToString() : null;

                inforBuy.Ma_DieuKhoan = int.Parse(cbDieuKhoanThanhToan.EditValue != null ? cbDieuKhoanThanhToan.EditValue.ToString() : null);

                int checkMPhieu = inforBUS.checkMaPhieuMua(txtPhieu.Text);



                try
                {
                    // check xem mã đã có hay chưa. nếu chưa thì insert. COnf có rồi thò updaye
                    if (checkMPhieu == 1)
                    {
                        inforBUS.UpdateInforBuy(inforBuy);
                    }

                    else
                    {
                        inforBUS.InsertDetailBuyGoods(inforBuy);
                    }
                }
                catch (SqlException ex)
                {
                    XtraMessageBox.Show("Lỗi  DetailBuyGoods:  " + ex.Message);
                }

                int isDelete = 0;
                for (int i = 0; i < count - 1; i++)
                {
                    DetailBuyGoods detailBuy = new DetailBuyGoods();
                    DataRow        data      = grdHoaDon.GetDataRow(i);

                    detailBuy.MaPhieu = txtPhieu.Text;
                    maPhieu           = txtPhieu.Text;


                    txtMaNCC.Text = cbTenNCC.EditValue != null?cbTenNCC.EditValue.ToString() : null;

                    detailBuy.MaHang = data[1].ToString();

                    detailBuy.TenHang = detailBuy.TenHang = data[2].ToString();
                    detailBuy.DonVi   = data[3].ToString();
                    sl = detailBuy.SoLuong = int.Parse(data[4].ToString());
                    detailBuy.DonGia    = float.Parse(data[5].ToString());
                    detailBuy.ThanhTien = float.Parse(data[6].ToString());

                    //  TongTienMua += detailBuy.ThanhTien;

                    tk.MaHang = data[1].ToString();  // lấy mã mặt hàng

                    try
                    {
                        if (checkMPhieu == 1 && isDelete == 0) //có rồi
                        {
                            // xóa rồi thêm lại
                            detailBuyBus.DeleteDetailBuy(detailBuy.MaPhieu);
                            isDelete = 1;
                        }


                        detailBuyBus.InsertDetailBuyGoods(detailBuy);
                    }
                    catch (SqlException ex)
                    {
                        XtraMessageBox.Show("Lỗi tại thêm chi tiết phiếu mua:  " + ex.Message);
                    }

                    // nếu mặt hàng mua đã có trong Kho rồi thì chỉ cần Update lại số lượng
                    // còn nếu chưa có trong kho thì cần thêm mới vào tồn kho
                    int checkMaHang = tkBus.checkMatHang(tk.MaHang, tk.MaKho);
                    int slHienTai   = tkBus.getSoLuong(tk);
                    slHienTai += sl;
                    // kiểm tra xem là mặt hàng nãy đã có trong kho hay chưa
                    if (checkMaHang == 1)
                    {
                        tkBus.UpdateSoLuong(tk, slHienTai);  // nếu có rồi thì chỉ cần update số luọng
                    }
                    else // chưa có thì insert
                    {
                        int checkInsertTonKho = tkBus.insertTonKho(tk, sl);
                        if (checkInsertTonKho == 0)
                        {
                            check = false;
                        }
                    }
                }
                if (check == false)
                {
                    XtraMessageBox.Show("Thêm Mặt hàng thất bại");
                }
                else
                {
                    XtraMessageBox.Show("Thêm Mặt hàng thành công");
                    AddNhatKy("Thêm", TenChucNang);
                    txtPhieu.Text = inforBUS.IDAuto();
                    detailBuyBus.deleteChiTietHoaDonAo();
                    grcHangHoa.DataSource = detailBuyBus.getChiTietHoaDonMuaHang();
                }
            }
        }
示例#22
0
        public int UpdateSoLuong(TonKho tk, int soLuong)
        {
            string sql = string.Format("UPDATE TONKHO SET SOLUONGTON = {0}  where MaKHo = '{1}' and mahang = '{2}'", soLuong, tk.MaKho, tk.MaHang);

            return(ConnectionDB.ExcuteNonQuery(sql));
        }
 // Tìm kiếm tồn kho theo khoảng thời gian
 public List<TonKho> TimKiemTonKhoTheoKhoangTG(DateTime tungay, DateTime denngay)
 {
     List<TonKho> ListTK = new List<TonKho>();
      string sql = "select sp.SP_ID,TenSP,SoLuongTon,ThoiGian from SanPham sp, TonKho tk"
                  + " where sp.SP_ID=tk.SP_ID and (ThoiGian >=@NgayTu and ThoiGian<=@NgayDen) and ThoiGian = all"
                  + " (select max(thoigian) from tonkho tk1 where tk1.SP_ID=sp.SP_ID group by SP_ID) order by tk.SP_ID";
      SqlParameter TuNgay = new SqlParameter("@NgayTu", tungay);
      SqlParameter DenNgay = new SqlParameter("@NgayDen", denngay);
      SqlDataReader rd = SqlDatabase.ExecuteQueryWithDataReader(sql, CommandType.Text, TuNgay, DenNgay);
      {
         while (rd.Read())
         {
             TonKho tk = new TonKho()
             {
                 SP_ID = int.Parse(rd[0].ToString()),
                 TenSP = rd[1].ToString(),
                 SoLuongTon = int.Parse(rd[2].ToString()),
                 ThoiGian = DateTime.Parse(rd[3].ToString())
             };
             ListTK.Add(tk);
         }
     }
      return ListTK;
 }
示例#24
0
        private void btnLuuVaThem_Click(object sender, EventArgs e)
        {
            // lấy những mặt hàng từ kho xuất vào kho nhận:
            bool   check     = true;
            int    count     = grvChuyenKho.RowCount;
            string maKhoXuat = "";
            string maKhoNhan = "";

            if (count < 2)
            {
                XtraMessageBox.Show("Mời bạn chọn các mặt hàng cần chuyền");
                check = false;
            }
            else // khi có các mặt hàng:
            {
                // Lấy thông tin chuyển kho để insert:

                maKhoXuat = inforTrans.MaKhoXuat = cbKhoXuatHang.EditValue != null?cbKhoXuatHang.EditValue.ToString() : null;

                maKhoNhan = inforTrans.MaKhoNhan = cbKhoNhanHang.EditValue != null?cbKhoNhanHang.EditValue.ToString() : null;

                for (int i = 0; i < count - 1; i++)
                {
                    TonKho  tkXuat = new TonKho();
                    TonKho  tkNhan = new TonKho();
                    DataRow data   = grvChuyenKho.GetDataRow(i);
                    tkNhan.MaHang       = tkXuat.MaHang = detailTrans.MaHang = data[1].ToString();
                    detailTrans.SoLuong = int.Parse(data[4].ToString());
                    // Check kho xuất
                    tkXuat.MaKho = maKhoXuat;
                    int slTon;
                    int slHienTai = slTon = tkBUS.getSoLuong(tkXuat);
                    slHienTai = slHienTai - detailTrans.SoLuong;
                    int checkMaHangXuat = tkBUS.checkMatHang(detailTrans.MaHang, maKhoXuat);

                    if (checkMaHangXuat != 1) // chưa có
                    {
                        DialogResult dr;
                        dr = XtraMessageBox.Show("Mặt hàng " + detailTrans.TenHang + " Hiện chưa có trong kho: " + maKhoXuat + " Nếu bạn thực hiện. Số lượng tồn sẽ bị âm", "Thông báo", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                        if (dr == DialogResult.No)
                        {
                            check = false;
                            break;
                        }
                    }
                    else // có rồi
                    {
                        if (slHienTai <= 0)
                        {
                            DialogResult dr;
                            dr = XtraMessageBox.Show("Mặt hàng " + detailTrans.TenHang + " Hiện có " + slTon + " trong kho: " + maKhoXuat + " Nếu bạn thực hiện. Số lượng tồn sẽ bị âm", "Thông báo", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                            if (dr == DialogResult.No)
                            {
                                check = false;
                                break;
                            }
                        }
                    }
                }
            }
            if (check)
            {
                inforTrans.MaNVXuat = cbNguoiChuyen.EditValue != null?cbNguoiChuyen.EditValue.ToString() : null;

                inforTrans.MaNVNhan = cbNguoiNhan.EditValue != null?cbNguoiNhan.EditValue.ToString() : null;

                inforTrans.NgayLap          = DateTime.Parse(String.Format("{0:MM/dd/yyyy}", dtNgayChuyen.Text));
                inforTrans.GhiChu           = txtGhiChu.Text;
                detailTrans.MaPhieuChuyen   = inforTrans.MaPhieuChuyen = txtPhieuCK.Text;
                inforTrans.SoPhieuChuyenTay = txtPhieuChuyenTay.Text;
                inforTrans.TongTienChuyen   = getTongTien();

                int checkMPhieu = inforTransBUS.checkMaPhieuChuyenKho(txtPhieuCK.Text);

                try   // kiểm tra xem đã có phiếu hay chưa. neeuc có rồi thì upate else: insert
                {
                    if (checkMPhieu == 1)
                    {
                        inforTransBUS.UpdateInforTranWarehouse(inforTrans);
                    }
                    else
                    {
                        inforTransBUS.InsertInforTranWarehouse(inforTrans);
                    }
                }
                catch (SqlException ex)
                {
                    XtraMessageBox.Show("Lỗi tại thêm thông tin chuyển kho: " + ex.Message);
                }
                //Insert Chi Tiết chuyển kho:

                int isDelete = 0;

                for (int i = 0; i < count - 1; i++)
                {
                    TonKho  tkXuat = new TonKho();
                    TonKho  tkNhan = new TonKho();
                    DataRow data   = grvChuyenKho.GetDataRow(i);
                    tkNhan.MaHang         = tkXuat.MaHang = detailTrans.MaHang = data[1].ToString();
                    detailTrans.TenHang   = data[2].ToString();
                    detailTrans.DonVi     = data[3].ToString();
                    detailTrans.SoLuong   = int.Parse(data[4].ToString());
                    detailTrans.DonGia    = float.Parse(data[5].ToString());
                    detailTrans.ThanhTien = float.Parse(data[6].ToString());
                    try
                    {
                        if (checkMPhieu == 1 && isDelete == 0)
                        {
                            ckBUS.DeleteDetailTransWarehouse(txtPhieuCK.Text);
                            isDelete = 1;
                        }
                        ckBUS.InsertDetailTransWarehouse(detailTrans);
                    }
                    catch (SqlException ex)
                    {
                        XtraMessageBox.Show("Lỗi thêm chi tiết chuyển kho: " + ex.Message);
                    }

                    // Xử lý về tồn kho:

                    // Lấy từ KHO A chuyển Sang Kho B:
                    // Lấy số lượng mặt hàng chuyển và kho chuyển:
                    // Nếu mặt hàng chưa có trong KHO mà vẫn chuyển thì mặt hàng đó bị âm
                    // Lấy bên này cộng vào bên kia

                    // Check kho xuất
                    tkXuat.MaKho = maKhoXuat;
                    int slTon;
                    int slHienTai = slTon = tkBUS.getSoLuong(tkXuat);
                    slHienTai = slHienTai - detailTrans.SoLuong;
                    int checkMaHangXuat = tkBUS.checkMatHang(detailTrans.MaHang, maKhoXuat);

                    if (checkMaHangXuat != 1) // chưa có
                    {
                        try
                        {
                            int checkInsert = tkBUS.insertTonKho(tkXuat, slHienTai);
                        }
                        catch (SqlException ex)
                        {
                            XtraMessageBox.Show("Lỗi khi update số lượng kho nhận:  " + ex.Message);
                        }
                    }
                    else // có rồi
                    {
                        try
                        {
                            tkBUS.UpdateSoLuong(tkXuat, slHienTai);  // nếu có rồi thì chỉ cần update số luọng
                        }
                        catch (SqlException ex)
                        {
                            XtraMessageBox.Show("Lỗi khi update số lượng kho nhận:  " + ex.Message);
                        }
                    }
                    // check kho nhận
                    int checkMaHangNhan = tkBUS.checkMatHang(detailTrans.MaHang, maKhoNhan);
                    tkNhan.MaKho = maKhoNhan;
                    int slTonNhan;
                    int slHienTaiNhan = slTonNhan = tkBUS.getSoLuong(tkNhan);
                    slHienTaiNhan = slHienTaiNhan + detailTrans.SoLuong;
                    if (checkMaHangNhan == 1) // nếu có rồi
                    {
                        try
                        {
                            tkBUS.UpdateSoLuong(tkNhan, slHienTaiNhan);
                        }
                        catch (SqlException ex)
                        {
                            XtraMessageBox.Show("Lỗi khi update số lượng kho nhận:  " + ex.Message);
                        }
                    }
                    else // chưa có thì thêm vào
                    {
                        try
                        {
                            tkBUS.insertTonKho(tkNhan, slHienTaiNhan);
                        }
                        catch (SqlException ex)
                        {
                            XtraMessageBox.Show("Lỗi khi thêm mặt hàng vô kho nhận:  " + ex.Message);
                        }
                    }
                }
                XtraMessageBox.Show("Giao dịch thành công");
                txtPhieuCK.Text         = inforTransBUS.IDAuto();
                grcChuyenKho.DataSource = detailBuyBus.getChiTietHoaDonMuaHang();
            }
            else
            {
                XtraMessageBox.Show("Giao dịch thất bại");
            }
        }
示例#25
0
 public TonKho Add(TonKho tonKho)
 {
     return(tonKhoRepository.Add(tonKho));
 }
 // Xóa sản phẩm
 public void XoaTonKho(TonKho tk)
 {
     string sql = "Delete TonKho where SP_ID=@SP_ID";
     SqlParameter spid = new SqlParameter("@SP_ID", tk.SP_ID);
     SqlDatabase.ExecuteNonQuery(sql, CommandType.Text, spid);
 }
        public JsonResult save(XuatSachMaster O)
        {
            int  dlyID  = int.Parse(Session["dailyID"].ToString());
            bool status = false;

            if (ModelState.IsValid)
            {
                XuatSachMaster order = db.XuatSachMasters.Where(x => x.xuatsachID == O.xuatsachID).SingleOrDefault();
                order.xuatsach_ngayupdate = O.xuatsach_ngayupdate;
                order.xuatsach_nguoinhan  = O.xuatsach_nguoinhan;
                order.xuatsach_trangthai  = "Hoàn Tất";
                List <XuatSachDetail> dt = db.XuatSachDetails.Where(x => x.xuatsachID == O.xuatsachID).ToList();
                int sumsl = 0;
                foreach (var i in dt)
                {
                    sumsl += int.Parse(i.soluong.ToString());
                }
                foreach (var i in dt)
                {
                    DaiLyDebt l = db.DaiLyDebts.SingleOrDefault(x => x.fk_sachID == i.fk_sachID && x.fk_dailyID == dlyID);
                    if (l != null)
                    {
                        l.dailydebt_soluong += i.soluong;
                    }
                    else
                    {
                        DaiLyDebt k = new DaiLyDebt {
                            fk_dailyID = dlyID, fk_sachID = i.fk_sachID, dailydebt_soluong = i.soluong
                        };
                        db.DaiLyDebts.Add(k);
                    }
                }
                foreach (var i in dt)
                {
                    Sach w = db.Saches.SingleOrDefault(x => x.sachID == i.fk_sachID);
                    w.sach_soluong -= i.soluong;
                }
                List <DaiLyDebtTien> li = db.DaiLyDebtTiens.Where(x => x.fk_dailyID == dlyID).ToList();
                var           maxdate   = li.Select(x => x.dailydebttien_ngaycapnhat).Max();
                DaiLyDebtTien n         = db.DaiLyDebtTiens.Where(s => s.fk_dailyID == dlyID && s.dailydebttien_ngaycapnhat == maxdate).FirstOrDefault();
                if (n != null)
                {
                    if (O.xuatsach_ngayupdate == n.dailydebttien_ngaycapnhat)
                    {
                        n.dailydebttien_tien += O.xuatsach_tongtien;
                        n.dailydebttien_sach += sumsl;
                    }
                    else if (O.xuatsach_ngayupdate > n.dailydebttien_ngaycapnhat)
                    {
                        n.dailydebttien_tien       += O.xuatsach_tongtien;
                        n.dailydebttien_sach       += sumsl;
                        n.fk_dailyID                = dlyID;
                        n.dailydebttien_ngaycapnhat = O.xuatsach_ngayupdate;
                        db.DaiLyDebtTiens.Add(n);
                    }
                    else if (O.xuatsach_ngayupdate < n.dailydebttien_ngaycapnhat)
                    {
                        List <DaiLyDebtTien> dd = db.DaiLyDebtTiens.Where(x => x.fk_dailyID == dlyID && x.dailydebttien_ngaycapnhat >= O.xuatsach_ngayupdate).ToList();
                        foreach (var c in dd)
                        {
                            c.dailydebttien_tien += O.xuatsach_tongtien;
                            c.dailydebttien_sach += sumsl;
                        }
                        DaiLyDebtTien m = db.DaiLyDebtTiens.Where(x => x.fk_dailyID == dlyID && x.dailydebttien_ngaycapnhat == O.xuatsach_ngayupdate).SingleOrDefault();
                        if (m == null)
                        {
                            DaiLyDebtTien v = new DaiLyDebtTien {
                                fk_dailyID = dlyID, dailydebttien_tien = O.xuatsach_tongtien, dailydebttien_sach = sumsl, dailydebttien_ngaycapnhat = O.xuatsach_ngayupdate
                            };
                            db.DaiLyDebtTiens.Add(v);
                        }
                    }
                }
                else
                {
                    DaiLyDebtTien q = new DaiLyDebtTien {
                        fk_dailyID = dlyID, dailydebttien_tien = O.xuatsach_tongtien, dailydebttien_sach = sumsl, dailydebttien_ngaycapnhat = O.xuatsach_ngayupdate
                    };
                    db.DaiLyDebtTiens.Add(q);
                }

                foreach (var i in dt)
                {
                    List <TonKho> la       = db.TonKhoes.Where(x => x.fk_sachID == i.fk_sachID).ToList();
                    var           maxdate1 = la.Select(x => x.tonkho_ngaycapnhat).Max();
                    TonKho        u        = db.TonKhoes.Where(s => s.fk_sachID == i.fk_sachID && s.tonkho_ngaycapnhat == maxdate1).FirstOrDefault();
                    if (u != null)
                    {
                        if (O.xuatsach_ngayupdate == u.tonkho_ngaycapnhat)
                        {
                            u.tonkho_soluong += i.soluong;
                        }
                        else if (O.xuatsach_ngayupdate > u.tonkho_ngaycapnhat)
                        {
                            u.tonkho_soluong    += i.soluong;
                            u.fk_sachID          = i.fk_sachID;
                            u.tonkho_ngaycapnhat = O.xuatsach_ngayupdate;
                            db.TonKhoes.Add(u);
                        }
                        else if (O.xuatsach_ngayupdate < u.tonkho_ngaycapnhat)
                        {
                            List <TonKho> bb = db.TonKhoes.Where(x => x.fk_sachID == i.fk_sachID && x.tonkho_ngaycapnhat >= O.xuatsach_ngayupdate).ToList();
                            foreach (var c in bb)
                            {
                                c.tonkho_soluong += i.soluong;
                            }
                            TonKho h = db.TonKhoes.Where(x => x.fk_sachID == i.fk_sachID && x.tonkho_ngaycapnhat == O.xuatsach_ngayupdate).SingleOrDefault();
                            if (h == null)
                            {
                                TonKho a = new TonKho {
                                    fk_sachID = i.fk_sachID, tonkho_soluong = i.soluong, tonkho_ngaycapnhat = O.xuatsach_ngayupdate
                                };
                                db.TonKhoes.Add(a);
                            }
                        }
                    }
                    else
                    {
                        TonKho p = new TonKho {
                            fk_sachID = i.fk_sachID, tonkho_soluong = i.soluong, tonkho_ngaycapnhat = O.xuatsach_ngayupdate
                        };
                        db.TonKhoes.Add(p);
                    }
                }
            }
            db.SaveChanges();
            status = true;
            return(new JsonResult {
                Data = new { status = status }
            });
        }
 // Tìm kiếm tồn kho theo thời gian (năm - tháng)
 public List<TonKho> TimKiemTonKhoTheoTG(int thang, int nam)
 {
     List<TonKho> ListTK = new List<TonKho>();
     string sql = "select sp.SP_ID,TenSP,SoLuongTon,ThoiGian from SanPham sp, TonKho tk"
                 + " where sp.SP_ID=tk.SP_ID and (Month(ThoiGian) = @Thang and YEAR(ThoiGian)= @Nam) and ThoiGian = all"
                 + " (select max(thoigian) from tonkho tk1 where tk1.SP_ID=sp.SP_ID group by SP_ID) order by tk.SP_ID";
     SqlParameter Thang = new SqlParameter("@Thang", thang);
     SqlParameter Nam = new SqlParameter("@Nam", nam);
     SqlDataReader rd = SqlDatabase.ExecuteQueryWithDataReader(sql, CommandType.Text, Nam, Thang);
      if (rd.HasRows)
     {
         while (rd.Read())
         {
             TonKho tk = new TonKho()
             {
                 SP_ID = int.Parse(rd[0].ToString()),
                 TenSP = rd[1].ToString(),
                 SoLuongTon = int.Parse(rd[2].ToString()),
                 ThoiGian = DateTime.Parse(rd[3].ToString())
             };
             ListTK.Add(tk);
         }
     }
      return ListTK;
 }
示例#29
0
        private void gridViewSanPham_CellValueChanged(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e)
        {
            if (e.RowHandle >= 0)
            {
                if (e.Column.Name == "colDeleteSanPham")
                {
                    //do nothing
                }
                else if (e.Column.Name == "colTonKho")
                {
                    //update here
                    SanPham objSanPham = new SanPham();
                    if (Convert.ToString(gridViewSanPham.GetRowCellValue(e.RowHandle, "TenSanPham")) == "")
                    {
                        MessageBox.Show("Chưa nhập tên cho sản phẩm. Chương trình sẽ chọn mặc định", "Thông báo nhập sản phẩm");
                        objSanPham.TenSanPham = "Sản phẩm mới";
                    }
                    else
                    {
                        objSanPham.TenSanPham = Convert.ToString(gridViewSanPham.GetRowCellValue(e.RowHandle, "TenSanPham"));
                    }
                    if (Convert.ToString(gridViewSanPham.GetRowCellValue(e.RowHandle, "Tukhoa")) == "")
                    {
                        MessageBox.Show("Chưa nhập từ khóa cho sản phẩm. Chương trình sẽ chọn mặc định", "Thông báo nhập sản phẩm");
                        objSanPham.Tukhoa = objSanPham.TenSanPham.Substring(0, 2);
                    }
                    else
                    {
                        objSanPham.Tukhoa = Convert.ToString(gridViewSanPham.GetRowCellValue(e.RowHandle, "Tukhoa"));
                    }

                    objSanPham.IDSanPham = Convert.ToInt32(gridViewSanPham.GetRowCellValue(e.RowHandle, "IDSanPham"));
                    objSanPham.DVT       = Convert.ToString(gridViewSanPham.GetRowCellValue(e.RowHandle, "DVT"));
                    objSanPham.Ghichu    = Convert.ToString(gridViewSanPham.GetRowCellValue(e.RowHandle, "Ghichu"));
                    objSanPham.Tukhoa    = Convert.ToString(gridViewSanPham.GetRowCellValue(e.RowHandle, "Tukhoa"));
                    objSanPham.TonKho    = Convert.ToInt32(gridViewSanPham.GetRowCellValue(e.RowHandle, "TonKho"));
                    objSanPham.IDNhomSP  = Convert.ToInt32(gridViewSanPham.GetRowCellValue(e.RowHandle, "IDNhomSP"));

                    objSanPham.SLCanhbao = Convert.ToInt32(gridViewSanPham.GetRowCellValue(e.RowHandle, "SLCanhbao"));
                    objSanPham.Noixuat   = Convert.ToString(gridViewSanPham.GetRowCellValue(e.RowHandle, "Noixuat"));

                    if (SanPhamValidation(objSanPham) == true)
                    {
                        //warning
                        if (MessageBox.Show(this, "Bạn có muốn cập nhật tồn kho cho Sản phẩm này không? Khi cập nhật, các hóa đơn trước ngày " + DateTime.Now.Date.ToString("dd/MM/yyy") + " sẽ không được tính!", "Cảnh báo", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
                        {
                            //insert for TonKho
                            TonKho objTonKho = new TonKho();
                            objTonKho.IDSanPham = objSanPham.IDSanPham;
                            objTonKho.SoLuong   = objSanPham.TonKho;
                            objTonKho.Ngay      = DateTime.Now.Date;
                            if (new DataAccess().insertTonKho(objTonKho) >= 0)
                            {
                                if (new DataAccess().updateSanPham(objSanPham) == true)
                                {
                                    ((frmMain)(this.MdiParent)).setStatus("Cập nhật dữ liệu Sản phẩm thành công");
                                }
                                else
                                {
                                    MessageBox.Show(this, "Cập nhật dữ liệu Sản phẩm không thành công", "Thông báo lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                }
                            }
                            else
                            {
                                MessageBox.Show(this, "Cập nhật dữ liệu Sản phẩm không thành công", "Thông báo lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            }
                        }//end for insert new TonKho item
                        else
                        {
                            //do nothing
                        }
                    }//end for validation
                }
                else
                {
                    //update here
                    SanPham objSanPham = new SanPham();
                    objSanPham.IDSanPham = Convert.ToInt32(gridViewSanPham.GetRowCellValue(e.RowHandle, "IDSanPham"));
                    if (Convert.ToString(gridViewSanPham.GetRowCellValue(e.RowHandle, "TenSanPham")) == "")
                    {
                        MessageBox.Show("Chưa nhập tên cho sản phẩm. Chương trình sẽ chọn mặc định", "Thông báo nhập sản phẩm");
                        objSanPham.TenSanPham = "Sản phẩm mới";
                    }
                    else
                    {
                        objSanPham.TenSanPham = Convert.ToString(gridViewSanPham.GetRowCellValue(e.RowHandle, "TenSanPham"));
                    }
                    if (Convert.ToString(gridViewSanPham.GetRowCellValue(e.RowHandle, "Tukhoa")) == "")
                    {
                        MessageBox.Show("Chưa nhập từ khóa cho sản phẩm. Chương trình sẽ chọn mặc định", "Thông báo nhập sản phẩm");
                        objSanPham.Tukhoa = objSanPham.TenSanPham.Substring(0, 2);
                    }
                    else
                    {
                        objSanPham.Tukhoa = Convert.ToString(gridViewSanPham.GetRowCellValue(e.RowHandle, "Tukhoa"));
                    }

                    objSanPham.DVT       = Convert.ToString(gridViewSanPham.GetRowCellValue(e.RowHandle, "DVT"));
                    objSanPham.Ghichu    = Convert.ToString(gridViewSanPham.GetRowCellValue(e.RowHandle, "Ghichu"));
                    objSanPham.TonKho    = Convert.ToInt32(gridViewSanPham.GetRowCellValue(e.RowHandle, "TonKho"));
                    objSanPham.IDNhomSP  = Convert.ToInt32(gridViewSanPham.GetRowCellValue(e.RowHandle, "IDNhomSP"));
                    objSanPham.SLCanhbao = Convert.ToInt32(gridViewSanPham.GetRowCellValue(e.RowHandle, "SLCanhbao"));
                    objSanPham.Noixuat   = Convert.ToString(gridViewSanPham.GetRowCellValue(e.RowHandle, "Noixuat"));
                    if (SanPhamValidation(objSanPham) == true)
                    {
                        if (new DataAccess().updateSanPham(objSanPham) == true)
                        {
                            ((frmMain)(this.MdiParent)).setStatus("Cập nhật dữ liệu Sản phẩm thành công");
                        }
                        else
                        {
                            MessageBox.Show(this, "Cập nhật dữ liệu Sản phẩm không thành công", "Thông báo lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                    else
                    {
                        //reload data
                        if (curIDNhomSP == 0)
                        {
                            gridControlSanPham.DataSource = new DataAccess().getAllSanPham().Tables[0];
                        }
                        else
                        {
                            gridControlSanPham.DataSource = new DataAccess().getSanPhamByIDNhomSP(curIDNhomSP).Tables[0];
                        }
                    }
                }
            }
            AddItemForComboboxTenNguyenLieu();
        }
示例#30
0
 public int insertTonKho(TonKho tk, int sl)
 {
     return(tkDao.insertTonKho(tk, sl));
 }
示例#31
0
 public int UpdateSoLuong(TonKho tk, int soLuong)
 {
     return(tkDao.UpdateSoLuong(tk, soLuong));
 }
示例#32
0
 public int getSoLuong(TonKho tk)
 {
     return(tkDao.getSoLuong(tk));
 }
示例#33
0
 public TonKho Delete(TonKho tonKho)
 {
     return(tonKhoRepository.Delete(tonKho));
 }
示例#34
0
 public int insertTonKho(TonKho objTonKho)
 {
     return(new TonKhoService().insertTonKho(objTonKho));
 }
        public JsonResult save(NhapSachVM O)
        {
            bool status = false;

            if (ModelState.IsValid)
            {
                NhapSachMaster order = new NhapSachMaster {
                    fk_nxbID           = O.fk_nxbID,
                    nhapsach_ngaygiao  = O.nhapsach_ngaygiao,
                    nhapsach_nguoigiao = O.nhapsach_nguoigiao
                };
                foreach (var i in O.NhapSachDetails)
                {
                    order.NhapSachDetails.Add(i);
                }
                db.NhapSachMasters.Add(order);
                foreach (var i in O.NhapSachDetails)
                {
                    NXBDebt l = db.NXBDebts.SingleOrDefault(x => x.fk_sachID == i.fk_sachID &&
                                                            x.fk_nxbID == O.fk_nxbID);

                    if (l != null)
                    {
                        l.nxbdebt_soluong += i.soluong;
                    }
                    else
                    {
                        NXBDebt k = new NXBDebt {
                            fk_nxbID        = O.fk_nxbID, fk_sachID = i.fk_sachID,
                            nxbdebt_soluong = i.soluong, nxbdebt_banduoc = 0
                        };
                        db.NXBDebts.Add(k);
                    }
                }
                foreach (var i in O.NhapSachDetails)
                {
                    Sach w = db.Saches.SingleOrDefault(x => x.sachID == i.fk_sachID);
                    w.sach_soluong += i.soluong;
                }
                foreach (var i in O.NhapSachDetails)
                {
                    List <TonKho> la       = db.TonKhoes.Where(x => x.fk_sachID == i.fk_sachID).ToList();
                    var           maxdate1 = la.Select(x => x.tonkho_ngaycapnhat).Max();
                    TonKho        u        = db.TonKhoes.Where(s => s.fk_sachID == i.fk_sachID && s.tonkho_ngaycapnhat == maxdate1).FirstOrDefault();
                    if (u != null)
                    {
                        if (O.nhapsach_ngaygiao == u.tonkho_ngaycapnhat)
                        {
                            u.tonkho_soluong += i.soluong;
                        }
                        else if (O.nhapsach_ngaygiao > u.tonkho_ngaycapnhat)
                        {
                            u.tonkho_soluong    += i.soluong;
                            u.fk_sachID          = i.fk_sachID;
                            u.tonkho_ngaycapnhat = O.nhapsach_ngaygiao;
                            db.TonKhoes.Add(u);
                        }
                        else if (O.nhapsach_ngaygiao < u.tonkho_ngaycapnhat)
                        {
                            List <TonKho> bb = db.TonKhoes.Where(x => x.fk_sachID == i.fk_sachID && x.tonkho_ngaycapnhat >= O.nhapsach_ngaygiao).ToList();
                            foreach (var c in bb)
                            {
                                c.tonkho_soluong += i.soluong;
                            }
                            TonKho h = db.TonKhoes.Where(x => x.fk_sachID == i.fk_sachID && x.tonkho_ngaycapnhat == O.nhapsach_ngaygiao).SingleOrDefault();
                            if (h == null)
                            {
                                TonKho a = new TonKho {
                                    fk_sachID = i.fk_sachID, tonkho_soluong = i.soluong, tonkho_ngaycapnhat = O.nhapsach_ngaygiao
                                };
                                db.TonKhoes.Add(a);
                            }
                        }
                    }
                    else
                    {
                        TonKho p = new TonKho {
                            fk_sachID = i.fk_sachID, tonkho_soluong = i.soluong, tonkho_ngaycapnhat = O.nhapsach_ngaygiao
                        };
                        db.TonKhoes.Add(p);
                    }
                }
            }
            foreach (var i in O.NhapSachDetails)
            {
                List <NXBDebtTien> li = db.NXBDebtTiens.Where(x => x.fk_nxbID == O.fk_nxbID).ToList();
                var         maxdate   = li.Select(x => x.nxbdebttien_ngaycapnhat).Max();
                NXBDebtTien n         = db.NXBDebtTiens.Where(s => s.fk_nxbID == O.fk_nxbID && s.nxbdebttien_ngaycapnhat == maxdate).FirstOrDefault();
                var         gn        = db.Saches.Where(x => x.sachID == i.fk_sachID).Select(x => x.sach_gianhap).SingleOrDefault();
                if (n != null)
                {
                    if (O.nhapsach_ngaygiao == n.nxbdebttien_ngaycapnhat)
                    {
                        n.nxbdebttien_tien += gn * i.soluong;
                    }
                    else if (O.nhapsach_ngaygiao > n.nxbdebttien_ngaycapnhat)
                    {
                        n.nxbdebttien_tien       += gn * i.soluong;
                        n.fk_nxbID                = O.fk_nxbID;
                        n.nxbdebttien_ngaycapnhat = O.nhapsach_ngaygiao;
                        db.NXBDebtTiens.Add(n);
                    }
                    else if (O.nhapsach_ngaygiao < n.nxbdebttien_ngaycapnhat)
                    {
                        List <NXBDebtTien> dd = db.NXBDebtTiens.Where(x => x.fk_nxbID == O.fk_nxbID && x.nxbdebttien_ngaycapnhat >= O.nhapsach_ngaygiao).ToList();
                        foreach (var c in dd)
                        {
                            c.nxbdebttien_tien += gn * i.soluong;
                        }
                        NXBDebtTien m = db.NXBDebtTiens.Where(x => x.fk_nxbID == O.fk_nxbID && x.nxbdebttien_ngaycapnhat == O.nhapsach_ngaygiao).SingleOrDefault();
                        if (m == null)
                        {
                            NXBDebtTien v = new NXBDebtTien {
                                fk_nxbID = O.fk_nxbID, nxbdebttien_tien = gn, nxbdebttien_ngaycapnhat = O.nhapsach_ngaygiao
                            };
                            db.NXBDebtTiens.Add(v);
                        }
                    }
                }
                else
                {
                    NXBDebtTien q = new NXBDebtTien {
                        fk_nxbID = O.fk_nxbID, nxbdebttien_tien = gn * i.soluong, nxbdebttien_ngaycapnhat = O.nhapsach_ngaygiao
                    };
                    db.NXBDebtTiens.Add(q);
                }
            }
            db.SaveChanges();
            status = true;
            return(new JsonResult {
                Data = new { status = status }
            });
        }
示例#36
0
 public void Update(TonKho tonKho)
 {
     tonKhoRepository.Update(tonKho);
 }
            public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs)
            {
                global::System.Xml.Schema.XmlSchemaComplexType type     = new global::System.Xml.Schema.XmlSchemaComplexType();
                global::System.Xml.Schema.XmlSchemaSequence    sequence = new global::System.Xml.Schema.XmlSchemaSequence();
                TonKho ds = new TonKho();

                global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny();
                any1.Namespace       = "http://www.w3.org/2001/XMLSchema";
                any1.MinOccurs       = new decimal(0);
                any1.MaxOccurs       = decimal.MaxValue;
                any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
                sequence.Items.Add(any1);
                global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny();
                any2.Namespace       = "urn:schemas-microsoft-com:xml-diffgram-v1";
                any2.MinOccurs       = new decimal(1);
                any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
                sequence.Items.Add(any2);
                global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute();
                attribute1.Name       = "namespace";
                attribute1.FixedValue = ds.Namespace;
                type.Attributes.Add(attribute1);
                global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute();
                attribute2.Name       = "tableTypeName";
                attribute2.FixedValue = "TKTonKhoDataTable";
                type.Attributes.Add(attribute2);
                type.Particle = sequence;
                global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable();
                if (xs.Contains(dsSchema.TargetNamespace))
                {
                    global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream();
                    global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream();
                    try {
                        global::System.Xml.Schema.XmlSchema schema = null;
                        dsSchema.Write(s1);
                        for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext();)
                        {
                            schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current));
                            s2.SetLength(0);
                            schema.Write(s2);
                            if ((s1.Length == s2.Length))
                            {
                                s1.Position = 0;
                                s2.Position = 0;
                                for (; ((s1.Position != s1.Length) &&
                                        (s1.ReadByte() == s2.ReadByte()));)
                                {
                                    ;
                                }
                                if ((s1.Position == s1.Length))
                                {
                                    return(type);
                                }
                            }
                        }
                    }
                    finally {
                        if ((s1 != null))
                        {
                            s1.Close();
                        }
                        if ((s2 != null))
                        {
                            s2.Close();
                        }
                    }
                }
                xs.Add(dsSchema);
                return(type);
            }